3DRAD IS GREAT ITS EASY TO LEARN. I HAVE CREATED TERRAIN WITH 150 OR MORE TREES. EACH TREE HAVE 2000 VERTICES APPROX.. I WANT TO APPLY ON THOSE TREES TO IMPROVE PERFORMANCE.
2ND THING WHEN I REMOVE GRASS THE FRAME RATE INCREASED TO 55+ BUT WHEN GRASS IS THERE THE FRAMERATE DROPS TO 25+. SO THE GPU INSTANCING IS BETTER FOR GRASS.. I AM USING SCANRAY FOR GRASS WHICH IS QUIT EXPENSIVE DROPING FRAME TO 25.. THERE MUST BE BETTER WAY
SO THERE ARE TWO ISSUES TREE AND GRASS WHICH BOTH CAN BE SOLVED BY IMPOSTER BUT I DONT KNOW IS THERE A WAY FOR IMPOSTER LOD. I HAVE SEEN THE EXAMPLES OF IMPOSTER LOD ALREADY BUT I DONT KNOW HOW TO USE IT USING IMPOSTER
Dont use imposters if the model isnt miles away. 3Drad is fast enough to handle polygon reduced models. Polygon Cruncher is great for LODs and it keeps Your UV mapping. LOD0=2000 polys, LOD1=1000 polys, LOD2=500 polys (Somewhere around, the more LODs the smoother)... Ofcourse its quality vs framerate I recommend to protect the edges when reducing, most programs like Unity for example have a smooth translation between LODs, 3DRad change model direct and it doesnt look perfect but it can look ok with training. Remember- dont reduce to much between LODs and make sure that the tree is placed and rotated exactly like LOD0.
correct me if i'm worng but isnt .DDS textures with mimpmaps 3drads way of doing LOD.. It's my understanding each mipmap level is a LOD each a little lower in quality . So if i'm right, why not just create your trees with dds textures and its taken care of.
I use gimp with a DDS plugin , i set my dds textures to use BC3/DXT5 and generate mipmaps.
LODs is reduced polygons on an object, mipmaps load a "mini version" of the texture on a distance, You cant see mipmap changing with Your eyes it does speed up a bit but its the amount of polygons that slow down way most. I havnt seen any 3drad game yet that really need any reducing sence most Guys around only use very lowpoly models..
I UNDERSTAND THE CONCEPT LOVE 74 AND OTHER WANT TO SAY I CHECKED LOD PROJECT THAT COMES WITH 3DRAD WHICH HAS CAPSULE LOD I CREATED 400 IMPOSTER OF THAT CAPSULE THEN I PUT A CODE FOR LOD IT WORKS BUT ALL LOD CHANGED AT THE SAME TIME.. AND WHAT I WANT IS THE IMPOSTER WHICH IS NEAR TO THE CAMERA WILL CHANGE ITS LOD NOT ALL IMPOSTER. I THINK NOT POSSIBLE IN 3DRAD.. IF I USE 300 DIFFERENT OBJECT (OBJ_00, OBJ_01 ETC) THEN I THINK THIS WILL HIT PERFORMANCE, MOREOVER HOW CAN ANYONE PUT 300 SKINMESH OBJECTS. (BREATHLESS )
Yes it is possible as an imposter is just another model (2 Polys or 4 double sided). 400 imposter of a capsule?!!! Why on Earth did You make so many??? ONE(!!!) Imposter is meant to be used on far distance from camera, on medium distance You shourld use a reduced polygon model....
They work great for things like smoke and particles but when you change the source model, all the imposters get effected too.
You can only effect individual imposters using the imposters script commands.
I honestly don't think LOD would be a good way to go using imposters.
The biggest advantage with imposters is allowing your project to be smaller to begin with and not having to add a ton of sprites etc in your project, plus imposters load faster then having to load a file from disk.
I just did see an imposter demo in 3DRad, to be honest I havnt used any imposters in My games I was pretty sure it was like a flat cutout alpha tree? Like a decal. I really have to find out more about imposters, know way to little... :/
The bese case of the imposters: It can be just a array of a struct containing 9 floats containing location,rotation and scale information. So sizeof(float) is 4. So 4*6 = 39 bytes for one imposter. Not much. GPU wise I can agree that model imposters take up some memory.
@Athanos "GPU wise I can agree that model imposters take up some memory." I forgot to mention I was talking about 3DR.
I did read a little bit about imposters and the point there is to save memory, it is like a decal LOD from a distance Here is a very simple example img:
It depends on the imposter implementation and on what model is being cloned. For example, using two imposters of a 200 polygon model will send to the vertex buffer a total of 400 plys. Simple enough. (Refering to 3D Rad's implementation).
LODs are a great was to optimize games, but as I said before, it doesn't exist in 3D Rad.
THANKS TIN SOLDIER & KULU AND OTHERS. NOW I UNDERSTAND THAT IT CANT BE DONE INDIVIDUALLY. IF I DIDNT CREATE IMPOSTER OF TREE AND PUT SKINMESH IN PLACE OF IMPOSTER. IS THERE ANY PERFORMANCE INCREASE. I TRIED MANY DIFFERENT WAY TO INCREASE PERFORMANCE AND IMPOSTER METHOD IS THE FASTEST ONCE GIVING 45 FRAMES PER SECOND AND AVERAGE 40 FRAMES. THE CHANGING OBJECT LOD WILL IMPOSE OVERHEAD ON 3DRAD WHICH DROPS FRAMES. DO ANY OF YOU HAS EXPERIMENTED ON LARGE TERRAIN. THE TERRAIN WHICH I HAVE CREATED WILL TAKE 2 HOURS AND MORE TO EXPLORE COMPLETELY.
I think your best bet may be to use the cams "viability distance in meters" it acts much like a LOD system but effects all visible things in your project except the background.
In scripting try the "iVectorCompare(Vector3,Vector3,float)" it pretty much can work like the cams visability option but on a per model basis. If you enter a float value, it returns true if the distance is less than or equal to the float value.
Added a project using the ivectorcompare and standard 3drad objects for you to play with. If you weren't sure about how to do this, this project will get you going.
Just save it without the .txt extention.
Drive the pcar around and see things pop in & out.
Use the 2 GUI objects to adjust the distance val to test , VAL_1 for the boulders, VAL_2 for the walls.
ok, so the answer to your question in the bug thread is this: blend by scripting alpha fades to user shaders, e.g 30 frames=1/2 a sec, so fade 1 lod while unfading the other, this creates a smoother transition than just show/hide in 1 frame.