Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.13;
Скачать: CL | DM;

Вниз

direct3dim   Найти похожие ветки 

 
3d[Power] ©   (2002-01-28 22:38) [0]

Как в сабже(d3d immediate mode) работать с освещением (light)? А конкретно как освещать примитивы?


 
drpass ©   (2002-01-29 11:18) [1]

Ты под какой DX пишешь? Если под седьмой или восьмой, то заполняешь структуру TD3DLight7(TD3DLight8), в ней указываешь тип источника света (точечный, направленный или рассеянный), его цветовые составляющие, позицию на сцене, направление и дальность. Параметров много, смотри их в DirectX SDK.
После этого в DX8 делай
D3DDevice.SetLight(0, D3DLight);//первая цифра - номер источника
D3DDevice.LightEnable(0, true);
Про DX7 я без доки не вспомню, там, кажется, источники света активизировались немного иначе


 
3d[Power] ©   (2002-01-29 19:12) [2]

2 drpass. Ну если я написал что d3dim то значит не под восьмой.
Дело то в том что, я делаю все правильно:
SetRenderState(D3DRENDERSTATE_LIGHTING, 1);
Cвойства на light навесил, добавил, только эта лампочка не светит.

Вот что по поводу этого написано в SDK:
The lighting render state is entirely independent of lighting computations that can be performed on vertices within a vertex buffer. The IDirect3DVertexBuffer7::ProcessVertices and IDirect3DVertexBuffer7::ProcessVerticesStrided methods accept their own flags to control lighting calculations during vertex processing.

Может из-за того что я vertex использую?


 
drpass ©   (2002-01-30 11:13) [3]

А, я тоже когда-то с этой фишкой столкнулся. В свойствах сцены сначала указывал максимальные значения рассеянного света, и, конечно, источник уже ничего не мог добавить.
Яркость сцены (да и примитивов) убери хотя бы вполовину, и все заработает.



Страницы: 1 вся ветка

Текущий архив: 2002.06.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
1-39987
Knyazev Konstantin
2002-06-03 13:13
2002.06.13
Эксепшены в длльках


1-40054
Deadlock
2002-06-01 05:04
2002.06.13
Сохранка


3-39933
maxim2
2002-05-17 16:17
2002.06.13
Теперь проблема с Ord()


1-40013
Sasha_b
2002-05-20 11:41
2002.06.13
Перенос cлов в StatusBar


14-40188
Blackweber
2002-05-08 22:43
2002.06.13
HDD Samsung SpinPoint на 60 Gb 5400rpm