Сообщение от mr.DIMAS
В графонии вылез какой-то трудно уловимый баг.
Кароч суть в том что сильно тормозит
IDirect3DDevice9->Present(0,0,0,0)
я погуглил с чем это может быть связано, но так и не нашел ответа. Причем тормоза Present'a прямо пропорциональны разрешению - чем больше тем больше тормоза. Я вообще не могу вкурить в чем косяк. Есть мысли?
|
Может видеопамять кончилась?
//=============================================
У меня тоже вопрос по шейдеру:
Допустим если я упаковываю глубину таким образом:
(Здесь input.z - это координата во view space)
output.depth = float4( ( input.z - nearZPlane ) / ( farZPlane - nearZPlane ), 1.0f, 1.0f, 1.0f );
То восстановить координаты точки во view space можно таким образом:
(texCoord - это текстурные координаты экранного квада)
const float vz = tex2D( smpDepth, texCoord ).r * ( farZPlane - nearZPlane ) + nearZPlane;
const float vx = ( texCoord.x * 2.0f - 1.0f ) * tan( scrFovX / 2.0f ) * vz;
const float vy = -( texCoord.y * 2.0f - 1.0f ) * tan( scrFovY / 2.0f ) * vz;
То есть таким образом я не использую умножение на матрицу проекции и обратную матрицу проекции при извлечении.
Все верно?