Тут в ксашмоде такая штука, что trigger_hurt с отрицательным уроном лечит игрока лишь до ста процентов, а func_door с отрицательным уроном - лечит до бесконечности. Также такая штука, что сигнал от кнопки игрока через keycatcher и сигнал от триггер мультипла отличаются и например, фанк_пуш реагирует на них по разному. Такие мелочи сильно влияют на логику и могут вовсе сломать её, если их не знать.
>> Ну и в качестве примитивов для коллизии я планирую по прежнему использовать брашы.
т.е. об уровнях модельками можно позабыть?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Дядя Миша
Но ведь к движку ведь будет и ксашмод, нет? Или мод нужно будет самому писать? А я то не кодер. В этом случае мне проще остаться на старом ксаше, для которого есть мод. Голый двиг то мне зачем? Смысла нет.
Оказывается народ из патчей сооружает целые замкнутые конструкции, расставляя их особым образом. Я-то привык полагать, что вот сделали патч, вогнули - получилась арка внутрь. А наружу, соответственно всё заполнено солидом. Так вот нет, они снаружи лепят еще один патч, который образует наружную часть этой арки. Ну хорошо, при моем подходе к коллоизиации, мне достаточно несложно учесть такие групповые конструкции и построить для них солидные структуры. Потому что когда строишь без учета этих групп, они друг-друга перекрывают и получается монолитная стенка вместо арки.
Просто по группам сортировка была во первых изначально неверная, это я исправил, а во вторых, она больше для устранения краков. Если из таких групп генерить коллижен-брашы, там слишком много солидного строительного материала, при построении дерева. Ладно бы эти патчи все торчали наружу уровня, но так далеко не всегда бывает. Поэтому я остановился вот на каком варианте. Строю группы (которые касаются друг-друга контрольными точками), дальше сортирую список по объему каждого патча и проверяю, какие еще патчи попадают в этот объем и одновременно принадлежат этой же группе (т.е. гарантированно соприкасаются друг с другом), группы при этом получаются довольно мелкими (3-5 патчей), но зато результаты построения дерева из них всегда правильные. Так, к примеру удобно делать эти обналичники из трёх патчей (внутри, снаружи и фронтальная поверхность). А если бы я каждый из этих трёх патчей превратил в браш отдельно, то они бы просто превратились сплошной солид, вместо арки. Причём это не везде происходит и зависит от стиля маппера. В ку3 к примеру такие арки никто не делал, и там проблемы не было.
Добавлено 25-06-2020 в 14:56:
Собсно, весь этот огород из-за того, что патчи двухмерны по своей природе и кутри для них соответственно строит двухмерную коллизию, а дизайнеры пытаются её как-то запечатать такими же патчами сверху и снизу.
И при генерации брашей надо учитывать все три патча как единую конструкцию. Необязательно их конечно три, может быть и больше и меньше.
Добавлено 25-06-2020 в 15:05:
Приложил карту для наглядности. фанк_группы - это вот как раз результат работы автоматической группировки. Из такой группы строится маленькое BSP-дерево, которое уже создаёт коллоизационные брашы для патча.
Но там несколько режимов работы, не всегда оптимально использовать дерево.
Вложение: collision.7z (7.9 кб)
Этот файл был скачан 61 раз.