Main Page: Difference between revisions
Jump to navigation
Jump to search
Line 25: | Line 25: | ||
== Featured Pages == | == Featured Pages == | ||
* '''[[Naming Convention]]''' | |||
* '''[[Event System]]''' | * '''[[Event System]]''' |
Revision as of 15:03, 5 May 2024
neoGFX C++ Application/Game Engine and Development Platform -- Coming Soon
Introduction
neoGFX is a C++ app/game engine and development platform targeted at app and game developers that wish to leverage modern GPUs for performant application user interfaces and game graphics.
Features
- clean modern C++20 design including full exception safety supporting various widget allocation patterns (stack, member variable or free store);
- use of standard non-proprietary C++ data types including using standard string classes (UTF-8 encoding) and containers from the C++ standard library and Boost where possible;
- simple, easy to use multi-threaded event system (an improvement over traditional signals and slots);
- no baggage: neoGFX primarily contains only the GUI and graphics related functionality needed for creating apps and games;
- full library of widgets and layout managers specifiable in RJSON (Relaxed JSON) using the included GUI designer tool;
- CSS3 style sheet support with support for custom skins;
- scripting engine, neos, that will be able to support a wide range of scripting languages (on release: neoscript, JavaScript and Lua);
- sub-pixel text rendering;
- simple window style for specifying that a window is "nested" rather than being a separate native desktop window;
- "text_edit" widget supports multiple fonts, text colours (with optional gradient effects), colour emojis and rendering text in columns;
- "Green" and "Turbo" modes to optimize CPU power consumption, fight #ClimateChange!
- GPU shader rendered CSS3 compliant gradients with optional gaussian smoothing;
- MVC (model-view-controller) related classes supporting robust and fast app design;
- optional MDI support utilizing "nested" windows;
- 2D, 2.5D and 3D game support: sprites, objects and physics;
- Pure ECS (Entity-component-system) usable by both games and apps;
- flexible asset management: texture images (e.g PNGs) can be stored in .zip archives which can be optionally embedded inside the program binary accessible using simple URLs;
- support for OpenGL, DirectX and Vulkan.