-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTODO
More file actions
62 lines (61 loc) · 3.37 KB
/
TODO
File metadata and controls
62 lines (61 loc) · 3.37 KB
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
!! DANGER ZONE AHEAD !!
Don't think of this file as a properly documented list of features pending
implementation. It's main goal is to be a post-it note for myself.
I'll remove the descriptions of targets once they're done.
[ ] Serialization
-- We could use support cddlib's .ine/.ext files for that,
those are pretty humanly readable. Would require writing a
converter from their format to the plane constraints, meh.
And then back to solve it. Meh, squared.
[+] ..and Unit tests
-- Kind of cheating by splitting the previous point in two, but makes sense
[+] Actual solution support
-- At some point, we should think of dynamic signs
and quite possibly UI simplifications. Maybe have a
placeholder row for them, where the user can click and start
typing a new vector.
-- The support for min/max selection is now implemented, but
it would be nice if the user could just pick >=/<= on their own
Like type it in or dropdown, though latter is.. objectively much
more lame.
[ ] Actual zoom in support
-- requires some clever thinks with grid scaling
Also, like, actual sync between WorldGridDisplay and just Display.
Numbers, dashes, all this stuff are yet to be addressed.
[+] Orthographic camera snapping
-- Think Blender, but worse in UI and UX.
[ ] GitHub Actions workflow for crossplatform builds
-- Slowly occuring in `cmake` branch
-- Definitely will hit the rate limit implementing
[ ] "Optimized" limit plane rendering
Meaning we'll collect the transform matrices into one buffer
and use that for rendering the planes, instanced.
Further reading:
- comments somewhere in the display.cpp or solver.cpp
- https://www.khronos.org/opengl/wiki/Buffer_Object_Streaming
- https://learnopengl.com/Advanced-OpenGL/Instancing
[ ] Updated manual Object generation from vertex data:
Follow FIXME in display.cpp somewhere
[ ] Object file bake script
-- And either `make baked` or include it into `make build`/`make release` targets
[ ] CMake or just some tweaks to the Makefile.
-- WIP in cmake `branch`
-- The Makefile is not quite release-ready. Best used by noone.
I think the following "main" targets should be enough:
- `make build` or `make release` for the release configuration
- `make debug` for the debug configuration
of course I can't not have `make bake` as a target, but it's an aux one.
The debug target should somehow update the target objects/definitions when specified
in a way that's compatible with the main compile workflow. Or just don't use extra
objects in a debug build. Which is kind of a thing either way right now.
-- Or as a remedy to the problems with multiconfigurations, I could *just* switch to
CMake. But I'd like to keep the Makefile regardless. The fact that I am thinking of
using CMake is not going to stop me from using the original Makefile for builds.
[+] Quickhull via https://github.com/akuukka/quickhull from cddlib solutions.
[+] Autoresize the window [0.1.0]
[ ] Changelogs
[ ] Fix world orientation
-- I'm not quite sure what that's supposed to mean, but I think it means
"I've got a hunch that this thing is rotated wrong" or something.
It should be mostly accurate though. Mostly.
( MANY MORE COMING )