Freescape

Логотип Freescape

Freescape — один из первых 3D игровых движков, использовавшийся при создании таких игр, как Driller.

История

Разработанный на дому сотрудниками Incentive Software, Freescape считается одним из первых фирменных 3D-движков для использования в компьютерных играх, но он не использовался в коммерческих целях кем-либо, кроме самой Incentive[1]. Как сообщил дизайнер Incentive Йен Эндрю, проект был первоначально настолько амбициозным, что компания испытывала сложности при найме опытных программистов для проекта, поскольку многие полагали, что такая идея не может быть реализована.

Пол Грегори (художник по графике команды Incentive) упоминал[2], что Freescape был разработан на Amstrad CPC, так как это была наиболее подходящая система и имела достаточную мощность для запуска 3D-среды. Благодаря успеху движка, позднее он был портирован на все ведущие системы той эпохи: ZX Spectrum, IBM PC, Commodore 64, Commodore Amiga и Atari ST.

В 1991 г. Domark выпустила 3D Construction Kit, который позволял создавать игры на платформе Freescape без каких-либо специальных знаний и программирования. Затем последовал 3D Construction Kit II.

Технологии

Геометрия

Движок Freescape позволил создавать полное трёхмерное окружение, которое состояло из пола и множества примитивных объектов, которые могли позволить память и скорость процессора. Этими примитивами были прямоугольный параллелепипед, четырёхсторонняя усечённая пирамида), треугольник, прямоугольник, четырёхугольник, пятиугольник, шестиугольник и отрезок. Ещё один примитив, «датчик», использовался в игровых целях для определения положения камеры в игровом мире.

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

  • Каждый регион был ограничен размером 8192 × 4096 × 8192 единиц. Эти единицы были произвольными, но каждый регион всегда соответствовал размерам.
  • Движок не позволял дробных движений. На 16-битных машинах каждое движение — камеры или объекта — должно было состоять из целых единиц. На 8-битных машинах углы, под которыми можно было рассматривать мир, вдобавок были ограничены шагом в 5 градусов.
  • Оси X и Z делились только на 128 дискретных позиций, а ось Y делилась только на 64 дискретных позиций. Как следствие, объекты могли располагаться в интервале 64 единицы, например 0,64,128 или 128,64,32.
  • Объекты не могли перекрываться.
  • Все объекты обладали «ограничивающим кубом», который также не мог перекрываться.

Интерактивность

Для введения интерактивных элементов игры использовали язык Freescape Command Language (FCL), один из первых скриптовых языков, предназначенных специально для игр. Скрипты могли быть запущены либо для всего мира, либо в определённой зоне, либо могли быть присоединены к конкретному объекту и выполняться в том случае, если игрок выстрелит в объект, активирует или коснётся его. Версии Freescape для Amiga, Atari ST и PC также поддерживали «аниматоры» — программы на FCL, использовавшие некоторые дополнительные инструкции для создания на экране анимаций.

Игры и приложения, использующие движок Freescape

  • Driller (1987)
  • Dark Side (1988)
  • Total Eclipse (1988)
  • Castle Master (1990)
  • Castle Master II: The Crypt (1990)
  • Total Eclipse II: The Sphinx Jinx (1991)
  • 3D Construction Kit (1991)
  • 3D Construction Kit II (1992)

Примечания

  1. Exploring the Freescape  (неопр.). IGN (22 октября 2008). Дата обращения: 4 июля 2009. Архивировано из оригинала 31 августа 2012 года.
  2. Retro Gamer 22, Incentive article, page 26

Ссылки

  • Бесплатная версия Driller для PC
  • Современные реализации Freescape на OpenGL
  • IGN статья о Freescape играх
  • Полный список игр на Freescape
Перейти к шаблону «Игровые движки»
Графические
Свободные
GLScene
Horde3D[англ.]
Irrlicht
OGRE
OpenSceneGraph
Проприетарные
Outerra[англ.]
Физические
Свободные
Box2D
Bullet
Chipmunk[англ.]
Newton
ODE
Tokamak
Проприетарные
DMM
Havok Physics
PhysX
Общего назначения
2D
Свободные
Allegro
ClanLib
Cocos2d
Construct
Felgo[англ.]
idTech 1
Проприетарные
Construct 2
GameMaker: Studio
Retro Engine
Stencyl
Vicious Engine
3D
Свободные
Away3D
BGE
Bork3D[англ.]
Cafu[англ.]
Crystal Space
Defold
Delta3D
dim3[англ.]
Genesis3D[англ.]
Godot
id Tech 2, 3, 4
jMonkeyEngine
Lumberyard
Moai
Nebula Device
Panda3D
Pygame
QFusion
Проприетарные
Chrome Engine
CryEngine
Dagor Engine
Freescape
Gamebryo
GoldSrc
Havok Vision
id Tech 5, 6, 7
LithTech
Marmalade
RAGE
RenderWare
Source
Source 2
Unigine
Unity
Unreal Engine (список продуктов)
Специализированные
2D
Свободные
LÖVE
Ren'Py
Stratagus
VASSAL
Wintermute
Проприетарные
M.U.G.E.N
NScripter
RPG Maker
3D
Свободные
DarkPlaces
OpenMW
OpenSim
Spring Engine
WorldForge[англ.]
Проприетарные
HeroEngine[англ.]
Другие