update ROADMAP

This commit is contained in:
2018-11-14 06:13:08 +07:00
parent 0a6bfaeabc
commit b6b5bf2b6c

View File

@@ -1,74 +1,139 @@
# Roadmap # Roadmap
## `Milestone I` ## `Milestone I (basic math and utils)`
- ### `basic math` - ### `basic math`
- [x] `vec2, vec3, vec4` - [x] `vec2, vec3, vec4`
- [x] `mat2, mat3, mat4` - [x] `mat2, mat3, mat4`
- [x] `unit<T,Tag>` - [x] `unit<T,Tag>`
- [x] `basic math functions` - [x] `basic math functions`
``` ```
clamp, min, max, approximately etc. clamp, min, max, approximately etc.
``` ```
- [x] `basic trigonometric functions and constants` - [x] `basic trigonometric functions and constants`
``` ```
pi, sin, cos, to_deg, to_rad etc. pi, sin, cos, to_deg, to_rad etc.
``` ```
- ### `basic utils` - ### `basic utils`
- [x] `path` - [x] `path`
``` ```
functions to manipulating paths in a portable way functions to manipulating paths in a portable way
``` ```
- [x] `color, color32` - [x] `color, color32`
- [x] `basic string functions` - [x] `basic string functions`
``` ```
unicode convertions, wildcard patterns, type safe format unicode convertions, wildcard patterns, type safe format
``` ```
- [x] `timer and time functions` - [x] `timer and time functions`
- [x] `image, image loaders` - [x] `image, image loaders`
``` ```
basic true color formats basic true color formats
internal: g8, ga8, rgb8, rgba8 internal: g8, ga8, rgb8, rgba8
external: png, jpg, tga external: png, jpg, tga
``` ```
- [x] `streams and native file system` - [x] `streams and native file system`
- [x] `thread pool and async tasks` - [x] `thread pool and async tasks`
## `Milestone II` ## `Milestone II (basic core)`
- ### `basic core` - ### `basic core`
- [x] `engine`
```
game loop
frame timers
core initialization
```
- [x] `logger` - [x] `logger`
``` ```
levels, sinks levels, sinks
``` ```
- [x] `basic input system` - [x] `basic input system`
``` ```
events, listeners, polling events, listeners, polling
devices: mouse, keyboard devices: mouse, keyboard
``` ```
- [x] `basic window system` - [x] `basic window system`
``` ```
GLFW, Windows, Linux, Mac OS X GLFW, Windows, Linux, Mac OS X
windowed and fullscreen modes windowed and fullscreen modes
``` ```
- [x] `basic render system` - [x] `basic render system`
``` ```
OpenGL only OpenGL only
index and vertex buffers, render state, index and vertex buffers, render state,
textures, blends, pixel and vertex shaders textures, blends, pixel and vertex shaders
``` ```
- [x] `virtual file system` - [x] `virtual file system`
``` ```
path aliases, archives, async loading path aliases, archives, async loading
``` ```
- [ ] `basic resource manager`
## `Milestone III (basic high)`
- ### `basic high`
- [ ] `library`
``` ```
resource management, abstract loaders
groups, dependencies, async loading groups, dependencies, async loading
``` ```
## `Milestone III` - [ ] `resources`
```
meshes, shaders, textures, materials
```
``` - [ ] `scene graph`
Coming Soon... ```
``` nodes, scenes
parent child relationship, bounding boxes, event bubbling
```
## `Milestone IV (advanced high)`
- ### `advanced high`
- [ ] `sprites`
```
static and frame-by-frame animations
```
- [ ] `ECS`
```
basic entity component system
component processing and joins
```
- [ ] `animations`
```
tweeners and spine runtime
```
- [ ] `labels`
```
ttf, bmfont
```
- [ ] `scripting`
```
lua runtime and bindings
```