Points #82

Merged
glen merged 16 commits from Vectornaut/dyna3:points into main 2025-05-01 19:25:14 +00:00

16 commits

Author SHA1 Message Date
Aaron Fenyes
35689e3241 Drop commented-out CSS declarations
All checks were successful
/ test (pull_request) Successful in 2m22s
2025-04-29 10:08:57 -07:00
Aaron Fenyes
07a415843d AddRemove: Make a button that adds points
All checks were successful
/ test (pull_request) Successful in 2m25s
2025-04-28 11:38:45 -07:00
Aaron Fenyes
b7375e7101 Click the display to select points 2025-04-28 00:30:38 -07:00
Aaron Fenyes
bbd4ee08b6 Highlight selected points
In the process, make points round, since the highlighting works better
visually that way.
2025-04-27 22:23:41 -07:00
Aaron Fenyes
0fbb071506 Color points
In the process, find and correct a misunderstanding about vertex
attributes. Here's my current understanding. Vertex attributes are
program-independent. When you make a draw call, every enabled attribute
has to have a vertex buffer object bound to it. A simple way to make
sure this happens is to enable only the attributes used by the active
program.
2025-04-25 12:06:21 -07:00
Aaron Fenyes
1945086586 Add a point element
Also add a new test assembly, "Pointed," to try out the new element.
2025-04-24 14:08:15 -07:00
Aaron Fenyes
873de78f2d Generalize the element insertion methods 2025-04-24 11:14:05 -07:00
Aaron Fenyes
f9df459a0d Introduce an element trait
For now, this is just a thin wrapper around the old element structure,
which was renamed to `Sphere` in the previous commit. The biggest
organizational change is moving `cast` into the `DisplayItem` trait.
2025-04-23 23:29:28 -07:00
Aaron Fenyes
a1e23543cb Rename the Element structure to Sphere
This makes way for an `Element` trait. Some `Sphere` variables, like the
arguments of the sphere insertion methods, have been renamed to show
that they refer specifically to spheres. Others, like the argument of
`ElementOutlineItem`, have kept their general names, because I expect
them to become `Element` trait objects.
2025-04-23 01:01:59 -07:00
Aaron Fenyes
68abc2ad44 Simplify sphere data passing 2025-04-22 15:58:24 -07:00
Aaron Fenyes
cedb1d5b83 Encapsulate scene data 2025-04-22 15:55:08 -07:00
Aaron Fenyes
d5eaf11a17 Name attribute sizes 2025-04-22 12:10:31 -07:00
Aaron Fenyes
5a1d8bc201 Only recreate buffers when their contents change 2025-04-22 12:03:04 -07:00
Aaron Fenyes
23f395331a Sketch a point rendering pipeline 2025-04-21 20:49:00 -07:00
Aaron Fenyes
3590b1ad4e Drop unused vertex array object 2025-04-21 20:49:00 -07:00
Aaron Fenyes
8a82fe457f Encapsulate rendering program setup 2025-04-21 20:49:00 -07:00