Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

direct3dim [D5, Win95/98]


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

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


drpass   (2002-01-30 11:13:00) [1]

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


3d[Power]   (2002-01-29 19:12:00) [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-29 11:18:00) [3]

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо