Placing DIF objects under the terrain...
by Flybynight Studios · in Torque Game Engine · 01/18/2007 (10:57 am) · 6 replies
Seeing as we can build tunnels and such by cutting holes in the terrain map and sticking a tunnel.dif in there I was planning to use the same idea to handle large structural interiors. When a player opens the door to a large building it teleports them to the inside of a .DIF and the dif is located way below the surface of the terrain. My line of thought on this is that it would save me instancing detailed and complex DIF interiors (thus saving on CPU cycles and tons of RAM) and it would allow me utilize an all or nothing LoD for the DIF as in it's either entirely detailed because the player is within 100 feet of it (IIE inside the DIF) or its at it's least complex LOD because the player is not inside it (IE 100 feet above on the terrain and doesnt chew up rendering pipeline..)
Can anyone provide some feedback on this? Any pitfalls I am not seeing? Basically think of it as "instanced housing" without the instance. Since there is no need of physical location coordinates inside a building other than to save a character in a persistant world (which I can still do underground) I think this is the best way to achieve maximum detail on my DIF objects both externally and interior wise.
Thanks in advance for your feedback it is most appreciated.
Mark
Can anyone provide some feedback on this? Any pitfalls I am not seeing? Basically think of it as "instanced housing" without the instance. Since there is no need of physical location coordinates inside a building other than to save a character in a persistant world (which I can still do underground) I think this is the best way to achieve maximum detail on my DIF objects both externally and interior wise.
Thanks in advance for your feedback it is most appreciated.
Mark
#2
I didnt mean that putting them under the terrain would ease the rendering because they woudlnt render at all ;) I meant that putting them far enough below the terrain and setting their LoD distance to more than the distance to the terrain means I could have a basic .MAP file of 10 polys for the LODd mesh and then a real .MAP file for the detail mesh.. This means that as long as the players above the terrain never got close enough to trigger the detail mesh all that would render (albeit below the terrina but it woudl still be an object) would be the 10 poly LoD .MAP...
Hope that clarifies it a bit ;)
01/18/2007 (2:38 pm)
Ahh sorry Andrew I shouldve clarified.. I didnt mean that putting them under the terrain would ease the rendering because they woudlnt render at all ;) I meant that putting them far enough below the terrain and setting their LoD distance to more than the distance to the terrain means I could have a basic .MAP file of 10 polys for the LODd mesh and then a real .MAP file for the detail mesh.. This means that as long as the players above the terrain never got close enough to trigger the detail mesh all that would render (albeit below the terrina but it woudl still be an object) would be the 10 poly LoD .MAP...
Hope that clarifies it a bit ;)
#3
What I am trying to do is take my acceptable poly limit for a larger building and use 95% of those polys on the external detailmesh. When the palyer activates the door to the structure he gets transported 150 feet bleow the surface to the "inside" of the building which is a closed DIF object with a very high first LOD .MAP and a very low (as in non existant) far lod .MAP - What I think I am doing with this is in effect doubling my acceptable poly count on my structures by being able to maximize the external details without worrying how many polys my interiors will burn up since they wont be rendered be players run around out side the building as that object is just an empty shell with a pretty outside. Where as the interior DIF can be equally as lavish as far as poly count because it's detail LOD .MAP will never be triggered by any player other than the ones right inside it. They in turn will be so far below the surface all other objects at the terrain level will be at their farthest LOD .MAP which drops the load of their rendering..
I know the theory is sound I am just wondering about feedback for any complications the engine may have because of this method..
01/18/2007 (3:51 pm)
Just to clarify some more.. Poly count is poly count.. In an MMO poly count is king becuse you can have so many players running around in an area and that will slow down your rendering pipeline.What I am trying to do is take my acceptable poly limit for a larger building and use 95% of those polys on the external detailmesh. When the palyer activates the door to the structure he gets transported 150 feet bleow the surface to the "inside" of the building which is a closed DIF object with a very high first LOD .MAP and a very low (as in non existant) far lod .MAP - What I think I am doing with this is in effect doubling my acceptable poly count on my structures by being able to maximize the external details without worrying how many polys my interiors will burn up since they wont be rendered be players run around out side the building as that object is just an empty shell with a pretty outside. Where as the interior DIF can be equally as lavish as far as poly count because it's detail LOD .MAP will never be triggered by any player other than the ones right inside it. They in turn will be so far below the surface all other objects at the terrain level will be at their farthest LOD .MAP which drops the load of their rendering..
I know the theory is sound I am just wondering about feedback for any complications the engine may have because of this method..
#4
But I think that my first reply still stands. LOD, combined with portaling, does the very thing you are after. If you have extremely detailed objects inside of a closed building, they aren't going to be rendered until you step inside the building (when they are in view of the camera), therefore, your visible poly count will still be the same on the outside of the building.
01/18/2007 (4:02 pm)
I got what you are saying now :-DBut I think that my first reply still stands. LOD, combined with portaling, does the very thing you are after. If you have extremely detailed objects inside of a closed building, they aren't going to be rendered until you step inside the building (when they are in view of the camera), therefore, your visible poly count will still be the same on the outside of the building.
#5
And yea.. we need holes for Atlas bad...
Nice holes too not big as a C5 hanger...
01/18/2007 (4:08 pm)
Use DTS for the entrances.And yea.. we need holes for Atlas bad...
Nice holes too not big as a C5 hanger...
#6
Could anyone hit me with the differences in LOD between DIF and DTS. I was sure they worked different ly between formats.. I know DIFs are meant for complex collision meshes but specifically for LOD do they function the same?
Thanks
Mark
01/18/2007 (5:07 pm)
Thanks Andrew. So basically the interior of the DIF, as long as there are no portals (IE: its closed) will not render ot outside players.. So I could just port the player inside the DIF object when they click on the door and not have any portals to the outside = maintaining max poly count both interior and exterior..Could anyone hit me with the differences in LOD between DIF and DTS. I was sure they worked different ly between formats.. I know DIFs are meant for complex collision meshes but specifically for LOD do they function the same?
Thanks
Mark
Torque Owner Andrew Hull