Level Design and Tools


Привет!

Пока я думаю над концептом, решил разобраться как делать уровни. Я давно присматриваюсь к Houdini и задумал потренироваться с ним в производстве ассетов уровней для Unity. Коротко расскажу что у меня получилось.

В Houdini можно создавать Digital Assets (HDA) и потом их добавлять в Unity проект. Для движка есть плагин Houdini Engine, который может выполнять HDA в Unity. Там можно вывести разные параметры, подпихивать геометрию или кривые. Плагин не поддерживает realtime  в движке, но для создания и запекания в префабы в самый раз.

Задача сделать уровень. Уровень состоит из плиток пола. Стены и пол должны иметь коллайдеры. Добавлю еще возможность делать дырки в уровне.

Начинаем :) Первое что делаю - создать саму сетку уровня. Два параметра Width & Height.


Добавляю точки с помощью ноды Attribute Wrangle (Details mode). Потом я сделаю ответвление чтобы можно было нарисовать дырки в уровне. Пока отображаю точки.


Выделяю нужные поинты и штампую туда геометрию. Простые квадраты. Еще я им делаю развертку. Выделаю грани по бокам и у задней стенки делаю им extrude. Разворачиваю стены. В итоге получается так:


Еще добавляю ноды, чтобы подцеплять сразу нужный материал в Unity.


И вот уже можно создавать сетку с геометрией. Конечно можно сделать и в Unity своими средствами, но здесь мне кажется быстрее если нет наработок.

Теперь добавим дырок на уровень. Я решил что удобнее будет покрасить те места где нужна дыра. Другого способа я пока не нашел или не придумал, поэтому я добавил ноду paint.


Выставил в настройках у своего HDA как Editable.


Вуаля! Делаем сколько угодно дырок! Где хотим! И вроде как удобно. Чтобы включить режим нужно выбрать Enable Editable Node Tools. Для себя я еще сделал галку ShowDebugGrid. Эта функция передключает геометрию в ноде switch, поэтому я могу видеть где рисую. Хотя когда я не добавил свою сетку и начал рисовать, то плагин всё равно мне отображал окрашиваемую поверхность.

Теперь разбираюсь с коллайдерами. Стоит их тоже добавлять процедурно, настраивать их для каждого уровня было бы тяжко для меня. У плагина есть настройка: всё что в группе с название collision_geo будет считаться коллайдером. Там еще есть разные названия групп какими могут быть коллайдеры. И еще стоит планировать свой ассет, если хочешь чтобы было много простых box collider.


Собираем всё вместе. Вжух! И вот как это все выглядит в Unity.


Вывод: думаю что Houdini очень полезный и удобный инструмент, если нужна оптимизация в построении уровня. Но это совсем не быстро и стоит принимать взвешенное решение при  его использовании на простых прототипах. Но всё таки это чертовски интересно для меня!

Title photo by Markus Spiske from unsplash.com

Get Clean My Room

Leave a comment

Log in with itch.io to leave a comment.