Бесплатная реклама
18 Ноя 2019 - 06:39:34
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
 
 
  Начало Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: [1]
1  Список разделов форума / Статьи / Водная поверхность в трехмерных приложениях (на DirectX и C++) : 26 Июн 2008 - 20:41:50
Есть трабл: при повороте вдоль оси z, отражение начинает пемещаться.
Нужно исправлять здесь (Water.h->CWATER::PreRenderForReflection(Camera *Cam)):

...
D3DXVECTOR3 CamPos = Cam->GetCamPos();
D3DXVECTOR3 ViewPos = Cam->GetViewPos();

Cam->GetViewMat(&oldMatView);
D3DXVECTOR3 h = CamPos;
float tmp = CamPos.y-ObjPos.y;
h.y = CamPos.y - 2*tmp;
D3DXVECTOR3 hv = ViewPos;
float tmpv = ViewPos.y-ObjPos.y;
hv.y = ViewPos.y - 2*tmpv;

D3DXMATRIX MatrixView;
D3DXMatrixLookAtLH(&MatrixView,&h,&hv, &D3DXVECTOR3(0.0f, 1.0f, 0.0f));
...
Страниц: [1]