| Автор | Сообщение |
lafoxxx [B0S] - Captain -
 | | 2182 |
 Doom Rate: 1.4 Posts quality: +1001 |
Отправлено: 13.01.26 07:22:35 | |
|
| У вас Гитхаб открывается? Там можно эти скрины в баг оформить, может починят. |
|
|
| 2 |
3 |
4 |
 |
|
| |
Michael_63 - Master Corporal -
 | | 208 |
 Doom Rate: 1.49 Posts quality: +111 |
Отправлено: 13.01.26 11:33:44 | |
|
| lafoxxx [B0S] пишет: | | У вас Гитхаб открывается? Там можно эти скрины в баг оформить, может починят. |
Плюс. Попробуйте написать им. Кто знает, может с командой UZDoom вы лучше найдёте общий язык, чем с Графом.
Добавлено спустя 5 минут 41 секунду:
| Герр Смертоносец пишет: | | Та же тележка, Softpoly. Плоские полы не отображаются, все текстуры разъехались к чёртовой бабушке. Так теперь и в UZ, и в GZ, и в LZ. |
Так вот оно что. Мне тоже подобная фигня знакома. Не знаю, оно это или нет, но похоже. Это текстура, состоящая из нескольких патчей? Или там как-то у нижней и у миддл- текстуры получаются разные оффсеты? |
|
|
| |
Герр Смертоносец - Warrant Officer -
 | | 1121 |
 Doom Rate: 1.33 Posts quality: +1004 |
Отправлено: 13.01.26 16:28:14 | |
|
| Michael_63 пишет: | | Плюс. Попробуйте написать им. Кто знает, может с командой UZDoom вы лучше найдёте общий язык, чем с Графом. |
Учитывая, что это не фиксят уже несколько лет, как и проблему с вокселями... Хз, может и найду.
Или может вад сначала допилить и опубликовать с пометкой: вот вам готовый инструментарий для создания ездабельных машинок и поездов на базе полиобъектов, только я вам его не дам потому что у вас документов нету на Softpoly он работать не будет, потому что злые дяди всё сломали. Шоб общественное мнение к бомбажу подключилось.
| Michael_63 пишет: | | Так вот оно что. Мне тоже подобная фигня знакома. Не знаю, оно это или нет, но похоже. Это текстура, состоящая из нескольких патчей? Или там как-то у нижней и у миддл- текстуры получаются разные оффсеты? |
Это просто однопатчевые мидтекстуры, даже без скейлинга. Проблема в том, что у Softpoly обработка вертикальных оффсетов реализована как-то шизофренически. У подвижных по-вертикали полиобъектов он смещает вверх границы мидтекстуры, но не саму графику, из-за чего они относительно друг друга разъезжаются. Выглядит это вот так:
При этом они НЕ разъезжаются, если высота потолка/пола опорного сектора находится внутри текущего сектора. Но тогда вместе с полиобъектом начинает ездить невидимый и непроходимый пол и потолок опорного сектора, что обессмысливает всю идею. |
|
|
| 5 |
 |
|
| |
klerk - 2nd Lieutenant -
 | | 1390 |
 Doom Rate: 1.15 Posts quality: +1087 |
Отправлено: 14.01.26 11:09:03 | |
|
Герр Смертоносец, тут какой-то форк LZDoom релизнули https://github.com/Darkcrafter07/LZDoom07
Ты его проверял? Я, правда, сомневаюсь, что там есть исправления, потому что описание совсем не об этом. Но так, в порядке бреда, а вдруг... |
Рейтинг сообщения: +1, отметил(и): RunnerFx |
|
| 1 |
11 |
 |
|
| |
RunnerFx = Sergeant Major =
 | | 642 |
 Doom Rate: 1.57 Posts quality: +487 |
Отправлено: 14.01.26 17:23:34 | |
|
| Это тот же lzdoom 3.88b c парочкой фиксов проблем, с которыми я лично не сталкивался, типа вылет при смене треков midi. Что не запускает lzdoom, то не запустит и этот форк. |
Рейтинг сообщения: +1, отметил(и): klerk |
|
| 3 |
1 |
 |
|
| |
SilverMiner = Sergeant Major =
 | | 670 |
 Doom Rate: 1.98 Posts quality: +314 |
