|
1 | 1 | # Final Engine 1.0 |
2 | 2 |
|
3 | | -## Features |
| 3 | +## Core |
4 | 4 |
|
5 | | -### Rendering |
| 5 | +### Windowing and Input |
6 | 6 |
|
7 | | -#### Rendering Techniques |
| 7 | +- [x] Windowing System |
| 8 | +- [x] Game Loop |
| 9 | +- [x] Keyboard Handling |
| 10 | +- [x] Mouse Handling |
| 11 | +- [x] Game Pad Handling |
| 12 | + |
| 13 | +### Scenes and Entities |
| 14 | + |
| 15 | +- [ ] Scene Manager |
| 16 | +- [x] ECS Framework |
| 17 | +- [x] Resource Manager |
| 18 | + |
| 19 | +### Audio |
| 20 | + |
| 21 | +- [x] Playback |
| 22 | + |
| 23 | +## Rendering |
| 24 | + |
| 25 | +### Rendering Techniques |
8 | 26 |
|
9 | 27 | - [x] Pipeline |
10 | 28 | - [x] Forward Rendering |
11 | 29 |
|
12 | | -#### Geometry and Models |
| 30 | +### Geometry and Models |
13 | 31 |
|
14 | 32 | - [x] Mesh Rendering |
15 | 33 | - [x] Model Loading (using Assimp) |
16 | 34 | - [x] 2D Sprite Batching |
17 | 35 |
|
18 | | -#### Camera and View Optimization |
| 36 | +### Camera and View Optimization |
19 | 37 |
|
20 | 38 | - [x] Camera System |
21 | 39 | - [ ] View Frustum Culling |
22 | 40 |
|
23 | | -#### Material and Shading |
| 41 | +### Material and Shading |
24 | 42 |
|
25 | 43 | - [ ] Material System |
26 | 44 | - [x] Diffuse Mapping |
|
29 | 47 | - [x] Emissive Mapping |
30 | 48 | - [ ] Parallax Mapping |
31 | 49 |
|
32 | | -#### Lighting and Shadows |
| 50 | +### Lighting and Shadows |
33 | 51 |
|
34 | 52 | - [x] Lighting |
35 | 53 | - [x] Blinn-Phong Lighting Model |
|
39 | 57 | - [x] Spot |
40 | 58 | - [x] Global Illumination (Ambient Lighting) |
41 | 59 |
|
42 | | -#### Visual Effects |
| 60 | +### Visual Effects |
43 | 61 |
|
44 | 62 | - [x] Skyboxes |
45 | 63 | - [ ] Blending |
46 | 64 |
|
47 | | -#### Post Processing |
| 65 | +### Post Processing |
48 | 66 |
|
49 | 67 | - [ ] Post Processing |
50 | 68 | - [ ] Gamma Correction |
|
54 | 72 | - [ ] Linear |
55 | 73 | - [ ] Exponential |
56 | 74 | - [ ] Exponential Squared |
| 75 | + |
| 76 | +## Editor |
| 77 | + |
| 78 | +### General |
| 79 | + |
| 80 | +- [ ] Menu bar with basic actions (File, Edit, View) |
| 81 | +- [x] Resizable and dockable panels |
| 82 | +- [ ] Consistent visual styling/theme |
| 83 | +- [ ] Undo and Redo of common functionally |
| 84 | + |
| 85 | +--- |
| 86 | + |
| 87 | +### Projects |
| 88 | + |
| 89 | +- [ ] Create new project |
| 90 | +- [ ] Open existing project |
| 91 | +- [ ] Display current project name |
| 92 | + |
| 93 | +--- |
| 94 | + |
| 95 | +### Scenes |
| 96 | + |
| 97 | +- [ ] Create new scene |
| 98 | +- [ ] Save current scene to file |
| 99 | +- [ ] Open existing scene from file |
| 100 | +- [ ] Indicate unsaved changes (e.g. with asterisk in tab or title) |
| 101 | + |
| 102 | +--- |
| 103 | + |
| 104 | +### Entities |
| 105 | + |
| 106 | +- [x] Display list of entities in the current scene |
| 107 | +- [x] Select entities |
| 108 | +- [x] Add new entity |
| 109 | +- [x] Delete entity |
| 110 | +- [ ] Rename entity |
| 111 | + |
| 112 | +### Components |
| 113 | + |
| 114 | +- [x] Display selected entity's components |
| 115 | +- [x] Add new component to entity |
| 116 | +- [x] Remove component from entity |
| 117 | +- [x] Edit component values (e.g. Transform, Sprite) |
| 118 | +- [x] Reflect real-time changes in the scene |
| 119 | + |
| 120 | +--- |
| 121 | + |
| 122 | +### Systems |
| 123 | + |
| 124 | +- [ ] View list of systems in the current scene |
| 125 | +- [ ] Add system to scene |
| 126 | +- [ ] Remove system from scene |
| 127 | + |
| 128 | +--- |
| 129 | + |
| 130 | +### Viewport |
| 131 | + |
| 132 | +- [x] Render scene with all visible entities |
| 133 | +- [ ] Select entities by clicking in the viewport |
| 134 | +- [ ] Camera controls (pan and zoom) |
| 135 | +- [ ] Display and interact with transform gizmos (position, rotation, scale) |
| 136 | + |
| 137 | +--- |
| 138 | + |
| 139 | +### Resources |
| 140 | + |
| 141 | +- [ ] Import assets (e.g. textures, sounds) |
| 142 | +- [ ] Display list/grid of imported resources |
| 143 | +- [ ] Preview basic asset information |
| 144 | +- [ ] Assign resources to components (e.g. SpriteRenderer) |
| 145 | + |
| 146 | +--- |
| 147 | + |
| 148 | +### Console and Logs |
| 149 | + |
| 150 | +- [ ] Display error, warning, and info messages |
| 151 | +- [ ] Filter logs by type |
| 152 | +- [ ] Clear logs |
0 commit comments