TGEA 1.7.0 Beta 2 Bug - Atlas unique terrain clipmap recentering
by Rene Damm · in Torque Game Engine Advanced · 03/29/2008 (8:30 pm) · 83 replies
I repent. I absolutely should have checked this thing on a pristine Beta 2 before reporting. The problem is actually caused by stuff I have done (probably related to this). This was stupid. Sorry.
About the author
#82
Now that the cause is known, it can definitely be flagged as a minor thing in Atlas.
04/17/2008 (7:12 am)
True! However, the map in question (it was only one of the maps that showed this kind of behavior) was specifically designed as a stress test for Atlas. Ultra-dense mesh and two 16k textures to stream from.Now that the cause is known, it can definitely be flagged as a minor thing in Atlas.
#83
I just found out what the "stray white polygons" are... no polygons at all but rather spots where Atlas tears open the terrain mesh on chunk boundaries. Generally, I found that the deeper a geometry tree, the more visible vertex morphing there will be. When this morphing starts, there will be places where a single vertex sitting on a chunk boundary will end up in different spots for either side of the bounday causing a triangular tear to appear in the terrain mesh.
Unfortunately, due to the clip stack delta problem, Atlas currently *forces* geometry trees to insane depths and polygon counts *way* beyond what is actually necessary/desirable. In fact, I found this restriction to be the single greatest problem in Atlas at the moment. You *will* end up facing LOD dropping for all but the simplest of datasets. (I even have a dataset where no setting whatsoever will produce a map that renders correctly.)
When this happens, you either lose some detail levels altogether or you see texturing seams where one chunk renders all LODs whereas one or more immediately adjoining chunks drop the finest one(s).
Coming up with a solution that solves the problem for both Atlas is not easy. The "uber-shader" thing is very unattractive.
Ben outlined a possible solution for Atlas in his second post here, but so far, I found it to complicate rendering tremendously and am still hoping for something simpler.
05/02/2008 (11:00 pm)
//EDIT: Removed bogus statements about this issue affecting MegaTerrains.I just found out what the "stray white polygons" are... no polygons at all but rather spots where Atlas tears open the terrain mesh on chunk boundaries. Generally, I found that the deeper a geometry tree, the more visible vertex morphing there will be. When this morphing starts, there will be places where a single vertex sitting on a chunk boundary will end up in different spots for either side of the bounday causing a triangular tear to appear in the terrain mesh.
Unfortunately, due to the clip stack delta problem, Atlas currently *forces* geometry trees to insane depths and polygon counts *way* beyond what is actually necessary/desirable. In fact, I found this restriction to be the single greatest problem in Atlas at the moment. You *will* end up facing LOD dropping for all but the simplest of datasets. (I even have a dataset where no setting whatsoever will produce a map that renders correctly.)
When this happens, you either lose some detail levels altogether or you see texturing seams where one chunk renders all LODs whereas one or more immediately adjoining chunks drop the finest one(s).
Coming up with a solution that solves the problem for both Atlas is not easy. The "uber-shader" thing is very unattractive.
Ben outlined a possible solution for Atlas in his second post here, but so far, I found it to complicate rendering tremendously and am still hoping for something simpler.
Associate Ben Garney
(Definitely a bug in the code, but as an aside, you're probably getting bad draw performance with that much geometry in a chunk, you could split things up a bit more and get better culling and clipmap performance.)