Отправлено: 14.01.26 18:32:28 | |
|
| миди депешмода get the balance right любил крашить здум при переключении способов вывода музыки. Либо крашил здум при конкретных настройках музыки |
|
|
| 1 |
2 |
1 |
 |
|
| |
Герр Смертоносец - Warrant Officer -
 | | 1121 |
 Doom Rate: 1.33 Posts quality: +1004 |
Отправлено: 14.01.26 19:33:09 | |
|
| klerk пишет: | Герр Смертоносец, тут какой-то форк LZDoom релизнули https://github.com/Darkcrafter07/LZDoom07
Ты его проверял? Я, правда, сомневаюсь, что там есть исправления, потому что описание совсем не об этом. Но так, в порядке бреда, а вдруг... |
Да, здесь оригинальный software рендер. Но увы, скриптовую часть автор пока не трогает. Скрипты так и остались от дореформенного LZdoom 3.88b. Но по крайней мере есть хоть какой-то шанс, что автор их туда вкорячит. |
Рейтинг сообщения: +1, отметил(и): klerk |
|
| 5 |
 |
|
| |
Darkcrafter07 Recruit
 | | 6 |
Doom Rate: 2 Posts quality: +7 |
Отправлено: 15.01.26 18:37:48 | |
|
Здравствуйте, я автор порта LZDoom07, хочу внести немного ясности:
1) Software рендер в новых версиях GZDoom/UZDoom - есть, но сломан, последняя версия с рабочим рендером - 4.10, а про визуальные баги в новых версиях на гитхабе мне ответили, что "чудно, что он вообще работает".
2) Poly рендерер, видимо, заброшен и кем-то изредка дорабатывается, на очень старых компах без видеокарт - вполне интересное решение, он ведь тоже, программный.
3) Я сильно отстал от жизни в плане модов, форк порта LZDoom я главным образом пилю для себя (под свой мапсет Hell Renaissance). Работа над мапсетом встала, потому что я разочаровался в оптимизации GZDoom, а многолетние уговоры и идеи на форумах ну и мне очень хотелось иметь фичу Forced-Perspective, которую благополучно туда портировал и даже улучшил, чтобы не спрайты не просвечивались через 3D-полы, а также работаю над своей версией - Hybrid Forced-Perspective (бешенная смесь Smart и Forced-Perspective c собственным движком окклюзии), интересно же!
Я считаю, что LZDoom - это лучшее, что случилось с GZDoom, потому что это гоза на пике своего развития, там и zscript, и stacked portals и порталы и многоуровневые 3D-этажи, и поддержка шейдеров, и работаёт пракически на всём ( а я ещё добавил поддержку OpenGL1).
Для меня главное, чтобы работал Brutal Doom, хотя интересно, что же там за моды такие, которым нужен последний zscript, чего можно сделать такого в дум с помощью скриптов, а не decorate?
Есть интересненький порт - Eternity Engine, так там даже части уровней могут передвигаться прямо как в Build Engine от Дюка! Ну конечно же об этом легко говорить, но сложнее всего делать, поэтому на эти фичи надо много времени.
Должен, наверное, быть способ портировать скрипты из новых версий в старые, но я не знаю где они применяются и какой эффект дают, а самое главное - чем отличается старая версия zscript от новой. |
|
|
| |
RunnerFx = Sergeant Major =
 | | 642 |
 Doom Rate: 1.57 Posts quality: +487 |
Отправлено: 15.01.26 19:28:37 | |
|
Приветствуем. Новые версии zscript требует project brutaly. Отказывается стартовать. Вообще, современная гозза слишком тяжелая, нехило грузит систему на пустом месте. То ли дело zandronum и lzdoom до перерождения, свернул себе и занимайся своими делами до востребования. Поддержка 32 бит, - неоспоримый плюс, особенно для меня, ибо на рабочей системе стоит win xp. Зачем думу вообще 64 бита? если максимум использованной оперативки, которую я регистрировал, - это 1.7 gb с упомянутым модом PB и hd тестурами. Второй минус lzdoom и zandronum, - через пень колоду грузят карты mbf21, ибо поддержки этого формата нет. Вот это бы всë починить, и остальные порты идут прямиком в корзину. |
Рейтинг сообщения: +1, отметил(и): klerk |
|
| 3 |
1 |
 |
