-
Core
- Implement core subsystem management
- Implement 3D graphics
- Basic 3D rendering, vertex/index buffering, vector/matrix management
- Basic 3D geometry
- Basic texture rendering
- 3D lights
- Advanced techniques and shaders
- Normal mapping
- Displacement mapping
- God rays
- Dynamic reflection
- Ambient occlusion
- Cel-shading
- Implement 2D/HUD graphics
- Basic 2D geometry
- Font/text printing
- Basic 2D font
- Advanced/2.5D fonts & effects
- 2D/3D textures rendering
- Implement menu/GUI/HUD system
- Core GUI/buttons system
- Basic Main Menu
- Settings
- Basic Pause Menu
- Implement advanced camera controller
- Flyby
- LookAt
- Quakes
- Implement core asset file system
- FBX models
- Mesh container management/loading
- Basic vertex loading
- Per-vertex normal mapping
- Normal groups
- 3D Animation
- Animation curves
- Skinning (HLSL)
- Vertex animation
- Mesh container management/loading
- 2D assets
- World/map assets
- Scripts/triggers
- Geodata/collision
- Sound files
- Main asset archive/compression system
- FBX models
- Implement debugging tools
- Developer console
- Base layout
- Commands system
- Autocomplete
- Better font rendering system
- Log
- Debug renderer
- Free camera
- Debug charts
- FPS counter
- Polymesh/vertex count
- Frame time pie charts
- Developer console
- Implement launcher/external settings editor
- Version build management/updater
- GUI and text editor for config.ini
- Compatibility and requirements check
- Implement controller input
- Implement sound system
- 3D sounds
- Implement scripting system (Lua?)
- Link to AI, triggers, camera etc.
- Implement core AI structure
- Pathfinding
- Implement core triggers mechanics
- Implement core physics
- Core collision system
- Kinematic objects (moving platforms)
- Camera collisions
- Implement core player controller mechanics
- Implement core world mechanics
- Entity spawner
- Triggers/events
- Map controller
- Implement core save/load system
- Implement core cutscene/FMV system
- Implement core multiplayer system
- LAN
- Server/client files
- Implement Steam integration
- Achievements
- Steamworks
- Steam Friends
-
SubSystem: Visual (2D/2.5D)
-
SubSystem: Tiled (2D/2.5D)
-
SubSystem: Fisheye (2.5D)
-
SubSystem: FPS/TPS (3D)
-
SubSystem: RTS (2D/2.5D/3D)
-
SubSystem: Sidescroller (2D/2.5D/3D)
-
Optimization
- 3D
- Buffer collection
- 3D
-
Documentation
- Decent commenting
- Wiki
- Examples
- Fix keyboard input setting to '1' repeatedly
- Fix camera interpolation
- Fix high cpu usage by the debug renderer -- compiling with
release
optimization gives expected results for the moment - Fix character controller collisions
- Fix platform movements (completely)
- Fix developer console display
- Get basic gameplay engine working, test some assets against it
- Develop testing build
- Polish github/create dedicated website
- Develop prototype working game
- Sell on Steam
- Develop multiple gameplays
- Implement Steam Workshop
- ???
- Profit
- Implement multiplatform support
- Look into Vulkan support
- Look into mobile/legacy systems
- Handshake with Jon Stewart