Форум: "Игры";
Текущий архив: 2006.02.05;
Скачать: [xml.tar.bz2];
ВнизОсвещение Найти похожие ветки
← →
McSource (2005-08-21 13:18) [0]Здравствуйте уважаемые мастера! Я недавно начал изучать OGL и столкнулся с такой проблемой: камера двигается по сцене с помощью glTranslate и glRotate, при движении и вращении камеры меняется освещенность объектов. Как мне заставить источник света оставаться в одном положении относительно сцены? Заранее благодарен.
← →
VitGun © (2005-08-21 13:53) [1]ИМХО
В процедуре рендера перед отрисовкой сцены делаешь:
glDisable(GL_LIGHTING)
после отрисовки
glEnable(GL_LIGHTING)
← →
McSource (2005-08-21 15:03) [2]>>
В процедуре рендера перед отрисовкой сцены делаешь:
glDisable(GL_LIGHTING)
после отрисовки
glEnable(GL_LIGHTING)
<<
Мне нужно чтобы источник света перемещался вместе со сценой а не отключался вообще...
← →
NE_Parovoz © (2005-08-21 15:38) [3]задавать позицию источника там где идёт отрисовка сцены
чтобы modelwiev матрица была та/же
← →
XProger © (2005-08-21 17:22) [4]
procedure glLight_Pos(ID: integer; Pos: TVector);
var
p : array [0..3] of single;
begin
p[0] := Pos.X;
p[1] := Pos.Y;
p[2] := Pos.Z;
p[3] := 1;
glLightfv(ID, GL_POSITION, @p);
end;
...
glLight_Pos(GL_LIGHT0, Pos);
Вызывать после установки матрицы вида (камеры)
← →
DR0N © (2005-08-22 19:58) [5]Хотел в теме вот че спросить, можно ли ограничивать радиус света дефолтовым жловским лампочкам?
← →
ViK © (2005-08-23 10:30) [6]
> [5] DR0N © (22.08.05 19:58)
Можно задавать коэффициенты ослабевания света
GL_CONSTANT_ATTENUATION
GL_LINEAR_ATTENUATION
GL_QUADRATIC_ATTENUATION
← →
A22 © (2005-08-23 10:46) [7]источник света типа point имеет радиус действия
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2006.02.05;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.011 c