|
| |
SilverMiner = Sergeant Major =
 | | 670 |
 Doom Rate: 1.98 Posts quality: +314 |
Отправлено: 15.01.26 19:51:57 | |
|
С течением версий зскрипту прописывают хуки в разные части как минимум игровой симуляции. Иногда дыры латают и бесполезные но постоянные проверки чего-то там убирают. Ну раз уж есть хотелка именно прожект бруталити гонять на чём-то менее раздутом чем то что он требует, значит надо проводить "конкретный анализ конкретной ситуации". Вот с мбф21 хорошо что у него есть краткая спецификация. А у зскрипта вид непрезентабельный, лично я спецификации не видел. То что связано с геймплеем можно без зскрипта сбацать я думаю вполне. Но зскрипт умеет геометрию уровня постпроцессить. Это нам не надо, плюс карты можно питон скриптами обработать как нужно также как это бы делал этот постпроцессор, но я думаю что в прожект бруталити никто не мучает геометрию. Есть оверлеи какие-то и крутилки вертелки спрайтов.
Гозза это накормленное стероидами животное у которого зачастую энергетика не позволяет поддерживать его массу, и она валится под грузом этого говна. Вот что там весит в коде 100 мегов и больше, а? Альбом павла корфиатиса? |
|
|
| 1 |
2 |
1 |
 |
|
| |
RastaManGames = 2nd Lieutenant =
 | | 1578 |
 Doom Rate: 2.09 Posts quality: +802 |
Отправлено: 15.01.26 21:27:22 | |
|
@Darkcrafter07 Я бы хотел запросить несколько фич для software renderer'а "Лоззы07" (если можно):
1) Фикс отображения флатов на слопах, если скейл оных был изменён (в нынешних реалиях текстуры превращаются в кашу).
2) Фикс отображения 3D-слопов (сейчас они просто не отображаются).
3) Поддержка брайтмапов (это реально иметь в "софте" и около-ванильные сорс-порты это доказали). |
|
|
| 1 |
4 |
1 |
 |
|
| |
Герр Смертоносец - Warrant Officer -
 | | 1121 |
 Doom Rate: 1.33 Posts quality: +1004 |
Отправлено: 16.01.26 03:32:32 | |
|
| Darkcrafter07 пишет: | | Здравствуйте, я автор порта LZDoom07 |
Моё вам безграничное почтение, вы его только не бросайте пожалуйста.
| Darkcrafter07 пишет: | 1) Software рендер в новых версиях GZDoom/UZDoom - есть, но сломан, последняя версия с рабочим рендером - 4.10, а про визуальные баги в новых версиях на гитхабе мне ответили, что "чудно, что он вообще работает".
2) Poly рендерер, видимо, заброшен и кем-то изредка дорабатывается |
А я думал, самые гениальные управляющие на Автовазе работают. Вот же, есть куда расти.
| Darkcrafter07 пишет: | | Для меня главное, чтобы работал Brutal Doom, хотя интересно, что же там за моды такие, которым нужен последний zscript, чего можно сделать такого в дум с помощью скриптов, а не decorate? |
Очень много, воистину много. Я сам фанат шизомеханик на decorate и много лет плевался в сторону zscript за идущую в комплекте с ним отвратительную документированность (к слову об Автовазе), однако вынужден признать: инструмент оно невероятно мощный. И позволяет в три тычка делать такое, для чего на decorate потребовались бы километры кода, а некоторые вещи там реализовать вообще невозможно. Например, я смог сделать подвижный CustomBridge, который сам из редактора карт прилинковывается к полиобъекту, сам определяет что на нём стоит и переносит игрока/мобов/предметы с учётом картезианской и угловой скорости. Фактически воспроизводя тем самым механику подвижных секторов из Blood и подвижных брашей из более современных игр. А главное - вся конструкция легко переносится из вада в вад. И если сия конструкция уйдёт в народ, ездящие вбок платформы на UDMF смогут добавлять даже те, кто кодить ни умеет вообще, а умеет только теги в билдере вбивать. Сделать аналог на декорейте - это проще повеситься.
Все функции с жёстко вбитой логикой вроде A_Chase можно полностью переписать, можно иметь прямой доступ ко всем структурам на карте, творить всякую порнографию с интерфейсом, перекроить физику, вешать на произвольных мобов произвольные перки с синергическим эффектом как в corruption cards. Тут легче сказать, чего на зскрипте сделать нельзя.
Однако ж есть нюансы. Например, хоть в zscript можно добавлять кастомные флаги - нельзя переписать/расширить базовый класс Actor, который жёстко задан в gzdoom.pk3, а значит невозможно в виде мода добавить переменную общего назначения, нативно действующую для всех акторов, что может быть критично для какой-то механики. Это может сделать только сам автор билда gzdoom. Потому некоторые функции между разными версиями зскрипта (и современного декорейта, как надстройки над зскриптом) могут работать криво или не работать вообще. Поэтому периодически вкорячивать скрипты от позднейшей версии gzdoom в lzdoom необходимо, некоторые моды без них уже не идут, в будущем расхождение зависимостей станет острее. Достаточно ли для этого заимствовать потроха gzdoom.pk3, или же зависимости тянутся куда-то глубже в dll - тут я, увы, предмет не знаю. Вероятно, это надо у Захла спрашивать, где оно лежит и откуда функции подтягивает. |
|
|
| 5 |
 |
