Tonight, I worked some more on my 3D game engine. I'm working on some of the more boring stuff, like the game system architecture, but it's coming along rather nicely. Between my personal tinkerings with Sacraments 3D and the Shockwave3D development I do for work, I think I'm zeroing in on a good way to organize a Shockwave3D project so that I can drop in different game styles, different content, etc., without too much trouble. Better yet, much of the loading script is now moved into a text member, so I can edit that to change how and what it loads, rather than dealing with code. It will require a loading screen, but most Shockwave3D scenes of any detail will need that anyway, so I think I'm okay there.
I'm going for a nice, clean model-view-controller scheme, where "view" items are dumb 3D elements that render themselves into the 3D world, "model" items are display-ignorant keepers of game state, and "controllers" act as the liaison between them and the player. If it looks like it's going to work, I'll post an article about the final setup to my Shockwave3D developer's guide.