Ресурсы

the Space

Учебно-показательный проект изометрической стрелялки

the Space splash screen

The Space – это мой очень старый проект 2D космической игры с изометрической проекцией, которую я разрабатывал в 2005 году. В то время я лишь начинал изучать VC++, из-за чего в проекте мной было сделано очень много ошибок свойственных начинающему программисту. Недавно я наткнулся на диске на исходные тексты проекта и решил поделиться ими со всеми, кому они могут быть интересны. Но, конечно же, выкладывать в интернет грязные коды мне не позволила совесть. Поэтому я решил доработать их до приемлемого вида, а заодно и рассказать поэтапно что к чему и как. Таким образом, получается учебный проект, цель которого рассказать не столько о разработке игровой механики, сколько о работе с графикой на низком уровне, что позволит лучше понимать принципы работы движков, да и в целом, может оказаться полезным.

Какая игра получится в итоге

В моих планах реализовать следующие части:

  • логотип (будет использоваться видео-поток синхронизированный с аудио-потоком);
  • меню, состоящие из пунктов «Начать игру», «Опции» и «Выйти»;
  • Раздел «Опции» позволит настроить громкость звуковых эффектов и музыкального сопровождения.
  • сам игровой процесс.

Игровой процесс будет представлять из себя бесконечный полёт (если, конечно, игроку удастся бесконечно оставаться в живых :) ), во время которого нужно расстреливать всё, что движется. На пути игрока будут космические объекты, такие как: астероиды, обломки разбившихся и взорванных космических кораблей и станций. Кроме того, против игрока будут выступать вражеские корабли, которые тоже будут стрелять.

После того, как игрок потеряет все жизни, его имя будет внесено в таблицу рекордов.

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

Какие знания начинающие программисты смогут почерпнуть при изучении этого проекта

  • разработка кроссплатформенного приложения (Linux и Windows);
  • основы разработки игрового кода (игровой логики);
  • основные навыки работы с Direct Draw и OpenGL;
  • навыки работы с графическими форматами, такими как JPEG, TGA, BMP и PCX;
  • основы работы с видео-потоками формата AVI (Audio Video Interlaced) и MOV (Movie);
  • и самое главное – работа с графикой на низком уровне!

Что касается графического оформления проекта, то тут я, как бы, что смогу. Если есть желающие помочь с графикой, буду рад сотрудничеству!

Что нового?

16 января 2019
Основной код

Реализована настройка окна (Linux/Windows)

Настройка OpenGL для сервера X11 (Linux), Direct Draw (Windows)

В начало