neoGFX是一个跨平台的,面向GPU的C ++应用程序/游戏框架

网友投稿 968 2022-10-11

neoGFX是一个跨平台的,面向GPU的C ++应用程序/游戏框架

neoGFX是一个跨平台的,面向GPU的C ++应用程序/游戏框架

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. neoGFX is still a work in progress (incomplete) so is not yet suitable for making apps or games. Currently neogfx has only been built for and tested on Windows.

Features (when version 1.0 released)

clean modern C++ 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;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 an RJSON (Relaxed JSON) derived declarative UI description language drag/drop editable using the included design tool, neoGFX Design Studio;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 "Arcade" 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.

Roadmap

VersionETAFeatures
v0.99Q3, 2021Windows OpenGL; widget library feature complete; UI design tool
v1.00Q4, 2021Linux OpenGL; scripting engine
v1.10Q2, 2022Vulkan; Android support; physics engine
v1.20Q4, 2022macOS support

Implementation Progress

Feature% doneTODO
Window95Drop shadow
Dialog90Default button
Message Box100
Menu100
Nested windows25
MDI0
Tabs95Vertical tabs
Toolbars90Drop-down button support
Layout Managers95Need to fully support size policies
Label100
Button100
Table View95Selection; cell widget
Tree View95
List View95
Text Edit85Columns; rich text (HTML); undo/redo; performance optimization
Line Edit100
Spin Box100
Slider90Keyboard
Check Box100
Radio Button100
Combo Box95Glob and regex filters; review UX.
Group Box100
Tool Tips0
Status Bar100
Progress Bar0
Docks10
Font Picker100
Colour Gradient Selector95Swatch library
Colour Picker95Eyedropper tool
Date/Time0
File Browsers (Native)99
Drag and drop10
UI/Resource Description (RJSON)40
tool: neoGFX Design Studio0
i18n40
l10n0UK English, US English, French, German, Chinese
HID: Game Controllers80Calibration/settings UI; DirectInput button mapping
Scene Graph0
Skins40

Last updated: 18/04/2020

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Android 号码, 来电归属地 Jni 使用C++对二进制文件查询(一) 理论篇
下一篇:VBS传递函数
相关文章

 发表评论

暂时没有评论,来抢沙发吧~