HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Наши проекты (https://hlfx.ru/forum/forumdisplay.php?forumid=1)
-- Lethe (мод HL) (https://hlfx.ru/forum/showthread.php?threadid=5537)
Отправлено Sigurth 08-07-2020 в 15:16:
Цитата:
thambs писал:
Что бы самый смак и треш
Нет, я такие моды не люблю и сам делать не буду.
Цитата:
thambs писал:
но только если на ксаше работать будет
Почему не будет работать на ксаше. Я изначально не тестировал мод на совместимость с ксашем. Иногда запускал, бегал немного и выключал. Но у меня уже тогда были баги. Сейчас под ксашем он тупо не запустится. Почему я не решил делать мод сразу под ксаш? Ведь там открытые сорцы и вообще больше возможностей? На тот момент в ксаше не работали как надо dsp эффекты для звука, да и вообще звук был какой-то приглушенный или с хрипами. А еще мне не нравится WON-овская менюшка от слова совсем, вызывает ностальгию, но не нравится. Особенно не нравится консоль без выпадающих команд и кваров.__________________
Никогда не поздно сделать мод под хл1
Отправлено Cybermax 08-07-2020 в 15:19:
Цитата:
thambs писал:
Широкая аудитория играет в срузисы, отсосин-криды и бубэ-хорроры на юните.
Ты хочешь сказать что не существует халф-лайф сообщества, которое играет в моды в 2020 году?
Ты хочешь чтобы он сделал треш мод персонально для тебя. Свой стиль выработать конечно надо, но есть разные варианты.
Отправлено Дядя Миша 08-07-2020 в 15:37:
Цитата:
Sigurth писал:
Сейчас под ксашем он тупо не запустится
SDL2 прилинковал?__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Sigurth 09-07-2020 в 05:35:
Цитата:
Дядя Миша писал:
SDL2 прилинковал?
Нет, но я подгружаю длл из оригинальной халфы. filesystem_stdio.dll например. Конечно, это не обязательно, и можно обойтись и без них. Но под ксашем все равно будет куча багов. Справедливости ради скажу, что если бы я начал делать мод сейчас, я бы делать на ксаше.__________________
Никогда не поздно сделать мод под хл1
Отправлено Ku2zoff 10-07-2020 в 02:11:
Цитата:
Sigurth писал:
filesystem_stdio.dll например
Чего такого даёт файлсистем интерфейс, чего нельзя сделать стандартными сишными либами?
Цитата:
Sigurth писал:
Декали высокого качества (beta)
3D скайбокс
Кастомный рендерер? На основе чего написан?
Отправлено Sigurth 11-07-2020 в 12:14:
Цитата:
Ku2zoff писал:
Чего такого даёт файлсистем интерфейс
Ничего особенного, разве что возможность нормально работать с паками.
Цитата:
Ku2zoff писал:
Кастомный рендерер? На основе чего написан?
Нет, не кастомный рендерер. 3Д небо рисуется в два прохода, хаком я удаляю полигоны с текстурой SKY, иначе 3д неба не будет видно. Также вручную рисую текстуры скайбокса через опенгл. Побочным эффектом является то, что можно использовать текстуры для неба более высокого разрешения. И компиляторы не нужны особенные. Правда и минусы есть, например, видно мир из ракурса неба, поэтому нужно располагать его особенным образом.
Декали я скопипастил из паранойи, но адаптировал код, чтобы они хотя бы работали. Но и там не без багов. Либо они рисуются нормально, но иногда пропадают. Либо не пропадают, но не дружат прозрачными текстурами. Зато теперь рисуются на брашевых энтитях, вроде дверей и разрушаемых ящиков.__________________
Никогда не поздно сделать мод под хл1
Отправлено Дядя Миша 11-07-2020 в 13:57:
Цитата:
Sigurth писал:
Зато теперь рисуются на брашевых энтитях, вроде дверей и разрушаемых ящиков.
да ты бы обычным декалькам gl-текстуру подменял и всё. К чему такие сложности.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Ku2zoff 12-07-2020 в 04:41:
Цитата:
Дядя Миша писал:
gl-текстуру подменял и всё. К чему такие сложности.
Подменой текстур можно и мониторы с зеркалами сделать, и даже ч0рта лысова. Была у меня такая идея. Да руки не дошли.
Цитата:
Sigurth писал:
хаком я удаляю полигоны с текстурой SKY
Можно поподробнее? Я пытался, так у меня всё равно небо мерцало, не удалялось до конца. А удалять на этапе компиляции - для этого нужны сорцы компиляторов, чтобы или удалить фейсы с текстурой sky, или чтобы null или что-то подобное светило от light_environment. А ДМ сорцы своих компиляторов не открыл. Ящитаю, оно и не надо особо, они и так лучшие на мой взгляд, но кое-что ещё я бы от китайца туда добавил, для использования в оригинальной халфе.
Отправлено Дядя Миша 12-07-2020 в 08:38:
Цитата:
Ku2zoff писал:
Можно поподробнее?
msurface_t->numverts = 0;
или
msurface_t->polys = NULL;
За вот эти небеса отдельно скажу. Кармак эту порнографию писал в те времена, когда никаких шейдеров уже не было, поэтому приходилось заниматься такой чертовщиной, строить какой-то гигантский виртуальный куб вокруг уровня, привязывать его к взгляду игрока, определять места его видимости и так далее. Но уже в 2004-м году сам же Кармак радостно дропнул всю эту чертовщину и нарисовал небо через нормальную кубемапу.
Плюс еще и в том, что так же и облака рисуются - шейдером, безо всякой генерации скайдомов. То есть это всё уже как минимум 16 лет не нужно, а народ в своих форках ID-tech до сих пор это дерьмо копирует, хоть бы один выкинул.
Добавлено 12-07-2020 в 11:38:
Сразу бы появилась поддержка мульти-неба.__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Sigurth 12-07-2020 в 10:38:
Цитата:
Дядя Миша писал:
да ты бы обычным декалькам gl-текстуру подменял и всё
Я до этого даже не додумался. Выпущу демку, посмотрите на кривую реализацию, опплюётесь, и я глядишь переделаю нормально 
Цитата:
Ku2zoff писал:
Можно поподробнее?
C++ Source Code:
1 | if (surfaces[i].flags & SURF_DRAWSKY) |
3 | glpoly_t *p = surfaces[i].polys; |
4 | p->numverts = -p->numverts; |
Именно минус, иначе вылетать будет. Не знаю почему.__________________
Никогда не поздно сделать мод под хл1
Отправлено Ku2zoff 12-07-2020 в 11:07:
Цитата:
Ku2zoff писал:
Я пытался, так у меня всё равно небо мерцало, не удалялось до конца.
Разобрался. Я в качестве эксперимента проводил операцию каждый кадр. А нужно только один раз при видините. Ну, собсно, теперь у меня точно будет 3d скай без кастомного рендерера. Остались мониторы и тени.
Цитата:
Sigurth писал:
опплюётесь, и я глядишь переделаю нормально
А поизвращаться со спрайтовыми декалями желание есть? Их можно анимированными сделать.
Добавлено 12-07-2020 в 18:07:
Цитата:
Sigurth писал:
Правда и минусы есть, например, видно мир из ракурса неба, поэтому нужно располагать его особенным образом.
Можно делать по-спиритовски, накладывать текстуры неба на стороны куба как обычные текстуры. Раз уж у тебя они подменяются средствами gl, то подгрузи полноцветные, а не из вадов. Тут дело ещё такое, что само небо может быть видно из мира. Вот это уже хуже. Я это в своё время никак не решил, и просто прятал небесную коробку под мир.
Отправлено Sigurth 12-07-2020 в 12:15:
Цитата:
Ku2zoff писал:
поизвращаться со спрайтовыми декалями желание есть?
Уже сил нет для экспериментов, хочется делать именно сам мод. Но идея анимированных декалей кажется очень крутой, особенно красиво смотрелась бы кровь на стенах, плавно стекающая вниз.
Цитата:
Ku2zoff писал:
само небо может быть видно из мира
Это тоже есть. Браши мира не видно, а вот энтити да. Если отрисовку студиомоделей в скайбоксе я смог предотвратить, то брашевые энтити, увы, никак. Меня это очень огорчило, когда хотел сделать брашевые облака с SCROLL текстурой. Поэтому я руководствуюсь правилом располагать только студиомодели в скайбоксе, а сам скайбокс располагать выше мира. А если спрятать небо под миром, то, глядя наверх, можно будет увидеть лестницы, стекла, решетки и прочие брашевые энтити из мира.__________________
Никогда не поздно сделать мод под хл1
Отправлено Ku2zoff 12-07-2020 в 15:29:
Цитата:
Sigurth писал:
красиво смотрелась бы кровь на стенах, плавно стекающая вниз.
Ну, по крайней мере, можно сделать кровавые лужи на полу. Ксер вон в старом хлфх делал. Я вот осилю обрезку спрайтовых декалек по краю браша, и добавлю туда и кровь, и пятна от взрывов, и всё остальное. Декалями из вадов останутся только те, которые ставит маппер.
Цитата:
Sigurth писал:
Уже сил нет для экспериментов, хочется делать именно сам мод.
А что экспериментировать? Я почти дописал код. Декали у меня уже даже через чейнджлевел ходят. Могу поделиться, может у тебя получится сделать обрезку, чтоб они не висели в воздухе на краях брашей.
Добавлено 12-07-2020 в 22:24:
Цитата:
Sigurth писал:
Если отрисовку студиомоделей в скайбоксе я смог предотвратить, то брашевые энтити, увы, никак.
Не пробовал их фильтровать? Для небесных энтить по-любому нужен какой-то хак, чтобы они не выпадали из пвс. А мировые энтити тогда можно отфильтровать по отсутствию этого хака. И не рисовать их в проходе неба.
Добавлено 12-07-2020 в 22:29:
Цитата:
Sigurth писал:
Меня это очень огорчило, когда хотел сделать брашевые облака с SCROLL текстурой.
Именно поэтому не надо использовать в небесной коробке текстуру SKY, а использовать обычную. Глянь карты weathdemo (вроде бы) и skydemo из последних Дядьмишиных спиритов. Я пробовал накладывать детальную текстуру поверх белой - получалось неплохо. Нужно только поиграться со светом, чтобы все углы были равномерно освещены.
Отправлено Дядя Миша 12-07-2020 в 17:14:
Цитата:
Ku2zoff писал:
Я вот осилю обрезку спрайтовых декалек
дык в чём же дело?__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Цитата:
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Отправлено Sigurth 13-07-2020 в 10:37:
Цитата:
Ku2zoff писал:
Могу поделиться
Ну, как говорится, кидай код, а там разберёмся 
Цитата:
Ku2zoff писал:
Не пробовал их фильтровать?
Я их и так фильтрую. У всех небесных ентить у меня стоит специальных renderfx. Но есть одна загвоздка. Если CStudioModelRenderer::StudioDrawModel вызывается каждый проход, и я могу спокойно сделать так:
C++ Source Code:
1 | if ( (m_pCurrentEntity->curstate.renderfx != 70 && gViewSkyboxPass) || |
2 | (m_pCurrentEntity->curstate.renderfx == 70 && !gViewSkyboxPass) ) |
тем самым не рисовать небесные энтити во время отрисовки мира и не рисовать мировые энтити во время отрисовки неба. То Брашевые ентити я понятия не имею где фильтровать. Есть такая функция HUD_AddEntity, которая как раз и используется, чтобы не рисовать определенного игрока в спектатор режиме, но она вызывается всего ОДИН раз за кадр, а не каждый проход. Что делать, не знаю. Может вы сможете помочь.
Цитата:
Ku2zoff писал:
не надо использовать в небесной коробке текстуру SKY, а использовать обычную
Это хорошее решение проблемы, если бы небо было несмещаемым, как в спирите. А так получится, что текстуры неба у меня тоже будут смещаться, и в один момент я уйду на край уровня, а там все будет выглядеть некрасиво.__________________
Никогда не поздно сделать мод под хл1