It was literally the smallest model that was still complex, that i could find. Everything else stomped in with 50000 polys and such.
In other news, work progresses nicely.
The modelling system is now completely functional and nicely working as well as comes with some provisions that will allow for later optimizations or tweaking of models, while still keeping manual changes to models squarely in the 3d editor and not in the text editor. Also, to make things a tad easier, the generator now automatically rotates the models as many times as needed, so one only has to model 1 basic ramp to the north to also cover the east, west and south.
I'm not sure if Sinoth will be able to port this to C++, as i'm using some syntax sugar of perl here, but it sure as hell makes development move a lot faster for me.
The above things enabled me to tackle something that's been a problem in 3Dwarf for a while: Ramps. Due to the incredible complexity of ramps, there are at LEAST 256 possible physical representations of them, and that's only taking into account the situation on the same 2D layer.
Thanks to the modelling system and the auto-rotation, i only needed to create 16 ramp models to cover 90% of all possible situations and 100% of the 256 above. Additionally i found a neat way to use bitmask comparisons to select the correct ramp out of the available ones, instead of crafting a huge, unmaintainable if tree. Lastly, after playing around with it for a day, i found a way of encoding the surroundings of each type of ramp in its name without creating massive textual monsters.
I'm fairly sure you'll see this in 3Dwarf down the line.
[
Detail 1] [
Detail 2]
Lastly, i finished the texturing system today, which works quite fast, despite using multiple smaller textures instead of one large texture with offsets. The way i'm doing this uses a really simple human-readable mapping of a spreadsheet via constants which allows me to simply write down the texture name i want next to a tile, paste it into my IDE and it'll use that. Adding textures also becomes as easy as adding 3 lines that mention the name of the texture.
[
Water] [
Detail] [
The Hand]
This is, if it even is, of limited use to 3Dwarf, however it makes it possible for me to move on towards extracting and playing with memory data to see if i can get the textures to be more detailed. This means veins, varied ground tiles, glass, etc.
Next up is also display of creatures and then experiments to see how much i can do with the designation/occupancy flags posted earlier by Toady.
At this point i also need to thank some people: The goons over in SHSC were extremely helpful and made it possible for me to figure things out with which i'd been stuck on this for quite some time.
And for anyone who wants to play around with it, download is here:
http://dwarvis.googlecode.com/