|
| |
Darkcrafter07 Recruit
 | | 6 |
Doom Rate: 2 Posts quality: +7 |
Отправлено: 16.01.26 07:49:44 | |
|
Благодарю за инфу!
| RunnerFx пишет: | | Второй минус lzdoom и zandronum, - через пень колоду грузят карты mbf21, ибо поддержки этого формата нет. |
То есть в GZDoom/UZDoom они нормально идут? А какие именно карты или вады?
| SilverMiner пишет: | Но зскрипт умеет геометрию уровня постпроцессить. Это нам не надо, плюс карты можно питон скриптами обработать как нужно также как это бы делал этот постпроцессор, но я думаю что в прожект бруталити никто не мучает геометрию. Есть оверлеи какие-то и крутилки вертелки спрайтов.
Гозза это накормленное стероидами животное у которого зачастую энергетика не позволяет поддерживать его массу, и она валится под грузом этого говна. Вот что там весит в коде 100 мегов и больше, а? Альбом павла корфиатиса |
Ух ты и так даже можно было? Они там со времён этого самого GZDoom v3.3 на котором базирован LZDoom07, сильно переделали рендер в плане перестановки папок и файлов, заменили приставку "gl_" на "hw" (hardware), потому что там же теперь не только OpenGL, но и Vulkan, но имена CVAR сохранили приставку "gl_", что в принципе, наверное правильно.
Но самое лучшее, что было сделано - добавлен многопоток, особенно ускорение заметно на Vulkan, но я считаю, что этого недостаточно. Каждый кадр производится полный цикл BSP-traversal, потому гоняются данные о текстурах, их свойствах, листы освещения, вершины туда-сюда между процом и видеокартой, что добавляет огромные накладные расходы (overhead).
Я сейчас работают над техникой, которая дампит всю статическую геометрию уровня в 3D модели, создаёт decorate и modeldef листы, спавнит их в центре карты, убирает запечённую геометрию из BSP traversal и рендерит как вещь с 3д моделькой. В Hell Renaissance в Map15 такое реализовано, только всё сделано вручную и довольно топорно. От такой оптимизации оно работает на мусорной системе в 640x480x32bit в 15fps на системе celeron 2.4GHz и FX5500 128mb, что, конечно же чудо. Правда там я экспортировал геометрию в редакторе карт, а тут надо делать код C++ и у меня проблемы при создании меша и UV, а ещё лучше, наверное, экспортировать в бинарный md3, тогда должно быть ещё быстрее. Если кто знает как делать экспорт геометрии в C++ правильно, пожалуйста помогите.
| SilverMiner пишет: | @Darkcrafter07 Я бы хотел запросить несколько фич для software renderer'а "Лоззы07" (если можно):
1) Фикс отображения флатов на слопах, если скейл оных был изменён (в нынешних реалиях текстуры превращаются в кашу).
2) Фикс отображения 3D-слопов (сейчас они просто не отображаются).
3) Поддержка брайтмапов (это реально иметь в "софте" и около-ванильные сорс-порты это доказали). |
Это, наверное, не скоро, кстати с первым пунктом я не сталкивался, насчёт второго - как бы не пришлось скрещивать с поли рендером, а третьего - я в это не углублялся, я знаю, что первоквейки и дюк нукем имели специальные fullbright цвета в конце палитры, потому что брайтмапы наверняка добавляют тормозов. Дайте названия модов или карт, на которых это происходит.
| Герр Смертоносец пишет: | | Моё вам безграничное почтение, вы его только не бросайте пожалуйста. |
Благодарю
| Герр Смертоносец пишет: | | А я думал, самые гениальные управляющие на Автовазе работают. Вот же, есть куда расти. |
Там хотя-бы не говорят, "что это невозможно".
| Герр Смертоносец пишет: | | Я сам фанат шизомеханик на decorate и много лет плевался в сторону zscript за идущую в комплекте с ним отвратительную документированность (к слову об Автовазе), однако вынужден признать: инструмент оно невероятно мощный. |
Ну да, сейчас движки без zscript выглядят бедновато. Хотелось бы узнать названия модов и карт, где это всё происходит, потому что тестирование обязательно. |
|
|
| |
RunnerFx = Sergeant Major =
 | | 642 |
 Doom Rate: 1.57 Posts quality: +487 |
