Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.23;
Скачать: CL | DM;

Вниз

Рендер в текстуру получается кривой!   Найти похожие ветки 

 
Кефир87 ©   (2005-11-18 01:27) [0]

Решил вот сделать motion blur. Все показалось довольно простым. Устанавливаю glViewport(0, 0, 512, 512);,  рисую сцену, glCopyTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 0, 0, 512, 512, 0);, glViewport(0, 0, 800, 600); (например), опять рисую сцену, теперь glLoadIdentity для двух матриц и с альфаблендингом пытаюсь нарисовать квад с той текстурой в которую рисовал типа как:

 glBegin(GL_QUADS);
   glTexCoord2f(0, 0); glVertex2f(-1, -1);
   glTexCoord2f(1, 0); glVertex2f(1, -1);
   glTexCoord2f(1, 1); glVertex2f(1, 1);
   glTexCoord2f(0, 1); glVertex2f(-1, 1);
 glEnd;

Но в этот момент оказывается что текстура какая-то кривая получилась! То-ли растянутая, толи сдвинутая, толи и то и то... Если вместо glViewport(0, 0, 800, 600) сделать glViewport(0, 0, 512, 512) то все отлично получается, но только в этой области... Я чего-то не понимаю. Как текстуру ровной сделать?! Чтоб на весь экран развернуть не зависимо от разрешения. А еще в полноэкранном режиме все как-то мерцает! 8)


 
XProger ©   (2005-11-18 01:33) [1]

Сделать текстуру размером с область вывода


 
Darthman ©   (2005-11-18 10:34) [2]

Либо ты делаешь что-то очень монструозное, раз столько тем наоткрывал, либо окончательно отупел :)

Вьюпорт задай как glViewport(0, 0, 512, 512) для текстуры размером 512х512.
Почему мерцает смотри свой код.  

что значит " все отлично получается, но только в этой области" ?
Ты мой state of the art видел? там все во всей области отлично. ты после задания вьюпорта чай не забываешь параметры перспективы поменять? ;)


 
Кефир87 ©   (2005-11-18 18:30) [3]


> Сделать текстуру размером с область вывода

Либо glTexImage2D отказывается делать текстуру с размером не кратным 2 либо glCopyTexImage2D не хочет такое копировать...

> делаешь что-то очень монструозное

Ну так. Двиг делаю для собственного развития 8)

> либо окончательно отупел

Скорей это 8)

> Вьюпорт задай как glViewport(0, 0, 512, 512) для текстуры
> размером 512х512.

Я так и делаю 8)

> ты после задания вьюпорта чай не забываешь параметры перспективы
> поменять?

Ну не знаю. Пытался после 512х512 делать перспективу с отношением 1/1 а потом обратно 4/3... не особо помогло... А так я просто два раза смотрю через одну и ту-же камеру 8)


 
XProger ©   (2005-11-18 19:40) [4]

Какая нафиг перспектива? Учите матчасть! Viewport это Viewport с перспективой он никак не связан! Aspect не трогай вообще!



Страницы: 1 вся ветка

Текущий архив: 2006.07.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.051 c
2-1152043083
Тореро
2006-07-04 23:58
2006.07.23
Модальный диалог и кнопка OK


2-1151833149
Ivolg
2006-07-02 13:39
2006.07.23
Синтаксис


15-1151337417
Кручен-Верчен
2006-06-26 19:56
2006.07.23
Как сделать так, чтобы Mozilla Firefox использовал HTTP 1.0?


15-1150772854
sff
2006-06-20 07:07
2006.07.23
Цена ТР


15-1149594374
Проходящий
2006-06-06 15:46
2006.07.23
Прорыв в математике: доказана еще одна теория