Update TODO.md

This commit is contained in:
Tulpen 2023-07-30 17:38:20 +02:00
parent 5fc2069fc0
commit 7d3ccdb15f
No known key found for this signature in database
GPG key ID: 12294D73B907E784
3 changed files with 31 additions and 31 deletions

50
TODO.md
View file

@ -1,40 +1,52 @@
# Hibis Engine - Feature TODOs
## Core Module
- [ ] BetterC compatibility
- [ ] Texture loading
- [ ] Model loading
### Base
- [ ] Base Renderer class
- [ ] Base Physics class
- [ ] Figure out how scenes should be handled
- [ ] Split other sections into seperate libraries (renderers, physics)
- [ ] Split other sections into seperate modules (renderers, physics)
- [ ] Application class (where the main loop is handled)
### 2D/3D
- [ ] Texture loading
- [ ] Model loading
## Audio Module
### Base
- [ ] OGG and WAV support (do first)
- [ ] MP3 (later)
- [ ] Soundfont and Midi support (ideal)
- [ ] MP3 (later, can just ignore)
- [ ] Loop audio (with timepoints)
- [ ] Modify sound/pitch of outputted audio
### 2D/3D
- [ ] Position-based audio
## Hibis UI (NEEDS A NAME)
- [ ] GUI creation
- [ ] Text Object (rendering via FreeType2)
## RGLCore (2D AND 3D)
- [X] Window creation
- [ ] Renderer creation
- [ ] Render present
- [ ] Clear renderer
- [ ] Texture drawing
- [ ] Draw section of texture from sprite sheet
## RVK (2D AND 3D, NEEDS A NAME)
- [ ] Window creation (either using GLFW or a custom window creator)
- [ ] Basic deferred renderer
## Aethiopicus (Vulkan renderer, 2D and 3D)
### Base
- [X] Window creation (via GLFW)
- [ ] Basic deferred renderering system
- [ ] Render present
- [ ] Clear renderer
- [ ] Figure out how the renderer should even work
- [ ] (DO FOR A VERY LATE VERSION) Replace GLFW with a custom window creator to reduce bloat (I will not be using most of GLFW's shit)
### 2D
- [ ] Texture drawing
- [ ] TileMaps
- [ ] TileMap Culling
### 3D
- [ ] Model drawing
- [ ] Culling (hiding what you can't see)
- [ ] Level of Detail (3D ONLY, might not impl (developers using Hibis could do this themselves))
- [ ] Model Culling (hiding what you can't see)
- [ ] Level of Detail (3D ONLY)
## Hibis Physics (NEED A NAME)
### Base
- [ ] Physics Shape creation
- [ ] Option to *allow* for Physics Shapes to be able to be drawn (on by default, both compile time and run time, turn off at compile time via a flag (`-DNoPhysShapeDraw=1`?)) (official releases will include PhysShapeDraw capabilities)
### 2D/3D
- [ ] Raycasting
- [ ] Collision via raycasting
- [ ] Option to *allow* for Physics Shapes to be able to be drawn (on by default, both compile time and run time, turn off at compile time via a flag (`-DNoPhysShapeDraw=1`?))
- [ ] Space type-specific shapes
## Examples
- [ ] Example: UI test
- [ ] Example Game: Megaman clone
- [ ] Example Game: Megaman clone (external repo)
- [ ] Stress test using sprites
- [ ] Stress test using models

View file

@ -1,6 +0,0 @@
#version 330 core
out vec4 FragColor;
void main() {
FragColor = vec4(0.8f, 0.3f, 0.02f, 1.0f);
}

View file

@ -1,6 +0,0 @@
#version 330 core
layout (location = 0) in vec3 aPos;
void main() {
gl_Position = vec4(aPos, 1.0);
}