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

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

Начало тумана [OpenGL]


Страницы:   1 2

Кефир87 ©   (2005-09-11 23:58:00) 

Никакие матричные преобразования не влияют на начало тумана, оно почему-то всегда в начале координат. А камера двигается и уплзает в туман. Ничего не видно. Как двигать туман? Ведь не буду же я все переделывать чтоб двигать сцены вокруг нуля 8)
Вот мои потуги:

procedure TCamera.Look;
begin

 if stay_over then
 begin
   pos := targ^;
   pos.y := 60;
   pos.z := pos.z - 0.01;
 end;
 glDisable(GL_FOG);
 glMatrixMode(GL_PROJECTION);
 glLoadIdentity;
 gluPerspective(fov, 4/3, 0.1, 10000.0);
 gluLookAt(pos.x, pos.y, pos.z, targ^.x, targ^.y, targ^.z, 0.0, 1.0, 0.0);
 glMatrixMode(GL_MODELVIEW);
 glTranslatef(pos.x, pos.y, pos.z);
 glEnable(GL_FOG);
end;


DR0N   (2005-09-12 00:13:00) [21]

Может я чего не допонял, но если задвать туман вот так:
procedure SetFog(Color : Integer; Fog_Start, Fog_End : single); stdcall;
var fogColor : Array [0..3] of GLFloat;
begin
fogColor[0]:=1.0*GetRValue(Color);
fogColor[1]:=1.0*GetGValue(Color);
fogColor[2]:=1.0*GetBValue(Color);
fogColor[3]:=1.0;
glEnable(GL_FOG);
glFogi  (GL_FOG_MODE, GL_LINEAR);
glHint  (GL_FOG_HINT, GL_NICEST);
glFogf  (GL_FOG_START, Fog_Start);
glFogf  (GL_FOG_END, Fog_End);
glFogfv (GL_FOG_COLOR, @fogColor);
end;

То как камеру не ставь он всегда будет как надо =)


Страницы:   1 2

Наверх

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