Всем привет. Потребовались для моего градостроя дороги, которые можно было бы удобным образом по всякому пересекать и под разными углами строить и чтобы не было это большой проблемой. В целом, все сделано было успешно, но остался артефакт (после гуглежа и обсуждения с нейронкой как я понимаю, стандартный)возникающий на перекрестках и в целом на узлах, где дороги пересекаются (на дорогу накладывается PBR материал - тайлящиеся текстуры. Я пытался сделать сверху "заплатки" и как то замаскировать это непотребство, но все стало еще хуже - наиболее отчетливо это видно если переключить отображение в режим UV. Есть эксперты по геймдеву? Что с этим делать, как побеждать?



Визуально в обычном режиме это конечно выглядит ужасно... Тем более непонятно, что дальше делать с разметкой перекрестка?
Ты просто не должен расстраивать перекресток как пересечение двух дорог. У тебя должно быть три дороги. Одна идет ровно вперед, а две остальные доходят ровно до нее.
-|-
Tesmio
> Тем более непонятно, что дальше делать с разметкой перекрестка?
Нет там никакой разметки посередине.

Ren
оно будет сливаться вот таким вот образом все равно, даже если будет примыкать только торцами. Это же sdf. Кроме того, это самый простой пример, а как быть на перекрестке 6 дорог звездочкой например?
Tesmio
> оно будет сливаться вот таким вот образом все равно, даже если будет примыкать только торцами.
Это уже другой вопрос, как читерить для максимального качества. минимальный разрыв оставит щель, но решит проблему артефактов.
Tesmio
> а как быть на перекрестке 6 дорог звездочкой например?
вырезать и рисовать столько участков, сколько потребуется. Универсального решения я не видел, точнее универсальное решение через нудную алгоритму рисования дорог через вектор и ширину.
Tesmio
отдельный тайл для перекрестка, не?
nes, в каком смысле отдельный тайлинг для перекрестка? В поле расстояний вообще нет такого понятия как "перекресток". В этом то все и дело. Я могу только косвенно детектировать пересечения задающих сплайнов дороги и шлепнуть туда заплатку. Но это же костыль...
У перекрестка обычно STOP линия всегда есть. Вот под ней и прячешь шов.
А вообще тут прально говрят - делаешь модель перекрёстка крестом, а не квадратом. Т.е. твоя задача как можно дальше друг от друга разнести швы, чтобы игрок их не увидел одновременно. Ну и под стоп линии попрятать по возможности.
Tesmio
Если бы делал тайлами проблем бы не было, а так сам себе злой буратин, тогда остается вариант предложенный Реном.
По-хорошему, перекресток это должен быть отдельный объект со своими настройками: переходы, приоритет, регулирование, направления движения... А просто залить текстурой это упрощение уровня гиперкэжа.
Во еретик, он дорогу укладывает вместе с разметкой о_О отдельно клади асфальт и отдельно клади разметку. Асфальт укладывай плейном, а разметку наносить можешь хоть спрайтом (лучше декалью)
Приподними одну из дорог над другой.
Я так понимаю, артефакты потому что две фасетки попадают в одно место, рисуется по сути случайная из них. Поднимешь одну из них - создашь приоритет.
Большое спасибо за советы конечно, но они мимо :)
Shiv, Zab, тут нету понятия "дорога", "перекресток" и так далее с точки зрения геометрии. С точки зрения логики вся карта это одна большая дорога, которая отрисовывается только там, где проложены направляющие сплайны и в области вокруг них.
Zombrine, разметка отдельно, но через сплаттинг, одним слоем
Плавный переход это блендинг