not even remotely as frustrating as it would have been later on when trying to figure out what went wrong...
yes of course, you may publish it under any license you see fit, as long as it allows me to still use it
and thanks for the credits.
So to state for the record: I agree to my code being released under the zlib license.
ok, that is a weird windows issue...
yes I thought it would change too much in other places if I'd keep the width/depth/height parameters unsigned, especially since they'll get dropped soon anyway.
I'll check it out and test it now
I know you like not having any dependencies (or at least very few).
I could actually use standard library equivalents of the boost::bind and boost::function.
or just force the user to use inheritance by creating a virtual function for loading/unloading
what do you think?
also instead of an unordered_map, a simple map or hash_map should be sufficient (and optimizations through other (faster?) techniques can be done once the speed actually becomes a problem).
ugh... I've just noticed something really annoying
imagine you're accessing a voxel in a block that is not loaded yet.
there will be a call to load from inside getUncompressedBlock which is a const function.
load on the other hand tries to call setVoxel... which most definitly is not const.
is it evil in that case to const_cast away the constness of the this pointer of the volume and then pass it to load?
[edit] ok... inheritance is not a good idea
but c++0x allows me to get rid of all boost dependencies.
it doesn't look all too neat, but it does the job.
I'm still testing some things that might be troublesome... but streaming is working already
[/edit]