-
Notifications
You must be signed in to change notification settings - Fork 0
/
todo.txt
63 lines (52 loc) · 1.51 KB
/
todo.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
========================================
// Build
========================================
- Move VS project files into a VS directory to keep root dir clean
- Update Makefile to work now that I moved everything around again
========================================
// Editor
========================================
- Render UI when 3D object is clicked
Objects
-------
- Place lights
- Render light boundaries (position spheres; direction rays/cones)
- Better translation / object placement
- Snap to grid
- Snap to object (per-object type, relative "snap points")
- Directly edit properties (textbox)
- Rotate around arbitrary point
========================================
// Engine
========================================
Animation
---------
- Global translate, rotate
- Change texture (instant, fade?)
- Change mesh
- Change type-specific "properties" (e.g. toggle light on/off)
- Global scale?
Collision
---------
- Ellipsoid
- Scene graph (kd-tree, BSP?)
- Frustum culling
- BVH
- Mesh
Foliage
-------
- Billboard ground foliage (e.g. 2-plane grass) normal should point straight
up for proper lighting calculations. /watch?v=BJDQNjlEO0I
Input
-----
- Better mouse smoothing / accuracy?
"The Witness needs Raw Input to get good low-level relative mouse movements"
https://mollyrocket.com/casey/stream_0007.html
Lighting
--------
- Light objects (OBJ_LIGHT)
- Multiple lights (how to differentiate types in shader?)
- Shadows
Shaders
-------
- Refactor program_bind() / program_uniform_set() out of object_render()