У меня такой вопрос - как отрисовать в текстуру перевернутую сцену на HLSL/Cg? На GameDev нашёл статью на GLSL, но я просто хочу доработать ту воду, что у меня есть - и вообще, есть какая-нибудь документация по HLSL? Интересно бы было почитать.
Lev писал:
[BНа GameDev нашёл статью на GLSL, но я просто хочу доработать ту воду, что у меня есть - и вообще, есть какая-нибудь документация по HLSL? Интересно бы было почитать.[/B]
1. HLSL это язык для директХ.
2. скорость передвижения нормали нельзя регулировать, поскольку нормаль не содержит в себе информацию о положении. Её как не двигай, а она один хрен будет направлена в одну и ту же сторону. Ну это если на миг вообразить себе, что нормаль можно двигать
Поэтому двигается там скорее всего текстурка нормалмапы.
cgGLSetStateMatrixParameter( m_ModelProj, CG_GL_MODELVIEW_PROJECTION_MATRIX, CG_GL_MATRIX_IDENTITY );
float mat2d[4] = {0, 0.05f, 0, 0.05f}; - вроде этого?
А то там для этой воды аж восемь цпп-шников - где искать непонятно
Добавлено 10-06-2012 в 02:06:
А - всё - нашёл)
Добавлено 10-06-2012 в 02:12:
Блин - отражение какое-то странное - по идее должно быть перевёрнутое - а здесь прямое
Lev
а ты попробуй, можно , но ты увидишь что получиться, и подумаешь ,что лучше бы ты этого не делал
а "передвигать нормаль" как ты сказал , очень просто , там есть функции sin или cos в аргумент которых шлёться клиентское время и умножаеться то ли делиться на 10 не помню, вот оно и двигает текстурные координаты
Да с текстурными координатами я разобрался. Вот наверно тот самый glCopyTexSubImage2D( GL_TEXTURE_2D, 0, 0, 0, 0, 0, ScreenWidth, ScreenHeight ); - какую команду нудно указать чтобы его перевернуть? (просто ради интереса - хочу взглянуть что будет)
Lev писал: какую команду нудно указать чтобы его перевернуть?
да никакую. Текстурка наложенная с автогенерацией текстурных координат усихда будет находится в одном и том же положении.
Это уже камеру надо разворачивать. А камеру развернуть не получится, потому что там не делается доп. проход. Т.е. разворачивать нечего.
Дядя Миша писал: А камеру развернуть не получится, потому что там не делается доп. проход. Т.е. разворачивать нечего.
Возможно стоит ковырять в сторону Screen Space Reflection как в кризисе 2 и тогда получиться сделать за 1 проход, но я могу ошибаться.
__________________
Трагическая новость: Пятеро инженеров Casio умерли от смеха, узнав что Samsung анонсировали часы с заявленным временем работы в 25 часов