Entropia Engine++ is a C++ 2D game engine designed for an easy cross-platform game development.
-
Official support for Linux, Windows, Mac OS X, iOS and Android.
-
Exports to HTML5 using emscripten with some limitations.
-
It should work on FreeBSD, Solaris and Haiku.
-
OpenGL 2 ( fixed-pipeline ), OpenGL 3 ( programmable-pipeline ), OpenGL ES 2, OpenGL ES 1, and OpenGL Core Profile support.
-
Batch Renderer ( all the rendering is automatically batched by the engine ).
-
TTF and Texture fonts support.
-
Frame Buffer support.
-
Shaders support ( with automatic fixed pipeline shaders to programmable conversor ).
-
Vertex Buffer Object support.
-
Particle System.
-
Extendable Console.
-
Animated Sprites.
-
Texture Atlas support ( automatic creation and update of the texture atlas ).
-
Backend based module, this means that you can easily create a backend for the window/input handling.
-
Currently supports SDL 1.2, SDL 2 and SFML as backends.
-
Clipboard support ( SDL 2 backend and partial support with SDL 1.2 ).
-
Color hardware cursors ( SDL 2 fully supported, partial support with SDL 1.2 and SFML ).
-
Multiple windows
-
Joystick support.
- OpenAL audio engine with extendable file format support. OGG support, and all the formats supported by libsndfile.
- Full OOP chipmunk physics wrapper.
- Provides all the basics stuffs for the full multi-threading support of the engine, file formats support for packing, clocks, resource manager, and much more.
-
Customizable Memory Manager. Used by default in debug mode to track memory leaks.
-
UTF8, UTF-16, UTF-32, Ansi, Wide Char support.
-
String class using UTF-32 chars internally.
-
Debug macros
-
General purpose functions and templates ( vector, quad, polygon, etc ).
-
Interpolation classes with easing.
-
Some minor math utilities, include Mersenne Twister random number generator implementation, perlin noise and more.
-
Web Requests with HTTP client, with SSL support.
-
File Transfers with FTP client.
-
TCP and UDP sockets.
-
Base controls to manage the game objects as nodes, with all basic input interaction events ( clicks, keypress, mouser over, focus, etc ).
-
Fully featured UI system, with skinning support, animation support, scaling, rotating, clipping, events, messages, etc.
-
All the basic controls are implemented ( button, textbox, combobox, inputbox, menu, listbox, scrollbars, etc ).
-
Features as text selection and key bindings.
-
Tiled Maps with software dynamic lights.
-
Full featured map editor.
Support for multi-threaded resource loading ( textures, sounds, fonts, etc ).