Missed my once a month post. Been a little silent, but I have made some good progress. I finally got mesh and skeleton loading finished. Or at least functional. It took me a little while to figure out how I should structure my vertex data, but I think I’ve gotten a pretty good solution.

I do have graphics actually running in my engine now! … sort of. I hacked in a couple things just to get something drawing quickly. Now that I have this going, I can start slowly adding in proper architecture.

It’s not much, but it is at least showing that my model loading is working and that I am successfully passing data to shaders. Along the way I had to fix a couple errors in my SIMD matrix math code. I also had the opportunity to fix up the interfaces in Gleam. Or I should say, removed implementations out of the I* classes. Now less will have to be linked in for objects that are used across DLL boundaries.

I have also implemented an IFileSystem interface. So now I can add a custom file system, like a packfile system, that all resources will read from. I will still keep things like config files and logs as loose files.

I don’t really recall what other work I did. I know I did a bunch of other crap, but I can’t remember it off the top of my head. Anyhow, this is a pretty important “milestone” for me. Now that I’ve got something rendering on the screen, I can slowly start putting in a proper rendering pipeline.

On a side note, I was watching some of the Siggraph 2014 presentations. From this I learned of the existence of a library called Embree. I was thinking maybe it could be useful in making an Umbra replacement. While interesting, I think I might be better off writing a normal CPU rasterizer. The price of ray-tracing probably outweighs the benefit of implementing an Umbra-like solution. Speaking of CPU rendering engines, I’m having a difficult time finding a simple, lightweight CPU rendering library. Anyhow, I guess that’s a topic for another day.

I’m getting pretty excited right now. Hopefully I’ll start to have some cool things to show off in the semi-near future.