Отправлено: 16.01.26 11:38:23 | |
|
| Darkcrafter07 пишет: | | То есть в GZDoom/UZDoom они нормально идут? А какие именно карты или вады? |
Далеко ходить не надо, мегавад the warp. Не работают выходы с уровней.
тема на форуме |
|
|
| 3 |
1 |
 |
|
| |
Герр Смертоносец - Warrant Officer -
 | | 1121 |
 Doom Rate: 1.33 Posts quality: +1004 |
Отправлено: 16.01.26 22:11:32 | |
|
| Darkcrafter07 пишет: | | Хотелось бы узнать названия модов и карт, где это всё происходит, потому что тестирование обязательно. |
Ну как минимум вот этот мод вызывает ошибку в конкретном модуле погоды Universal_Rain_and_Snow_v3.pk3, который целиком стянут с какого-то репозитория типа realm667 или подобного. (А значит его стянет и кто-то другой, и ситуация повторится вновь и вновь.)
Warning: ZScript version mismatch. 4.11.0 required but only 4.6.1 supported.
Script error, "Universal_Rain_and_Snow_v3.pk3:rainsnow/patternhandler.zs" line 128:
Unexpected '['
Expecting identifier
Script error, "Universal_Rain_and_Snow_v3.pk3:rainsnow/patternhandler.zs" line 135:
Unexpected '['
Expecting identifier
Script error, "Universal_Rain_and_Snow_v3.pk3:rainsnow/patternhandler.zs" line 444:
Unexpected token 'foreach'.
Script error, "Universal_Rain_and_Snow_v3.pk3:rainsnow/patternhandler.zs" line 444:
Unexpected end of file
Expecting '-' or '+' or '++' or '--' or '.' or '(' or '[' or ';' or 'class' or identifier or string constant or 'default' or 'color' or '{' or '}' or integer constant or 'super' or 'int8' or 'uint8' or 'int16' or 'uint16' or 'int' or 'uint' or 'bool' or 'float' or 'double' or 'vector2' or 'vector3' or 'name' or 'sound' or 'state' or 'let' or '@' or 'readonly' or 'map' or 'array' or '~' or '!' or 'sizeof' or 'alignof' or unsigned constant or float constant or name constant or 'false' or 'true' or 'null' or 'static const' or 'continue' or 'break' or 'return' or 'do' or 'for' or 'while' or 'until' or 'if' or 'switch' or 'case'
Script error, "Universal_Rain_and_Snow_v3.pk3:rainsnow/weather/include.zs" line 3:
Include script lump ./core/reader.zs not found
Script error, "Universal_Rain_and_Snow_v3.pk3:rainsnow/weather/include.zs" line 4:
Include script lump ./core/weatherhandler.zs not found
Script error, "Universal_Rain_and_Snow_v3.pk3:rainsnow/weather/include.zs" line 5:
Include script lump ./core/weather.zs not found
Script error, "Universal_Rain_and_Snow_v3.pk3:rainsnow/weather/include.zs" line 6:
Include script lump ./core/precipitation.zs not found
Первые две ошибки вызывают такие строчки:
let [didJump, label] = pattern.DidJump();
let [type, tics] = pattern.GetStateInfo(curPattern);
Это такое объявление переменной, когда исполнятор кода должен сначала посчитать выражение справа, определить тип результата и сам объявить тип объявляемой переменной. Синтаксический, мать его, сахар. На токен "let" оно не ругается, ругается на скобочку. Значит объявление переменных пачками было добавлено в zscript позже.
Третья (она же четвёртая) ошибка вызывается строчкой:
foreach (cl : curLabel)
Парсер кода не понял слово foreach. Настолько не понял, что крашнулся и дальше не читал.
Отсюда мы видим, что энтот самый foreach в данном случае это старый добрый цикл for, только для динамического массива и в юзерфрендли записи для юных программистов, которым некомфортно пердолиться с заклинаниями вида "int i = things.Size()-1". Ещё один синтаксический сахарок, значит.
Пятая...восьмая ошибки вызываются строчками:
#include "./core/reader.zs"
#include "./core/weatherhandler.zs"
#include "./core/weather.zs"
#include "./core/precipitation.zs"
Здесь у нас обычный инклуд в записи с точечкой. Папка rainsnow/weather/core/ там присутствует, но краткую запись с точечкой парсер не понимает. А значит что? Правильно, опять синтаксический сахарок для удобства и кококомфорта (jebana kurwa pierdolona szmata!), добавленный в стандарт языка явно позже, чем язык появился. Преступление раскрыто.
Что с этим делать? Понятия не имею, но на чистой интуиции предположу, что раз zscript у нас язык интерпретируемый - значит где-то в кишках порта лежат некие макросы интерпретатора, которые подсказывают парсеру кода как его читать и транслировать во машинный код. Вот их надо с новой версии выковырять и в старую воткнуть.
Дополнительно на сдачу другой кейс. Я лично выяснил, что флаг +DONTFOLLOWPLAYERS в LZdoom 3.88 не работает. Флаг отвечает за поведение FRIENDLY-монстров и разрешает им свободно бродить по карте, а не кучковаться возле игрока. Логика этого флага забита куда-то в нативную функцию A_Chase, которая изначально лежит вот здесь. И в той папке там рядом вообще много чего лежит, явно касающееся скриптов и внутриигровой логики.
Предположу, что можно просто выдрать эту папку целиком и воткнуть на аналогичное место в старом LZdoom, после чего запустить и посмотреть, на какие зависимости ругается. Я ненастоящий сварщик, и какие-то профессиональные нюансы по сборке-разборке огромных проектов могу упускать, но на пальцах оно выглядит как-то так. |
|
|
| 5 |
 |
