HLFX.Ru Forum Страницы (100): « Первая ... « 72 73 74 75 [76] 77 78 79 80 » ... Последняя »
Показать все 1500 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Компьютерные игры (https://hlfx.ru/forum/forumdisplay.php?forumid=19)
-- Графон - ретроспектива (https://hlfx.ru/forum/showthread.php?threadid=3655)


Отправлено ncuxonaT 20-11-2016 в 19:20:

Дядя Миша ну не всего экрана, а только куска за стеклом. Так и без мипов текстура та же.


Отправлено Дядя Миша 20-11-2016 в 20:17:

проще было взять текстуру на весь экран и обновлять её кусками, чем взять текстуру по размеру окна и обновлять её всю.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 20-11-2016 в 21:02:

Дядя Миша ты предлагаешь копировать в полноэкранную текстуру куски с предыдущим отрисованным стеклом? Почему это проще? У меня копируется n кусков, у тебя копируется n-1 кусок и полноэкранная текстура.

Добавлено 21-11-2016 в 00:02:

Можно просто иметь 2 буфера и рендерить в них по очереди. Это будет самый быстрый способ для стекол без мипов


Отправлено Дядя Миша 20-11-2016 в 21:06:

в параное как сделано. Есть одна большая текстура. bbox стекла переводится в экранные координаты и по этим координатам из буффера кадра в текстуру копируется выделенный кусок. Рисуем следующее стекло - перезаписываем новый кусок. Полноэкранная текстура изначально не копируется вообще, она с нулевым буффером. Она всегда обновляется только кусками.

Добавлено 21-11-2016 в 00:06:

Цитата:
ncuxonaT писал:
Можно просто иметь 2 буфера и рендерить в них по очереди.

можно, но для этого нужно гарантированно иметь поддержку FBO, а параноевский рендерер умеет работать и без него.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 20-11-2016 в 21:38:

Всё понял, но не вижу разницы. Ты копируешь куски в большую текстуру, я копирую куски в текстуру размером с кусок. По производительности должно быть одинаково.
Вопрос в том, почему у вас такой сильный дроп от рисования квада в маленькие текстуры. Может, из-за переключения шейдера?
Еще у себя заметил странную нелинейность падения фпс от количества генерируемых мипов. Например, 2,3,4 мипа - 100фпс, 5 мипов - 92фпс, 6 мипов - 85фпс. Причем последние мипы же самые мелкие, типа 4х4.


Отправлено tolerance 21-11-2016 в 05:00:

Цитата:
ncuxonaT писал:
Сделал новую версию, теперь мипы делаются вручную с гауссовым размытием. Это позволило убрать мерцание, а на фпс практически не повлияло (по крайней мере на моих видеокартах). Интересно, как оно поведет себя на ваших системах в сравнении с прошлой версией.

А как переключать то? Gaussian вкл/выкл?


Отправлено ncuxonaT 21-11-2016 в 12:43:

tolerance никак, он всегда включен.


Отправлено Дядя Миша 21-11-2016 в 13:35:

Цитата:
ncuxonaT писал:
По производительности должно быть одинаково.

В теории много чего должно быть. Поэтому всегда проверять надо.
Я к примеру думал, что в теории выгоднее всю траву затолкать в один большой VBO - будет быстрее. На практике оказалось, что много маленьких VBO и быстрее и оптимальнее.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 21-11-2016 в 21:22:

Дядя Миша попробовал по-твоему. Как-то странно получается. Мой метод даёт лучший фпс, если стекол 5 или меньше. После этого фпс делает резкий скачок вниз. А в твоем методе зависимость фпс от количества стекол примерно линейная. Вот, график нарисовал.

Добавлено 22-11-2016 в 00:22:

Обновил демку, теперь по F переключается использование одной полноэкранной текстуры или нескольких маленьких.
https://dl.dropboxusercontent.com/u...ipmap_gauss.zip


Отправлено Дядя Миша 22-11-2016 в 13:42:

на fullscreen_texture_copy = true у меня 150 fps.
на false 45 fps.
Если отключить размытие, то за стёклами видно радикально ч0рный чайник Рассела. Проблема в том, что чайник размывается независимо от того, за стеклом он или перед стеклом. Ну это так, к слову. Есть тутор от крайтека по этой проблеме.

Добавлено 22-11-2016 в 16:42:

А к чему ты собственно эту демку делаешь? Просто побаловаться или будешь движок песать?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 22-11-2016 в 19:40:

Цитата:
Дядя Миша писал:
на fullscreen_texture_copy = true у меня 150 fps.
на false 45 fps.

А от количества стекол фпс меняется линейно, или есть рывки?
Цитата:
Дядя Миша писал:
Проблема в том, что чайник размывается независимо от того, за стеклом он или перед стеклом.

Боюсь, что это слишком сложно фиксить, потому что нужно знать глубину сцены и глубину стекла во время рендера мипов. В Думе это оставили как есть.
Цитата:
Дядя Миша писал:
Просто побаловаться или будешь движок песать?

Просто побаловаться. Движок слишком сложна


Отправлено ncuxonaT 22-11-2016 в 19:47:

Зато я теперь могу объекты за стеклом размывать в зависимости от их удаленности от стекла.

Добавлено 22-11-2016 в 22:47:

Что-то я подумал, может размытие в 2 прохода непосредственно при рендере будет быстрее мипов... И глюков вот этих не будет. Надо проверить.


Отправлено XaeroX 22-11-2016 в 20:02:

А зачем размывать то, что за стеклом?

__________________

xaerox on Vivino


Отправлено Дядя Миша 22-11-2016 в 20:21:

Цитата:
ncuxonaT писал:
А от количества стекол фпс меняется линейно, или есть рывки?

первый вариант линейно. Второй просаживает фпс до 20, пока в кадре есть хотя бы одно стекло (имеется в виду что оно занимает весь экран и фпс падает).
Пля, ну выключи вертикалку в приложении. Я заманался уже туда-сюда в драйвере её отключать. Что за неуважение к юзеру.

Цитата:
XaeroX писал:
А зачем размывать то, что за стеклом?

ну мало ли что там? Вдруг 18+. Лучше подстраховаться.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено KiQ 22-11-2016 в 20:52:

ncuxonaT вот глянул я твой скрин из дуума и вот что... Prey, 2006 год


Добавлено 22-11-2016 в 23:52:

Цитата:
Дядя Миша писал:
ну мало ли что там? Вдруг 18+. Лучше подстраховаться.

Неужто еще кто помнит это шоу))

__________________
-Brain is dead-


Временная зона GMT. Текущее время 09:21. Страницы (100): « Первая ... « 72 73 74 75 [76] 77 78 79 80 » ... Последняя »
Показать все 1500 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024