October 29, 2019

Устройство игры по слоям

Немного расскажу как устроена игра по слоям (с технической стороны). На данный момент их 4.

Первый - небо. Самый простой слой, который разделён ещё на три слоя, которые в свою очередь смещается при изменении координат игрока. Каждый из мини-слоев дополняется с краю новым, если он смещён до предела. Своеобразная бесконечная карусель. В дальнейшем можно будет добавить ландшафты и тд.

Второй - фоновые блоки. Разрушаемый и дополняемый слой, является третьей стеной для игрока. Он малость затемнён, чтобы создать объёмный эффект.

Третий - основные блоки. По механике точно такой же как и предыдущий, но находится ближе к камере. На его основе строятся polygon-коллайдеры. Данный слой является основным для взаимодействий игрока тут добывается руда, строятся сооружения, по нему ходят NPC, игрок и тд.

Четвертый - декор. Сложный слой, который может выполнять множество функций. Именно на этом слое находятся деревья, двери, трава. Каждый блок тут может принимать разную форму в зависимости от рядом стоящих или разрушаться, согласно условиям; откликается на нажатия; может иметь твёрдость, цвет в зависимости от биома, светиться и много чего ещё.

Три последних слоя состоят из чанков 5x5 блоков. В чанках каждый блок состоит из меша, которые в свою очередь объединяются в один большой, размером с чанк, чтобы уменьшить количество объектов. Например, если в чанке 4 блока земли и 10 блоков камня, будет создано всего два объекта, это увеличило производительность. Но слой с декором я ещё не придумал как оптимизировать.

Скорее всего для жидкостей будет создан новый слой, т. к. логика у него будет значительно отличаться. Она будет основана на клеточной автоматизации. Сейчас как раз занимаюсь её созданием.

И в планах добавить слой с проводами, дабы не загромождать ими карту (слой будет исчезать, если не взаимодействовать с ним). В игре будет многое связано с электричеством и автоматизацией, поэтому этот слой очень важен.

------------

Telegram канал: @StoryOfOneGame