4 ms·
Voxels always where the next big thing. The problem is they dont just demand ressources n^3 for all dimensions- they demand n^6, if you want to go into fine gr
by acou_nPlusOne_t 8y ago
Voxels always where the next big thing. The problem is they dont just demand ressources n^3 for all dimensions- they demand n^6, if you want to go into fine grained detail depending on closeness to the actor.
Cube: Sauerbraten did go there, and it uses something like oct-trees to store these tesselated, refined voxels.
And that is where the whole concept crawls on the shore to die - the tooling for this to work with all that has been invented before is just- not efficient- to sculpt in voxels, you basically send marching cubes through polygon models.
Personally that was the point where i dropped it- because- when i have polys allready- and dont need the destructable physics (they ruin gameplay &performance anyway most of the time) - then why bother.
Its one of those technical superior solutions which never seem to surpass the legacy solutions (like Rust and C). My assumption is, that one day, the polygon world will just eat the voxel world- having a .toVoxel.ApplyPhysicalModel(Sand).AfterPhysicsRestDo(ToPoly), and thats what will remain.
Very small cubes of dust.
- teraflop 8y agoWhere are you getting n^6 from? A hierarchical level-of-detail scheme (e.g. the one used in Sauerbraten) is still only n^3 in the worst case. If you store one full-resolution copy of your world, and then a copy with 1/2 the resolution, then 1/4 the resolution and so on, you get a geometric series that converted to only a constant-factor overhead.
- acou_nPlusOne_t 8y agoYou are right, its been quite a while since i have dealt with the cube-engine. The Level of detail mechanism just adds a constant to the formula- basically speeding up the n^3 voxel growth as the player explores the world in detail and distance at the same time in the worst case. Looking at a ants-mandibles-mikro-biota, while observing a planet near the horizon. https://www.youtube.com/watch?v=SsjeiLklThY https://www.youtube.com/watch?v=SsjeiLklThY
- AstralStorm 8y agoYou need a way to anizotrophpic filter the voxels. This means the mipmap should be fully indexable. That is n^3 * m memory for mipmap and n^4 filtering... Isotopic filtering is easier, just 3*n. However, it will make surfaces look... unreal, as if physics didn't form them, at times. You cannot wing the quality as easily in 3D though. Continuity is paramount as is some degree of smoothness. Ringing is unacceptable.