LOD for imported static mesh
by Tobias Niva · in Constructor · 04/12/2008 (9:16 pm) · 1 replies
Since the DTS-format doesn't support lightmaps yet (TGEA 1.7.0), I choose to embed some of my DTS-shapes in DIF's...just to make the shape receive some shadows - and self shadow.
This works ok but I'm quite puzzled how to be able to LOD these "DIF'd DTS's". I'll try to explain...
I've made a tree that I have no problem LOD-ing as a DTS.
I imported it into contructor, but the LOD's in the DTS doesn't "follow through" when I watch the exported DIF in-engine (just the highest detail level is shown at all times).
So I made 3 different DTS-shapes - one for each detail level, and then placed each one of them in a separate *.csx, named "_0", "_1" and "_2".
Then I set the detail number and min pixel according to these levels.
Finally when this LOD-DIF is placed in-engine the most detailed level is shown...and when moving farther away (and a lower level is supposed to appear) the model disappears.
Any suggestions/tips?
I don't know if anyone does this...but until Static Shapes can't recieve lightmaps (and since I'm no shader wiz nor capable of diving into engine code) I can't figure out any other way to make shapes that I'm not able to model in Construcor receive static shadows.
Edit 1:
I can add that I have a brush next to my imported static shape, just to be able to check the different LOD's in-engine...and that brush changes between the levels as expected.
Edit 2:
Noticed one other thing as I fiddle with this - and that is that the DTS/DIF casts "mesh-shadows" (shadow from the actual mesh, like a polysoup-dts) on itself and other DIF's...but on the terrain it seems like the shadow is from the collision mesh/meshes. Weird.
This works ok but I'm quite puzzled how to be able to LOD these "DIF'd DTS's". I'll try to explain...
I've made a tree that I have no problem LOD-ing as a DTS.
I imported it into contructor, but the LOD's in the DTS doesn't "follow through" when I watch the exported DIF in-engine (just the highest detail level is shown at all times).
So I made 3 different DTS-shapes - one for each detail level, and then placed each one of them in a separate *.csx, named "_0", "_1" and "_2".
Then I set the detail number and min pixel according to these levels.
Finally when this LOD-DIF is placed in-engine the most detailed level is shown...and when moving farther away (and a lower level is supposed to appear) the model disappears.
Any suggestions/tips?
I don't know if anyone does this...but until Static Shapes can't recieve lightmaps (and since I'm no shader wiz nor capable of diving into engine code) I can't figure out any other way to make shapes that I'm not able to model in Construcor receive static shadows.
Edit 1:
I can add that I have a brush next to my imported static shape, just to be able to check the different LOD's in-engine...and that brush changes between the levels as expected.
Edit 2:
Noticed one other thing as I fiddle with this - and that is that the DTS/DIF casts "mesh-shadows" (shadow from the actual mesh, like a polysoup-dts) on itself and other DIF's...but on the terrain it seems like the shadow is from the collision mesh/meshes. Weird.
About the author
Graphics Artist @ www.gimbalgames.se
Torque 3D Owner Frank Geppert