![]() |
Показать все 36 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Наши проекты (https://hlfx.ru/forum/forumdisplay.php?forumid=1)
-- BSP v. 31 (https://hlfx.ru/forum/showthread.php?threadid=3701)
BSP v. 31
Поскольку народ упорно цепляется за GoldSrc, напрочь игнорируя разные более новые форматы, то рано или поздно встаёт вопрос о несоответствии возможностей текущему времени. Т.е., если в 1998 году возможностей халфовского формата хватало всем и каждому, то сейчас не хватает совершенно. Причём, зачастую основные проблемы нехватки ресурсов кроются даже не в абсолютных лимитах, как таковых, а в нерациональном использовании ресурсов, что решается применением оптимизированного компилятора. Поскольку исходников халфы мы так и не увидели, то все силы кодеров были брошены именно на компиляторы, как на единственный способ создавать отличные карты в условиях ограниченных лимитов. И надо сказать они достигли в этом деле очень больших успехов. Ни для одной кваки нету таких продвинутых пользовательских компилеров, как для халфы. Однако несмотря на всё это, необходимость в новом формате карт постепенно назревала. Товарищи с twilight, когда им перестало хватать лимитов замутили формат BSP2 - просто заменили все unsigned short на unsigned int, не трогая сами структуры. Я в ксаше так поступить не могу - нарушится абсолютно вся совместимость. Однако я тоже кое-что придумал. Собственно, эта тема - плод долгих измышлений и опытов. На выходе должен получится новый формат карт - BSP 31, халфовская версия, как мы помним имеет номер 30.
Основные изменения, которые планируется сделать:
1. изменить кол-во лукселей на нексель. В оригинале, как мы помним приходилось 16 текселей на луксель, тени получались исключительно размытые. Я планирую использовать 4 текселя на луксель, размер лайтдаты увеличится в 4 раза, но, как вы понимаете это не смертельно.
2. при таких больших лайтмапах само собой разумеется использовать субдивайд не 240, а 512. В подавляющем большинстве случаев это сократит кол-во полигонов на карте в 4 раза. Ну да впрочем, это вы и без меня знаете.
3. исправить самый надоедливый лимит - на клипноды. Проявляется он потому, что у нас общий лимит 32768 узлов на 4 дерева. То есть хоть тресни, но нам необходимо построить 4 дерева клипнодов и уложить их в лимит. Получается зачастую "на грани", когда их объем уже вплотную подходит к лимиту. Самый простой способ устранения данной проблемы - заменить short children[2] на int children[2] в описании клипнодов. Как вы помните эти структурки торчат из движка во все стороны и менять такие вещи попросту опасно, но к великому счастью, непосредственно указатель на dclipnode_t нигде не имеет прямого обращения из кода пользовательской части. К тому же я просто уверен, что ни в одном из сотен халфовских модов его не юзают - попросту нет в нём необходимости. А моды с кастомным рендерером могут использовать переменную firstclipnode, которая и так уже int, т.е. эту часть даже трогать не придется. Правда при таком подходе мы будем ограничены в 32768 узлов на одно клип-дерево, но это означает расширение лимита в 4 раза, чего, опять таки, более чем достаточно на мой взгляд.
4. ну и завершающим аккордом у получившегося бсп-файлика будет прописан номер версии 31, дабы халфа его сдуру не попыталась загрузить. Сам кастомный компилятор будет реализован на базе VHLT 30, к тому же можно будет попросить китайца включить все эти изменения в виде отключаемых участков кода - почему бы и нет.
Ну и, чтобы не быть голословным приведу в пример скриншот моих опытов.
subdivide 512 и 4 текселя на 1 луксель. VHLT 28, тень от "дырявой" текстуры.
Жду ваших комментариев и предложений.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Это тень от func_illusionary? Тогда очень здорово.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
А что будет с планерсами? Я так понимаю лимиты будут схожи с хл2?
Это получается, что будут улучшены тени, увеличен лимит на клипноды и subdivide тоже будет увеличен. Собственно, не так уж много, но совместимость не изломается. А много ли нашим мапперам надо? Я на качество теней в халфе не очень-то обращаю внимание, разве что когда они уж совсем ступенчатые. Вот ещё бы лайтгрид для правильного освещения моделей и вообще конфетка будет.
Фу ступенчатые тени какой кошмар. Неужели нельзя замутить какое-нибудь сглаживание как в современных движках?
Предложение - сделать возможность пользователю выбирать масштаб текселей к люкселям, как в сорсе.
__________________
Трагическая новость: Пятеро инженеров Casio умерли от смеха, узнав что Samsung анонсировали часы с заявленным временем работы в 25 часов
Дядя Миша
Тексели и пиксели квадратные. Если ты уменьшил величину ребра с 16 до 4, то площадь уменьшилась не в 4, а в 4*4=16 раз.
__________________
Дядя Миша
А не полетит совместимость если диапазон лайтмап увеличить?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
FiEctro формат v31 так что халфа не будет его грузить, поэтому не полетит.
HAWK0044
КЭП, я про другое.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Кстати, да. Многим совместимость с модами не нужна. Многим нужна совместимость с инструментарием. То есть, многим не важно, какие компиллеры подсоввывать хаммеру, им важно, чтобы хаммер мог делать карты. Привычно, довольно удобно. И, кстати, если будет новый формат карт, предиктинг, если халвовские моды не будут запускаться под ксашем, но самодельщикам достаточно будет обработать напильником и перекомпилить- и всё пойдёт- это будет намного лучше. Почему все поголовно не пересели под волатилу? Отсутствие ПРИВЫЧНОГО инструментария. Удобство разработчика зачастую играет большую роль, чем совместимость с модами десятилетней давности или возможностями узкозаточенных редакторов, под которые надо переучиваться заново.
__________________
Владелец восьмиструнного монстра Schecter Omen-8 Vintage White (VWHT)
Бывал на концертах этих групп: Rashamba, 7000$, Louna, Molecul, Project Revolution, Headsource, Digimortal и многих других. Куча автографов.
Я член возлагаю на сраный геймдев.
Дядя Миша
А почему бы просто не запилить поддержку халфовского и кваковского BSP одновременно? Помнится, в том же Darkplaces можно было от контры карту подкинуть и играть. Например, hl-bsp оставить для совместимости и никогда более не трогать, а кваковский развивать в нужном направлении. Ведь ты же сам говорил, что он намного лучше... Или ты в свой формат планируешь сделать ещё круче?
__________________
На презентации Internet Explorer 9 парализованный мальчик встал и вышел... о_О
В новом амароке файловый менеджер превратили в фейловый... © slux
__________________
Ku2zoff
Можно сказать ты его под линукс портировать будешь.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
Я имелл ввиду формат q3, который обсуждали в теме про XashNT.
__________________
На презентации Internet Explorer 9 парализованный мальчик встал и вышел... о_О
В новом амароке файловый менеджер превратили в фейловый... © slux
Дядя Миша , как будто на форуме мапперов и моделлеров не осталось?
__________________
Владелец восьмиструнного монстра Schecter Omen-8 Vintage White (VWHT)
Бывал на концертах этих групп: Rashamba, 7000$, Louna, Molecul, Project Revolution, Headsource, Digimortal и многих других. Куча автографов.
Я член возлагаю на сраный геймдев.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ну, как бы давно уже говорил, что компилятор должен быть малоразборчив к входящему формату - q1map/q2map/q3map (хрен с ними, с патчами)/map220, а что там на выходе идет к движку в плане технической реализации модерам глубоко по барабану, тут sania_3 очень прав - инструментарий первичен. Даже я с опытом работы в радиантах не осилил потерпеть врадиант, чо уж говорить про хл-мапперов.
Для примера, я тут снова захотел браши потаскать и использую связку NetRadiant + q3map без патчей + txqbsp + FitzQuake_mark_V, формально на выходе у меня q1bsp, но с полноцветными текстурами, цветным освещением и некоторыми возможностями hlbsp (полупрозрачные текстурки и решеточки).
__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran
1 | Object names Objects/Maxobjs Memory / Maxmem Fullness |
2 | ------------ --------------- --------------- -------- |
3 | models 197/1024 12608/65536 (19.2) |
4 | planes 9894/65536 197880/1310720 (15.1) |
5 | vertexes 25670/65535 308040/786420 (39.2) |
6 | nodes 9514/32767 228336/786408 (29.0) |
7 | texinfos 5959/65535 238360/2621400 ( 9.1) |
8 | faces 17380/65535 347600/1310700 (26.5) |
9 | clipnodes 28870/32767 230960/262136 (88.1)VERY FULL! |
10 | leaves 2371/32767 66388/917476 ( 7.2) |
11 | marksurfaces 19906/65535 39812/131070 (30.4) |
12 | surfedges 77646/2097152 310584/8388608 ( 3.7) |
13 | edges 42407/1048576 169628/4194304 ( 4.0) |
14 | texdata [variable] 2292/33554432 ( 0.0) |
15 | lightdata [variable] 5234256/33554432 (15.6) |
16 | visdata [variable] 274565/8388608 ( 3.3) |
17 | entdata [variable] 38382/524288 ( 7.3) |
18 | === Total BSP file data space used: 7.34 Mb === |
1 | Object names Objects/Maxobjs Memory / Maxmem Fullness |
2 | ------------ --------------- --------------- -------- |
3 | models 197/1024 12608/65536 (19.2) |
4 | planes 9894/65536 197880/1310720 (15.1) |
5 | vertexes 19672/65535 236064/786420 (30.0) |
6 | nodes 9555/32767 229320/786408 (29.2) |
7 | texinfos 5966/65535 238640/2621400 ( 9.1) |
8 | faces 13373/65535 267460/1310700 (20.4) |
9 | clipnodes 28466/98301 227728/786408 (29.0) |
10 | leaves 2361/32767 66108/917476 ( 7.2) |
11 | marksurfaces 15660/65535 31320/131070 (23.9) |
12 | surfedges 58076/2097152 232304/8388608 ( 2.8) |
13 | edges 32377/1048576 129508/4194304 ( 3.1) |
14 | texdata [variable] 2292/33554432 ( 0.0) |
15 | lightdata [variable] 17504943/33554432 (52.2) |
16 | visdata [variable] 269609/8388608 ( 3.2) |
17 | entdata [variable] 38382/524288 ( 7.3) |
18 | === Total BSP file data space used: 18.77 Mb === |
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ну намана чо. 20 метров это немного.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Дядя Миша
Фпс во сколько раз выше стал?
__________________
Дядя Миша, да, клево, а у меня еще Quoth там.
__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran
Выше? Он упал почти в два раза в критических местах. Хотел бы я знать почему. Что характерно, если собрать лайтмапы в большие блоки 512х512, то фпс не меняется, хотя должен был подрасти из-за меньшего кол-ва переключений текстур. А вот фиг. Но дело стопудово в лайтмапах, неосвещенная карта в этих же тяжелых точках свободно выдаёт до 300 фпс. С освещением - уже 43 (против 82 на старом формате).
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша, я всегда считал, что ботлнек у кнота в полупрозрачных текстурах, там местами их довольно много послойно рендерится, не думаю, что это можно вылечить увеличением размера лайтмап или субдивайда.
__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша, о, кстати, я и забыл, что там мерцание всяческое. "Ну, сделай же что-нибудь!!!"
__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran
Временная зона GMT. Текущее время 18:45. | Показать все 36 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024