AYglazk0v / cub3d

project 21school cub3D

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

📦 cub3D

💡 О проекте:

_ Этот проект вдохновлен всемирно известной игрой Wolfenstein 3D, которая была первой в истории FPS. Он позволит вам изучить метод ray-casting. Вашей целью будет создать динамический вид внутри лабиринта, в котором вам нужно будет найти дорогу.._

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

Более подробно о проекте и нюансах можно посмотреть в subject.

🛠 Тестирование и использование:

# Клонируйте проект и получите доступ к папке
git clone git@github.com:AYglazk0v/cub3d.git && cd cub3d/

# Перед выполнением сборки проекта необходимо проверить состояние переменной
# FLAGS в Makefile, если проект будет тестироваться под Linux, то необходимо оставить
# версию переменной FLAGS с флагом -DLINUX, иначе эту закомментировать и 
# раскомментировать версию без флага. 

# Собрать проект под MacOS:
make

# Cобрать проект под Linux:
make linux

# Для запуска программы необходимо в аргументы подать одну из карт, расположенных 
# в каталоге maps, либо создать свою в соответсвии с правилами указанными в subject.
# Пример команды:
./cub3d maps/test.cub

# Очистить выходные файлы можно с помощью
make fclean

Управление:

KEY Action
ESC Выйти из игры
SPACE BAR Открыть/закрыть дверь
A Идти налево
D Идти вправо
W Идти вперед
S Идти назад
Повернуть камеру направо
Повернуть камеру налево

УГО для построения карты:

Объект Значение
1 Стена
0 Свободное пространство
S Спрайт
N/E/W/S Персонаж и его направление

🎬 Демонстрация:

[Изображение дергается только на анимации (из за ограниченного количества кадров в секунду)] cub3d

P.S.:

Этот проект является групповым, репозиторий в котором велась работа над проектом: link.

Благодарю напарника за слаженную работу над проектом!

About

project 21school cub3D


Languages

Language:C 78.7%Language:Objective-C 11.0%Language:Roff 8.0%Language:Makefile 2.1%Language:Perl 0.2%