TODO.md
## Todo List
This is the current todo list for the project.
There is no order in which the classes are implemented, some things are even developed in parallel.
### Create all math classes
- [X] Vec2
- [X] Vec3
- [X] Vec4
- [X] Mat4
- [X] Ray
### Create geometry classes
- [X] Base Class ("Shape")
- [X] Triangle
- [X] Sphere
- [ ] Mesh
### Scenegraph
- [ ] Create Scenegraph
- [ ] Acceleration Structure: BVH
## Material
- [X] Basic Material (PhongMaterial)
## Lighting models
- [X] Base Class
- [X] Point Light
- [ ] Directional Light
- [X] Spot Light
- [ ] Area Light
- [ ] Ambient Occlusion
### Create renderer
- [X] Base Class
- [ ] RayTester
- [X] SimpleRT
- [ ] RGBImage
- [X] Draw Lines
- [X] Draw Circles / Filled Circles
- [ ] Blit images
- [ ] Draw Polygons / Filled Polygons
- [ ] Draw Text
### Importer / Exporter
- [ ] Wavefront obj importer
- [ ] Wavefront obj exporter
- [ ] Three.js exporter
### Jupyter Lab
- [X] Better integration, single window