I had intended to get a lot of work done this past weekend, but I wound up having many obligations to fill. Saturday I had to go into work, then a late lunch with my parents, fiancée and the soon-to-be in-laws, then to my friend's house for D&D for the rest of the night*. Then I crashed there for the night and drove home in the morning.
Upon arriving home, I got cleaned up and my fiancée and I went to check out a potential venue for our nuptials. It turns out we likely won't be using the place, but have found a nearby place that looks promising (and it's cheaper!). After that we drove around for a good while trying to find a place that does decent diner breakfast while being able to cater to Celiac disease (as it turns out, it's very difficult - pancakes and french toast tend to share the same griddle surface as everything else). Luckily we stumbled upon Uncommon Ground in Watertown MA which actually had gluten-free options (like french toast!).
Then add some grocery shopping in, and we finally got back home around 4:30. After relaxing and sighing and a tiny bit of whining, I sat down and worked on Rustbot for a little bit. While I didn't work on any extensive features, I tinkered with a few bits here and there in an attempt to make things nicer / easier / better. I also fooled around playing it a little myself building a few random purposeless structures (kinda fun).
In addition, I made a new "level". Thanks to my finally getting my tablet back out of storage, I was able to design a heightmap by hand rather than with a crude mouse. It quickly became apparent to me that I need to implement a system wherein I can load new sections of the "level" on the fly so that extra areas aren't hanging out in memory (as well as these extra areas' physical objects being processed unnecessarily).
What I think I'll do is have a 4096x4096 targa image for my heightmap, and break it up into a 32x32 grid of 128x128 targa files (I think I'll write a script to do that for me rather than manually cut and crop it up by hand; 1024 grid squares is a lot). That way, I can have the player exist in one square with a high level of detail (with the surrounding eight squares at the same LOD for consistency when moving from one square to another), and the outerlying 16 (and beyond) will be at a lower level of detail.
There are other things I can do to optimize it better, but I won't bore you with more details. I want to get a fair bit of this done tonight. I figure once I finish this part, I'll get back into the more tedious parts of managing joints and contact points and how to deal with them if a joined object is removed (ooh! I just got an idea - sweeeeet).
I wish I had awesome things to show off right now, but unfortunately nothing has changed in the game aesthetically so it would be pointless. I wanted to have a video of me making a little wheeled cart, but difficulties in object handling (from a gameplay perspective, not coding) and bug crashes made that somewhat prohibitive. Eventually I'll have something like that for display.
Until then, more coding...
*The addition of Oblivion's soundtrack made the session a billion times more awesome. In addition, we played Ascension and Forbidden Island, resulting in much fun.
No comments:
Post a Comment