Difference between revisions of "Game Engine"

From Free Pascal wiki
(Ported Games moved to Games.)
(Changed definition and moved game frameworks to the "Game framework" page)
Line 3: Line 3:
  
 
{{Warning|This page needs to be fixed and actualized:
 
{{Warning|This page needs to be fixed and actualized:
 
* It mix game engines with libraries (they're not the same).  Create a [[Game Framework]] page?
 
 
* Games should be in the new [[Games]] page.
 
* Games should be in the new [[Games]] page.
 
}}
 
}}
  
== Overview ==
+
A '''game engine'' is a software development environment designed to create games. It distinguish from [[Game framework|game libraries]] in that:
A game engine is a library that simplifies creation of games. It could include any and all functionality from the following:
+
* Implements the ''game loop'', networking communications and resource managers.
* just creating easy-to-use wrappers over system interfaces such as graphics API
+
* Implements complex data structures, such as maps, particle systems and actors.
* user control inputs and audio (SDL, ZenGL)
+
* Implements tools as editors and data managers.
* adding additional interfaces to create and control the game content environment (as e.g. done by Castle Game Engine)
+
All these subsystems would affect in gameplay aspects as movement, scoring or even genre. You can read this [http://en.wikipedia.org/wiki/Game_engine Wikipedia page] for more information.
 
 
[http://en.wikipedia.org/wiki/Game_engine You can read more here]
 
  
 
== Game Engines ==
 
== Game Engines ==
Line 24: Line 20:
 
! Usage
 
! Usage
 
! Notes
 
! Notes
|-
 
| [[FPC_and_SDL|SDL]]
 
| [http://www.libsdl.org www.libsdl.org]
 
| Bindings
 
|
 
|-
 
| [[SDL2]]
 
| [http://sourceforge.net/projects/sdl2fpc/?source=directory sdl-2-for-free-pascal-compiler]
 
| FPC
 
|
 
|-
 
| SMFL
 
| [http://www.sfml-dev.org/index-fr.php http://www.sfml-dev.org/index-fr.php]
 
| [https://github.com/CWBudde/PasSFML Bindings]
 
|
 
|-
 
| [[GLScene]]
 
| [http://glscene.sourceforge.net/ sourceforge.net]
 
| FPC/Delphi
 
| It's not really a game engine, but rather 3D rendering engine.
 
 
|-
 
|-
 
| [[Castle Game Engine]]  
 
| [[Castle Game Engine]]  
 
| [https://castle-engine.sourceforge.io/ castle-engine.sourceforge.io]  
 
| [https://castle-engine.sourceforge.io/ castle-engine.sourceforge.io]  
 
| FPC
 
| FPC
|
 
|-
 
| [[ZenGL]]
 
| [http://www.zengl.org/ www.zengl.org]
 
| FPC/Delphi
 
 
|
 
|
 
|-
 
|-
Line 94: Line 65:
 
| FPC/Delphi
 
| FPC/Delphi
 
|  
 
|  
|-
 
| [[FPC_and_Allegro|Allegro]]
 
| [http://alleg.sourceforge.net/ sourceforge.net]
 
| [http://allegro-pas.sourceforge.net/ Bindings Allegro-pas]
 
|
 
|-
 
| Phoenix
 
| [https://code.google.com/p/phoenixlib/ code.google.com]
 
| FPC/Delphi
 
|
 
 
|-
 
|-
 
| Brtech1
 
| Brtech1
Line 129: Line 90:
 
| Delphi/FPC/C#/C++
 
| Delphi/FPC/C#/C++
 
| Powerful free open source cross-platform game engine.
 
| Powerful free open source cross-platform game engine.
 +
|}
 +
 +
==Physics Engines==
 +
These engines simulate the physical world (collisions, trajectories etc). Not really game engines per se, but could certainly be used in games.
 +
{| class="wikitable sortable" width="100%"
 +
! Name
 +
! Site
 +
! Usage
 +
! Notes
 +
|-
 +
| TundAx
 +
| [https://github.com/JordiCorbilla/thundax-delphi-physics-engine github.com]
 +
| FPC/Delphi
 +
|
 +
|-
 +
| Newton
 +
| [http://www.saschawillems.de/ www.saschawillems.de]
 +
| [http://www.saschawillems.de/?page_id=76 Bindings]
 +
|
 +
|-
 +
| Box2D-Delphi
 +
| [https://code.google.com/p/box2d-delphi/ code.google.com]
 +
| FPC/Delphi
 +
| This is Delphi implementation of [http://code.google.com/p/box2d/ Box2d] library
 +
|-
 +
| Kraft
 +
| [https://github.com/BeRo1985/kraft github.com]
 +
| FPC/Delphi
 +
| Pascal native physics engine by Benjamin Rosseaux.
 +
|-
 +
| PAPPE - PAscal Powerful Physics Engine
 +
| [https://sourceforge.net/projects/pappe/ sourceforge.net]
 +
| FPC/Delphi
 +
| Pascal native physics engine by Benjamin Rosseaux. The engine was deprecated by Kraft
 
|}
 
|}
  
 
==Games==
 
==Games==
 +
''Main article: [[Games]]''
 +
 
Games written with Free Pascal. Currently active projects commercial, closed or open source. Some more [[Projects_using_Lazarus#Games|here]].
 
Games written with Free Pascal. Currently active projects commercial, closed or open source. Some more [[Projects_using_Lazarus#Games|here]].
  
Line 209: Line 206:
 
| {{Yes}}
 
| {{Yes}}
 
| Open Source Demo Game for SO Engine
 
| Open Source Demo Game for SO Engine
|}
 
 
==Physics Engines==
 
These engines simulate the physical world (collisions, trajectories etc). Not really game engines per se, but could certainly be used in games.
 
{| class="wikitable sortable" width="100%"
 
! Name
 
! Site
 
! Usage
 
! Notes
 
|-
 
| TundAx
 
| [https://github.com/JordiCorbilla/thundax-delphi-physics-engine github.com]
 
| FPC/Delphi
 
|
 
|-
 
| Newton
 
| [http://www.saschawillems.de/ www.saschawillems.de]
 
| [http://www.saschawillems.de/?page_id=76 Bindings]
 
|
 
|-
 
| Box2D-Delphi
 
| [https://code.google.com/p/box2d-delphi/ code.google.com]
 
| FPC/Delphi
 
| This is Delphi implementation of [http://code.google.com/p/box2d/ Box2d] library
 
|-
 
| Kraft
 
| [https://github.com/BeRo1985/kraft github.com]
 
| FPC/Delphi
 
| Pascal native physics engine by Benjamin Rosseaux.
 
|-
 
| PAPPE - PAscal Powerful Physics Engine
 
| [https://sourceforge.net/projects/pappe/ sourceforge.net]
 
| FPC/Delphi
 
| Pascal native physics engine by Benjamin Rosseaux. The engine was deprecated by Kraft
 
 
|}
 
|}

Revision as of 13:39, 22 March 2018

English (en) français (fr)


Warning-icon.png

Warning: This page needs to be fixed and actualized:

  • Games should be in the new Games page.

A 'game engine is a software development environment designed to create games. It distinguish from game libraries in that:

  • Implements the game loop, networking communications and resource managers.
  • Implements complex data structures, such as maps, particle systems and actors.
  • Implements tools as editors and data managers.

All these subsystems would affect in gameplay aspects as movement, scoring or even genre. You can read this Wikipedia page for more information.

Game Engines

Here's a list of game engines that are Pascal/Delphi based or have Pascal binding libraries.

Name Site Usage Notes
Castle Game Engine castle-engine.sourceforge.io FPC
Quad-Engine quad-engine.com Delphi/FPC/C#/C++
TERRA Game Engine github.com/Relfos/TERRA-Engine Delphi/FPC/Oxygene 2D & 3D, all platforms supported
nxPascal github.com FPC/Delphi
g2mp github.com FPC Ideologically replaced Dan Jet X, multiplatform, editor- and code-based development
Andorra 2D sourceforge.net Delphi
CAST II Game Engine http://www.casteng.com/ Delphi Alive? last update 2011
Delphi X www.micrel.cz/Dx Delphi
Afterwarp www.afterwarp.net FPC/Delphi
Brtech1 PascalGameDevelopment.com FPC Not really available as an engine or library. Many videos can be found on youtube though.
GameMaker: Studio www.yoyogames.com N/A Yes, it's not really a game engine library. But it's a game engine and studio written in Delphi. Special Pascal proud.
ZGameEditor www.zgameeditor.org FPC/Delphi
SO Engine github.com Delphi/FMX Small Crossplatform (Win, Android, iOs) indy engine with formatters, animations, intersections and etc.
DGLE dglengine.org Delphi/FPC/C#/C++ Powerful free open source cross-platform game engine.

Physics Engines

These engines simulate the physical world (collisions, trajectories etc). Not really game engines per se, but could certainly be used in games.

Name Site Usage Notes
TundAx github.com FPC/Delphi
Newton www.saschawillems.de Bindings
Box2D-Delphi code.google.com FPC/Delphi This is Delphi implementation of Box2d library
Kraft github.com FPC/Delphi Pascal native physics engine by Benjamin Rosseaux.
PAPPE - PAscal Powerful Physics Engine sourceforge.net FPC/Delphi Pascal native physics engine by Benjamin Rosseaux. The engine was deprecated by Kraft

Games

Main article: Games

Games written with Free Pascal. Currently active projects commercial, closed or open source. Some more here.

Name Site Open Source Notes
Darkest Before the Dawn http://castle-engine.sourceforge.net/darkest_before_dawn.php Google Play (Android version) Yes Using Castle Game Engine
Castle http://castle-engine.sourceforge.net/castle.php Yes Using Castle Game Engine
Diablo Roguelike doom.chaosforge.org Sourceforge.net Yes
Doom Roguelike doom.chaosforge.org No
Escape from the Universe https://play.google.com/store/apps/details?id=com.catastrophe.games.escape.universe.space.shooter No Using Castle Game Engine
HedgeWars www.hedgewars.org Yes
Project "W" PascalGameDevelopment.com No
Scrabble 3D sourceforge.net Yes
UltraStar Deluxe sourceforge.net Yes
Minimon 3D http://www.minimon3d.com No
Mountains of Fire http://castle-engine.sourceforge.net/mountains_of_fire.php Yes Using Castle Game Engine
Shu sourceforge.net Yes Interesting looking RPG - in progress
Project Helena sourceforge.net Yes A game by Eugene Loza
Asteroids vs You github.com, Google Play (Android version) Yes Open Source Demo Game for SO Engine