апрель 26, 2021

3D Procedurally Generated Rooms Using three.js

Добавить в
Мои игры
Торрент
Скачать

Добро пожаловать в мой выпускной проект, который я создал для своего курса по разработке игр! Процедурная генерация и 3D-графика — две из моих любимых областей, когда дело доходит до программирования, и мне было любопытно узнать, будет ли генератор уровней на основе сетки хорошо транслироваться в графический веб-API.

Three.js был выбран благодаря мощному движку и простому в реализации языку. Это действительно отличный язык, и год разработки, который потребовался для завершения проекта, был настоящей радостью, я действительно весело провел время, создавая его.

Пожалуйста, не стесняйтесь комментировать, если у вас есть какие-либо мысли или если вы столкнулись с какими-либо ошибками или проблемами с производительностью. Спасибо за игру! 😊  

Перемещение: WASD

Вид: МЫШЬ

Пауза: ESC

Изменить/отменить камеру: 1, 2

Сделать снимок экрана: ПРОБЕЛ

Создать новую комнату: ENTER

Включить основной источник света: L

Показать сгенерированную информацию о комнате: I

Переключить сетку: G

Как это работает:

Всем комнатам назначается цветовая палитра на основе предопределенных цветовых гармоний. Программа проверяет размер комнаты и процедурно выбирает объекты для появления вдоль каждой стены на основе генератора случайных чисел, при условии, что в сетке достаточно места. После создания объектов поверх них помещаются дочерние объекты, такие как украшения, подушки и мелкие предметы.

Объекты стены проверяются на столкновение и появляются только в tсцена, если они не сталкиваются с другими объектами. Некоторым объектам также можно назначить освещение.

Есть много других подходов, которые можно использовать при процедурном создании комнат, но мне нужно было простое решение, чтобы его можно было запустить в браузере, поэтому я выбрал систему на основе сетки. Я большой поклонник инди-платформера Дерека Ю, Spelunky, и его книга с одноименным названием описывает некоторые приемы, используемые здесь.

Я загружу исходный код и отчет о своей диссертации, когда закончу курс, поэтому я опубликую ссылки здесь, когда закончу!

Как скачать 3D Procedurally Generated Rooms Using three.js через торрент

Всего несколько простых шагов:

  • Устанавливаем программу μTorrent, через которую мы будем скачивать торренты
  • Выбираем и скачиваем подходящий торрент-файл репака 3D Procedurally Generated Rooms Using three.js
  • Двойным кликом открываем скаченный файл, программа μTorrent запустится автоматически и предложит выбрать место для сохранения дистрибутива.
  • После того как репак скачается, запускайте его. Начнется установка и... это все, приятной игры!