
I finally finished coding the user interface for the plotter grid controls (as well as adding in a bit more functionality).
This is what I have left:
- Upper and lower bounds for the grid plane size and interval
- Implementation for the plane drag-to-view controls
- Tweaks for some weirdness on the size/interval ratio
I’m also considering switching the plane movement controls based on the current direction vector within the plotter but I’m not sold on the idea totally yet. I may try it to see if it it offers a usability boost but if not, I’ll just throw it to the waste heap.
From there I get to move on to the more “interesting” stuff, namely the intersection point selection code.

The grid control UI is up and functionality for grid plane enabling/disabling is working. I’ve also done a shit load of icon creation for various controls in the application as well as some miscellaneous bug fixes, primary dealing with the docking panes. I did end up having to rewrite the implementation for keyboard input because it just wasn’t doing what I wanted it to. In short, I wanted to be able to control the plotter window via the keyboard regardless of pane focus within the application, but C# is just a little bit too high-level for my needs. I ended up having to access an external system dll to poll key states instead.
As for my to-do list, I plan on implementing the remaining functionality for the grid controls first, and then start working on the 3D point selection tool. From there I can start setting up a tool window and working on my first primitive drawers.

Just got finished with the basics for the plotter grid rendering. My initial idea was to have the whole viewport covered in grid but I quickly changed my mind after I saw what it looked like (i.e. crap). So I’m trying a new approach: I’m going to have floor, ceiling, and four wall grid planes that are movable and that can be toggled on and off. My idea is to use the intersection of the active grid lines as picker points to draw polygons onto. We will see how it works I suppose.
Just got done implementing the basic movement controls and calculations for the plotter. I designed it after the old school 1st-person shooter game controls so you can steer around with one hand and keep your mouse hand free. I figure that’s going to be the best approach so you can plot points and whatnot with one hand while you move around with the other. Next on the agenda is to get the plotter grid up and working.

I’ve decided to break off the level editor portion of my Reflex project into its own beast namely because:
- I changed the scope a bit and decided to make a full-blown game designer out of it instead
- I can’t see any reason why it couldn’t be used for other game engines eventually
- Hopefully it will help me keep my head in one place
So far so good: I’ve wrote the framework in C#, integrated the DockPanel Suite to setup a docking workspace, and got the OpenGL rendering context up and running for the plotter using CSGL12. I’ve noticed some bugs with the plotter window resizing but they aren’t terribly significant so I’ll write them up to look at later when I don’t have better things to do with my time. From here, I plan to get the plotting grid implemented and setup basic movement controls.