WorldEditor на Unity. Часть 1

Тайлы карты, окруженные с разных сторон текстурами.
Тайлы карты, окруженные с разных сторон текстурами.

Привет любители стратегий и третьего Варкрафта. Ранее, я публиковал посты о ходе разработке игры ElementalsFight (убийцы Варкрафта). Сейчас я бы хотел поведать о создании редактора.

Этап 1 - Тайловый редактор

Те, кто щупал WorldEditor, помнят, что редактор позволял в пару кликов создать интересную поверхность с переходами от одной текстуры к другой.

WorldEditor на Unity. Часть 1

Чем же отличается редактор Warcraft`а от привычных нам редакторов в Unity, UnrealEngine и т.д.?
Для 3д они используют Terrain. Это один кусок поверхности, который мы можем модифицировать и рисовать на нем текстуру по принципу графического редактора (Paint).

WorldEditor на Unity. Часть 1

Да, можно было бы наложить текстуру по тайлам, как в варкрафте, но что делать с возвышенностями\низинами в дальнейшем, ведь видно, что это отдельный участок поверхности?

Поделить изначально на тайлы (куски поверхности) и накладывать текстуру уже на них. Тайлы мы создали, расположили их, базовую текстуру наложили.

WorldEditor на Unity. Часть 1

Далее, нам нужно рисовать по кускам нашу текстуру. Я решил воспользоваться масками, чтобы вырезать из текстуры нужный кусок и вставить в зависимости от типа текстуры на краях.

Как новичок, я ошибся, и изначально проверял не по углам тайлов на тип текстуры, а по каждой стороне (8 сторон)

WorldEditor на Unity. Часть 1
WorldEditor на Unity. Часть 1

Далее, нужно было сделать больше типов текстур, с которым может взаимодействовать наш тайл (4 угла - 4 возможных текстуры по бокам)

Пришлось значительно модифицировать шейдер в Amplify, чтобы добиться желаемого результата (не без костылей). Чтобы каждая последующая текстура перекрывала предыдущую и создавала свой слой.

WorldEditor на Unity. Часть 1
WorldEditor на Unity. Часть 1

С этим еще есть некоторые проблемы и есть куда улучшать, но желаемый результат получен. Редактор убийцы Варкрафта3 - в разработке :)Видео-пример работы редактора можете посмотреть ниже

Следить за разработкой можно по ссылкам ниже или помочь проекту, купив игру в стим:
ВК: Тык
Инста: Тык
Стим: Тык

28
23 комментария