![]() |
Страницы (41): « Первая ... « 17 18 19 20 [21] 22 23 24 25 » ... Последняя » Показать все 608 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Наши проекты (https://hlfx.ru/forum/forumdisplay.php?forumid=1)
-- PrimeXT - логическое продолжение XashXT (https://hlfx.ru/forum/showthread.php?threadid=5371)
nemyax ну естественно. В ксаше вообще первоочередное внимание уделено сейв-рестору во всяких стрёмных ситуациях.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Мой сайт
Xash3D Modding Discord
__________________
Мой мод на Xash
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Мой мод на Xash
Второй день прикручиваю рендер к ксашмоду. Всё конечно туго идет, ибо там в коде просто настоящий header hell
__________________
Мой сайт
Xash3D Modding Discord
Я када новый файл создаю - просто копипастю в него инклуды из соседнего.
Вот и получается header hell. Надо бы конечно по уму это отревизить, но где же взять столько времени.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ладно, нехотите проводить исследования, хотите верить в Bindless текстуры, я вам сам дам два скриншота.
Первый - это халфовский BSP. Не точно этот же формат, но близкий к нему, фейсы хранятся в виде точек и текстурных матриц, индексация строится налиту при загрузке.
Второй - это новый формат для XashNT, то что лайтмапа несовпадает, необращайте внимание, там к слову разрешение этой лайтмапы вчетверо выше, чем у оригинала, т.е. фпс наоборот должен был быть ниже.
Достаточно наглядная разница в производительности? В обоих случаях в кадр попадает вся карта. Только вот у оригинала - 14 тысяч сурфейсов, а в новом формате - 85 сурфейсов. Даже просто пропустить через фрустум 14 тысяч фейсов - это уже серъезная нагрузка. Их надо объединять в пространстве, а делать это при загрузке довольно долго и неудобно, если менять формат, это вообще всё посыплется. Т.е. задача практически не решаемая малыми усилиями. Или решаемая, но костыльно.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
C DIP-ами давно уже непростые отношения. Боресков нас уверял в нулевых, что DIPы дороги только в DirectX, а в OpenGL они практически бесплатные, халявные итогдалие. Ну надо сказать, что года с 2009-го эта ситуация стала меняться к худшему. Возможно стоимость вызова для GL и ниже, чем для DX, но всё равно она стала достаточно высокой, чоуж там.
Негативные изменения я впервые заметил при смене поколений железа с GF6600 на GF8600, т.е. при уходе от фиксированного конвейера, на который были условно прилажены шейдеры, на полностью программируемые конвейер железа нового поколения. Это меня неприятно удивило тогда.
Ну что поделать, за каждую фичу приходится платить какую-то цену.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Мой сайт
Xash3D Modding Discord
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Мой сайт
Xash3D Modding Discord
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Вброшу про дипы. Делал рендер текста для своих демок. Нашел готовый юнит, написанный якобы по мотивам тутора NeHe. Там на каждый глиф создавалась отдельная текстура и еще дисплейный список для отрисовки. Дисплейный список включал в себя биндинг нужной текстуры, glBegin/glEnd с квадом соответствующего размера и "сдвиг каретки" через glTranslate.
Подключил юнит, вывожу 5 строчек текста, фпс падает с 300 до 150, никуда не годится. Убираю индивидуальные текстуры, делаю общий атлас для всех глифов, фпс поднимается до 220. Выкидываю дисплейные списки, рендерю целую строку одним бегин/эндом и без транслейтов, фпс возвращается на 300.
Иными словами, дипы не халявные. Что интересно, падение фпс было нелинейным. Три строки рендерились относительно быстро, резкое замедление происходило на четвертой.
Временная зона GMT. Текущее время 19:02. | Страницы (41): « Первая ... « 17 18 19 20 [21] 22 23 24 25 » ... Последняя » Показать все 608 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024