forked from ianmaclarty/lotech
-
Notifications
You must be signed in to change notification settings - Fork 0
/
TODO
58 lines (38 loc) · 2 KB
/
TODO
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
- Action priorities
- Use Boehm GC for both lua and C/C++ memory management?
- Gecode integration? Might be useful for puzzle/level generation.
- OpenGL ES 2 support using google-angle (targetting DirectX 9 on Windows)
- Batched drawing - traverse scene graph building up vertices+data for drawing.
Keep track of state - if state change then flush.
- Implement my own matrix stack (glPushMatrix, glTranslate, etc not
supported in OpenGL ES 2).
- Portable audio solution.
OpenAL does not give consistent results/work on all platforms.
Need a software mixer+synthesiser with various backends (initially OpenAL and
OpenSL backends should be enough to target Windows (OpenAL), Linux (OpenAL),
Mac (OpenAL), Android (OpenSL) and iOS (OpenAL).
It would be nice to be able to build up sounds in a similar way to
Puredata.
- .ogg streaming.
- Geometry library using Box2D geometry functions (these can be used without
physics). Users should be able to define shapes and detect overlap, cast
rays, do spacial queries, etc.
- Simplify event and action models. The implementation of these is currently
too messy! (The user API is currently ok though.)
- View frustum culling. This would be useful for both 2D and 3D scenes.
For 2D scenes it would be nice to be able to define an entire scene in
one go and then pan around it (e.g. for a 2D platformer). Currently
this leads to degraded performance because we currently always draw the
entire scene graph.
- Reorganise source code. In particular don't put lua files int src/ltlua/
Also fix build system dependencies (currently broken).
- Switch from camel case to lowercase with underscores in C++ and lua code.
- Write a manual.
- Allow recording of events and generated random numbers for deterministic
replay.
- Detect scene graph cycles (at least in devmode).
- Integrate assimp for importing 3d models.
- Clean up .lua files (lots of useless junk there).
- Add emscripten backend.
- Add FlasCC backend
- Windows 8 + Mac retina display support.