The Smash Balls
Invasion
The Smash Balls
Invasion

Реализация

В самом начале разработки у меня была идея создать продолжение игры "Arkanoid" - мы даже сделали "интро", для которого я долго сочинял наполненный пафосом и безграмотностью "сценарий":

В качестве исторической ретроспективы можно скачать эту "предысторию":

"Arkanoid 3" Intro
"Arkanoid 3" Intro

Скачиваний: 266

"Вступление" для "Arkanoid 3".

"'Arkanoid 3' Intro" в сборнике всех наших игр:

"SBIgame" Bundle
"SBIgame" Bundle

Скачиваний: 1491

Игры запускаются на современных версиях Windows без каких-либо дополнительных действий.

В итоге от этой идеи отказались - EDV хотел что-то оригинальное, без какой-либо привязки к другим играм. Также сразу было принято решение делать игру для 2-х игроков и расположить "ракетки" по бокам игрового поля (мы посчитали, что так для совместной игры будет нагляднее). Прототип игры создавался для разрешения экрана 320x200 точек:

Игровые элементы прототипа:

"ракетка"
"ракетка"
"кирпичик"
"кирпичик"
шарик
шарик
враг "Микки Маус"
враг "Микки Маус"

Эту версию игры также можно скачать:

The Smash Balls: Invasion (Prototype)
The Smash Balls: Invasion (Prototype)

Скачиваний: 256

Первый прототип игры.

"The Smash Balls: Invasion (Prototype)" в сборнике всех наших игр:

"SBIgame" Bundle
"SBIgame" Bundle

Скачиваний: 1491

Игры запускаются на современных версиях Windows без каких-либо дополнительных действий.

К разработке мы подходили как в "больших" играх - например, расписывали алгоритмы:

И даже pисовали эскизы (многое в игру не вошло):

Сама игра была написана на языке Assembler. Для создания сервисных программ использовались разные языки: например, редактор уровней я написал на Delphi, а компилятор ресурсов в общий файл - на Pascal. Графические спрайты я моделировал в Rhino 3D, а потом обрабатывал в Adobe Photoshop. Перед сборкой в файл ресурсов игры спрайты преобразовывались в формат PCX, а затем приводились к "единой палитре цветов" - для этого EDV придумал целую "теорию палитр", а сам "преобразователь" написал наш друг SaNTa на C++. Для сетевого режима игры использовался протокол IPX - как наиболее простой и универсальный на то время.

Несколько дополнительных фактов о реализации:

  • Модель графического пространства - псевдо-3D (многослойная);
  • Тип анимации - запоминание фона во временный буфер;
  • Для устранения "flicker-эффекта" графический вывод буферизируется;
  • Палитра - 256 цветов (30 цветов по 8 уровней яркости в каждом, 16 уровней яркости по белому);
  • Для быстрой перерисовки элементов изображения применяется так называемый "метод грязных квадратов";
  • В программе используется вертикальная синхронизация (V-Sync);
  • Игра работает в "защищенном" режиме процессора, и использует только основную память;
  • В игре используется специальный алгоритм сглаживания экранного шрифта (системный шрифт MS DOS, размер 8x8 точек);
  • Взрыв "ракетки" - это спрайт взрыва гранаты из "Half-Life";
  • Для визуализации "теории палитр" SaNTa написал программу их просмотра в трехмерном виде;
  • Алгоритм синхронизации в сетевой игре был темой дипломного проекта EDV.

Все сохранившиеся материалы разработки игры:

"SBIgame" Extras
"SBIgame" Extras

Скачиваний: 28

Исходные тексты программ (игра, прототип, дополнительные инструменты), диплом EDV, письмо на конкурс "Наша игра 2000", графические спрайты, 3D-модели некоторых игровых объектов.
© 2002-2024 Dmitry Zubtsov [Dimich]
The Smash Balls
СегодняМесяцВсего
Посетителей000
Посещений000
Invasion