|
| |
SilverMiner = Sergeant Major =
 | | 670 |
 Doom Rate: 1.98 Posts quality: +314 |
|
| 1 |
2 |
1 |
 |
|
| |
Darkcrafter07 Recruit
 | | 6 |
Doom Rate: 2 Posts quality: +7 |
Отправлено: 17.01.26 08:15:44 | |
|
Да, я вчера почитал, сравнил исходники UZDoom v4.14.3 и LZDoom07 (v3.88b по сути), разница там в скриптинге космическая, изменения затрагивают всю кодовую базу, так что просто портировать туда эту систему не получится. Можно попробовать тупо две базы залить в чат и что-нибудь частями где-то что-то залатать, но у меня нет такого тарифного плана, да и если бы он даже был, потянет ли это дело нейронка...
Насчёт улучшенной поддержки MBF21, LZDoom v3.88b её частично поддерживает, что и позволяет, в принципе, играть в тот самый warp, но выходы с уровней не работают - нет поддержки уровней MBF21. Так вот ищу ключевое слово в базах MBF21, да, она тоже зависит от zscript (начинка gzdoom.pk3). Ну и даже если эту начинку туда вставить, эффекта не будет, ведь сама реализация zscript очень сильно отличается.
Всё это настолько трудно сделать, что, наверное, даже проще будет портировать новые версии GZ/LZ на Windows XP. |
Рейтинг сообщения: +1, отметил(и): klerk |
|
| |