1
0
Fork 0
Univerxel/TODO.md

168 lines
3.9 KiB
Markdown

# Milestones
## Hello world
Released as `0.0.1`: `Pre alpha 1`
- [x] From the ground up cleanup
## System
- [~] Dependencies updater
- [x] Tracy
- [ ] ImGui
- [x] FastNoise
- Compile time
- [x] Warnings
- [ ] Unit build
- [ ] Ninga
- [ ] Clang
- [x] CI build
- [x] CMake package
- [x] GitLab CI
- Platforms
- [x] Linux
- [x] Windows
- Mingw: requires picotls, picoquic and FastNoise compatibility
- [ ] MacOS
- [ ] Launcher / Updater
- [ ] Review documentation
- [ ] Code cleanup
- [ ] Proper wiki
- [ ] Proper logger
- [ ] I18L
## Data
- [~] Element hierarchy
- [x] Raycast
- [ ] Soft part break
- [x] Relative position
- [x] Rotate
- [ ] Bounding hierarchy
- [x] Merge World and Entities
- [ ] Galaxy
- [~] Orbit system
- [x] Circular
- [ ] Elliptic
- [ ] Gravity referential
- [ ] Collisions
- [ ] Point
- [ ] Step
- [ ] Ray
- [ ] Continuous
- Bilateral advancement
- GJK
- Edits
- [ ] More shapes
- [ ] Rotate
- [ ] Anchor
- [ ] Multi-block system
- [ ] Cross chunk structure
- [ ] Lighting
- [ ] Passive chunk save
- Generation
- SIMD
- [ ] Double precision
- [ ] Surface features
- [ ] Biomes
- https://imgur.com/kM8b5Zq
- https://imgur.com/a/bh2iy
- https://speciesdevblog.files.wordpress.com/2012/11/biomemap.png
- [x] Data oriented
- [ ] Inventory
- [ ] Octree
- [ ] Surface aware LOD
- [ ] All levels (0-5)
- [ ] Tree fill
- [ ] Big edit queue
- [ ] Update region level average
- [ ] Area converter
- [ ] Minecraft import
- [ ] Base unit size change
- [ ] Local generation prediction
- [~] Modding API
- [x] Define boundaries
- [ ] Version handling
- [ ] Client-Server negotiation
- [ ] Save file index
- [ ] List possibilities
## Graphics
- [~] Disable VK for now
- [ ] Slash screen
- [ ] Proper UI
- [ ] Pause menu
- [~] Start menu
- [ ] Using texture pack
- [ ] FontAwesome (https://github.com/juliettef/IconFontCppHeaders)
- [x] Define standard unit sizes
- Terrain (area) 1:1m
- Objects (part) 1-8:1
- Models (instance) ~16:1 manual
- Visual debug
- [x] Chunk / Region border
- [x] Area box
- [ ] Collision overview
- [ ] Effective occlusion culling
- [ ] Use average
- [ ] Cast from chunk center
- Curvature
- CubeSphere
- [ ] Area corrected CubeSphere
- [ ] Corrected Normals
- [ ] Surface curvature
- [ ] Curvature aware frustum
- [ ] Healpix
### Raster
- https://www.iquilezles.org/www/index.htm
- [~] 8 for 1 contouring problem
- [ ] Merge stochastic and triplanar
- https://assetstore.unity.com/packages/tools/terrain/microsplat-96478
- https://www.youtube.com/user/slipster216/videos
- [x] Biplanar
- [ ] Fix stochastic (needs regionPosition bound in f16 range)
- [ ] Distance resampling
- [ ] Tesselation
- [ ] Better LOD selection
- Dynamic to target fps
- [ ] Planet scale LOD (using chunk level average)
- [ ] Hard shadow
- [ ] World lights
- [ ] HDR
- https://www.youtube.com/watch?v=iikdcAA7cww
- Toon shading
- Eye adaptation
- GLSL gamma correction
- https://github.com/skurmedel/shaders/blob/master/glsl/gamma_correct.glsl
- [ ] Post processing
- https://learnopengl.com/Advanced-OpenGL/Anti-Aliasing
- Bloom
- [ ] Procedural Skybox
- [ ] Deferred
- [ ] Ambiant occlusion
- [ ] Cascaded shadow maps
- [ ] Avoid transparent back-face
- [ ] Translucency
- Back-face depth based
- [ ] Contouring service
### Ray
- All of it
- Probably v2
## Network
- [x] QUIC protocol
- [ ] Use in memory protocol
- replace server_handle
- [ ] Private messages
- [ ] Commands
- [~] Authentication
- [ ] Clean kick
- [ ] Check certificate