I.developer

На Пикабу
поставил 1 плюс и 0 минусов
100 рейтинг 0 подписчиков 0 подписок 2 поста 0 в горячем

Space Miner: Генерация блоков

Перво-наперво, я решил сделать генерацию руды и других блоков, для этого я написал файл с хранимыми типами блоков(реализовывал с помощью enum), а также написал скрипт Block, который включал в себя поля: тип блока, булевское значение, указывающее на возможность уничтожения блока, здоровье блока, а также уровень бура, который нужен для уничтожения, к тому же я написал там пару методов: получение урона, уничтожение блока. Также предварительно  подготовил префабы этих блоков. Далее уже начал реализовывать класс BlockSpawner - здесь особо ничего сложного во время написания кода я не обнаружил, просто через Instansiate<T>() создавал эти блоки и помещал их на разные уровни глубины. Также, чтобы за раз не генерировать слишком много уровней, решил создать что-то наподобие процедурной генерации, и поэтому после того, как буровая машина спускается всё ниже, то уровни генерируются автоматически.


Здесь можно увидеть эти самые блоки и источник света (решил еще реализовать "туман войны"). Недавно наткнулся на такую штуку, как карту нормалей, и вот сейчас не знаю стоит ли добавлять ее для каждого блока, просто добавит ли это "сочности" для картинки или нет?

Space Miner: Генерация блоков Разработка, Gamedev, Программирование, Игры, Unity

Space Miner: от идеи до реализации

Всем привет! Решил вести блог о том, как я создаю собственную игру и в будущем продвигаю и сопровождаю. Игра будет сделана на космическую тематику в 2D, где вы будете играть за буровую машину, которое может летать, ездить, бурить блоки. Находясь на планете на буровую машину будет влиять гравитация, поэтому при падении с высоты вы будете получать урон. На блоки гравитация же оказывать влияния не будет, однако в игре будет присутствовать песок, который падает при отсутствии блока под ним. Основная механика игры — бурение руды (каждая руда имеет собственную ценность) и да механика не новая, однако всё не так просто, нужно будет постоянно следить за уровнем топлива, которое будет тратиться при передвижении и бурении. Также нужно следить за показателем здоровья, показателями давления и температуры. Если буровая машина находиться на уровнях, где уровень давления или температуры является критическим, то начинается уменьшаться здоровье. В игре будет реализован магазин, где можно будет продать руду, улучшить буровую машину, пополнить топливо и здоровье, а также купить вспомогательные предметы (канистра, динамит, ящик для починки, импульсный заряд - чтобы уничтожать врагов). Также на разных планетах будут добавляться блоки, которые несут за собой дополнительную сложности при прохождении. Также при разрушении блоков с небольшим шансом генерируется враг. Основная цель - на выбранной вами планете как можно быстрее построить нужное сооружение. А еще хотелось бы добавить минимальный сюжет, где человечеству приходится искать ресурсы в космосе и поэтому они отправляют вас на другие планеты. Вам нужно осваивать Луну, планеты(Марс, Венера), выстраивать сооружения, с помощью которых можно добираться до других планет, а на Венере уставить сооружение, которое будет выпускать сферы Дайсона.
Мне хотелось бы, чтобы вы оценили идею, предложили, что можно изменить или добавить.

Отличная работа, все прочитано!