4.30.2011

Ubertool

This weekend is spent working on the object manipulation gizmos. These are crucial to the smooth operation of the tool so I'm taking my time implementing them. Object picking is a bitch as always (the only thing I actually miss from OpenGL is the named rendering for object picking), so I decided to let D3DX do the bulk of the work for me instead of using clever semi raytracing techniques. D3DXIntersectTri ftw!

4.28.2011

Camera views

I made very good time on the camera views for the modeler and finished everything in a single night. Display and camera movement are both finished and working perfectly. Time to start working on the actual model editing features. Also after numerous tiny fixes and several additions to the engine it's now at 6185 bytes.

4.27.2011

Unified

My second oldest partner in crime has joined in the audience and possibly the authorship of the blog. The three of us are now seriously thinking about our next major release. The goal is to hit Assembly #20!

It's alive!

Well. The engine framework written blindly works like a charm. Lots and lots of work is still needed, but the blind part's over. Yay.

4.26.2011

Smoothing

First mesh operator I implemented was the most intricate one, catmull clark mesh smoothing. Also added some management code to build meshes and added a cube "generator". These upgrades added ~1.2kbytes to the engine which is now at 5488 bytes - however the old butterfly mesh smoothing scheme we used would have added twice as much without even mentioning all the mesh topology issues we always had with it. The 12kbyte engine size might still be possible if all goes well.

Mesh basics

Yesterday night was quite productive, laid the foundations of the mesh class. Dynamic arrays for vertex, poly, and edge data, all the required connectivity info, edge list building and normal calculation with smooth groups - in about 750 bytes. This works. :) Mesh generators and filters are up next after I get some sleep.
Current engine size: 4298 bytes.

4.25.2011

Mesh Generation

Had a long talk with my creative partner about the new modeler today. The mesh generators will be upgraded, but nothing drastic. The decision has been made to scrap everything from the last version of our toolchain and revert back to the ideas used before that one. Looks like this will work out best for us, the possibilities are really exciting.

4.24.2011

Uninitialized

Lost a few creative hours to a weird bug yesterday, even went and installed the service pack for visual studio to see if it would fix it. Turned out to be an uninitialized variable. Should have known, I always fall for that.
Anyway the material editor is coming along nicely, I decided to take the hard route and create the UI for it as well while I'm on a creative streak. The engine framework I'm building upon didn't need a single change/fix up to this point so all is going well.

4.22.2011

Still flying blind

The skeleton of the engine is basically complete, now I need to start working towards a very first rendered mesh. This is going to take a few more days, but I have the whole weekend in front of me dedicated to this purpose. Also did some size checking with the current version, according to kkrunchy I'm at 3364 bytes including every bit of code up to this point. Packing the whole thing into 12 KBytes seems like a strict but achievable goal which would make it our smallest engine yet. By half. Add 12 KBytes to that for the synth and music and you have 40 KBytes left for gfx art which would open up some very interesting possibilities :)

4.21.2011

Engine graph

This is where I am in the brainstorming process of the engine. Could be worse.

4.20.2011

Blind run

Working on the base of the 3D engine now. This part is a pain as I won't be able to see anything before everything is in place at least in parts. Got a decent new spline class up and running, and the material system I'm working on may finally fix all of the issues of the last system. Our customary scene in scene system will make scene graph traversal a bitch to implement, but it speeds up the workflow for the artists a lot.
So for now I'm flying blind and just putting framework and base engine code together, but it's shaping up to be something very cool.

4.09.2011

Yep, it works

Texgen is up and running, opstacking didn't become a mess as I feared, and I have some very solid ideas on how to proceed. Things look promising.

4.07.2011

Streamlining

Today was the day from hell in terms of work and school, but I still managed to get some streamlining done. The affected areas are mostly on the ui side, added syntax highlighting for #defines in the text editor, added a generator load graph and made single line text input a lot more user friendly. Also fixed a possible endless loop in the generator system. Hopefully tomorrow I can get the SAVE and LOAD operators up and running after which comes export and import for the texgen, and after that I can move on to 3D.

4.06.2011

Inconsistency

So it turns out that >= comparison operations for very close float values under a win7,dx9,nvidia setup can give inconsistent results, even if the values tested and everything in the setup is exactly the same (think recorded pix run playback giving different results on different reruns). This one cost me two weeks to figure out, but finally I can move on with the tool.