Perkenalan
NEOGFX adalah aplikasi C ++ App/game dan platform pengembangan yang ditargetkan untuk pengembang aplikasi dan game yang ingin memanfaatkan GPU modern untuk antarmuka pengguna aplikasi performant dan grafik game. Neogfx masih dalam proses (tidak lengkap) jadi belum cocok untuk membuat aplikasi atau game. Saat ini NEOGFX hanya dibangun untuk dan diuji di Windows.
Fitur (saat versi 1.0 dirilis)
- Desain C ++ Clean Modern Memanfaatkan C ++ 20 dan termasuk keamanan pengecualian penuh mendukung berbagai pola alokasi widget (stack, variabel anggota atau toko gratis);
- Penggunaan tipe data C ++ non-kepemilikan standar termasuk menggunakan kelas string standar (pengkodean UTF-8) dan wadah dari perpustakaan standar C ++;
- Sistem acara multi-threaded yang sederhana dan mudah digunakan (peningkatan sinyal dan slot tradisional);
- Tidak ada bagasi: Neogfx terutama hanya berisi fungsionalitas terkait GUI dan grafik yang diperlukan untuk membuat aplikasi dan game;
- Perpustakaan penuh widget dan manajer tata letak yang dapat ditentukan dalam RJSON (JSON yang santai) Deklaratif UI Deskripsi Bahasa Drag/Drop Edited menggunakan alat desain yang disertakan, Neogfx Design Studio;
- Dukungan Lembar Gaya CSS3 dengan dukungan untuk kulit khusus;
- Mesin Scripting, Neos, yang akan dapat mendukung berbagai bahasa skrip (pada rilis: Neoscript, JavaScript dan Lua);
- rendering teks sub-pixel;
- Gaya jendela sederhana untuk menentukan bahwa jendela "bersarang" daripada menjadi jendela desktop asli yang terpisah;
- Widget "Text_Edit" mendukung beberapa font, warna teks (dengan efek gradien opsional), emoji warna dan rendering teks dalam kolom;
- Mode "Green" dan "Arcade" untuk mengoptimalkan konsumsi daya CPU, melawan #ClimateChange!
- GPU Shader memberikan gradien yang sesuai dengan CSS3 dengan perataan Gaussian opsional;
- Kelas Terkait MVC (Model-View-Controller) yang mendukung desain aplikasi yang kuat dan cepat;
- Dukungan MDI opsional menggunakan jendela "bersarang";
- Dukungan game 2D, 2.5D dan 3D: sprite, objek dan fisika;
- ECS murni (sistem komponen entitas) dapat digunakan oleh game dan aplikasi;
- Manajemen Aset Fleksibel: Gambar Tekstur (misalnya PNG) dapat disimpan dalam arsip .zip yang dapat disematkan secara opsional di dalam program biner yang dapat diakses menggunakan URL sederhana;
- Dukungan untuk OpenGL, DirectX dan Vulkan.
Peta jalan
| Versi | Eta | Fitur |
|---|
| V0.99 | Wid* | Windows OpenGL; Fitur Perpustakaan Widget Lengkap; Alat Desain UI |
| v1.00 | Wid + 12 bulan | Linux OpenGL; mesin skrip |
| v1.10 | Wid + 24 bulan | Vulkan; Dukungan Android; mesin fisika |
| v1.20 | Wid + 36 bulan | Dukungan MacOS |
* Setelah selesai
Kemajuan Implementasi
| Fitur | % Selesai | Todo |
|---|
| Jendela | 95 | Jatuhkan bayangan |
| Dialog | 90 | Tombol default |
| Kotak pesan | 100 | |
| Menu | 100 | |
| Jendela bersarang | 90 | |
| Mdi | 0 | |
| Tab | 95 | Tab vertikal |
| Toolbars | 90 | Dukungan tombol drop-down |
| Manajer tata letak | 95 | Perlu sepenuhnya mendukung kebijakan ukuran |
| Label | 100 | |
| Tombol | 100 | |
| Tampilan Tabel | 95 | Pilihan; widget sel |
| Tampilan Pohon | 95 | |
| Tampilan Daftar | 95 | |
| Sunting teks | 90 | Kolom; Teks kaya (html); undo/redo |
| Edit baris | 100 | |
| Kotak putaran | 100 | |
| Slider | 90 | Keyboard |
| Kotak centang | 100 | |
| Tombol radio | 100 | |
| Kotak kombo | 95 | Filter Glob dan Regex; Tinjau UX. |
| Kotak grup | 100 | |
| Tips alat | 0 | |
| Bilah status | 100 | |
| Bilah kemajuan | 95 | |
| Dermaga | 75 | |
| Pemetik font | 99 | Filter monospace |
| Pemilih Gradien Warna | 95 | Perpustakaan Swatch |
| Pemetik Warna | 100 | |
| Tanggal/waktu | 0 | |
| Browser File (Asli) | 99 | |
| Seret dan lepas | 75 | |
| UI/Deskripsi Sumber Daya (RJSON) | 40 | |
| Alat: Neogfx Design Studio | 10 | |
| i18n | 70 | |
| l10n | 0 | Inggris Inggris, Inggris AS, Prancis, Jerman, Cina |
| HID: Pengontrol game | 80 | Kalibrasi/Pengaturan UI; Pemetaan tombol DirectInput |
| Multi-monitor | 50 | DPI berubah saat mengubah atau menyeret antar monitor |
| Grafik adegan | 0 | |
| Kulit | 40 | |