Game "Lunar lander" - это собственная реализация компьютерной аркадной игры Lunar lander. Игра создана как классическое Windows-приложение на C++ с использованием Win32 API для управления окном, обработки клавиатурного ввода и прямого вывода графики через 32-битный буфер кадров (BGRA). Вся логика реализована вручную без внешних библиотек. Целью данного проекта была демонстрация навыков программирования на C++, знания основ физики, а также умение быстро осваивать сторонний фреймворк.
В Game "Lunar lander" Вам необходимо посадить ракету на поверхность Луны. При этом Вы можете управлять ракетой: поворачивать влево-вправо ('A' - 'D' или 'VK_LEFT' - 'VK_RIGHT') и включать двигатели до максимума (удержание ЛКМ). Однако двигатели расходуют топливо, при истечении которого ракета не сможет взлететь. Чтобы получить очки и не взорваться, надо посадить ракету на одну из предложенных посадочных мест, подсвеченных разными цветами в зависимости от количества даваемых очков. Если ракета взорвется, то начнется новая сессия игры, а набранные очки сгорят. При прохождении уровня за уровнем количество топлива обновляется, а ландшафт Луны заново генерируется. В игре представлено 4 сложности игры (Easy, Medium, Hard, Demon), в зависимости от сложности игры меняется количество топлива и сложность посадочных мест. На уровне сложности Demon видна только динамически меняющаяся область лунной поверхности, в то время как остальная часть скрыта в тени.
- Генерация лунной поверхности
- 4 уровня сложности игры
- Анимация взрыва
- Накопление очков
- Откройте готовый исполняемый файл (
LunarLander.exe)
или
- Откройте
LunarLander.slnв Visual Studio 2017+ (стандарт C++17) - Выберите конфигурацию
x64→Release - Нажмите Собрать решение
- Запустите
x64/Release/LunarLander.exe
- C++
- Win32 API
- Github as version control system
