Sign in to follow this  
Guest

GMAX - Frame rates improvement method

Recommended Posts

Hi all.I was reading the thread regarding placement of static aircraft when this idea came to me. I already posted it there but I thing the first results I got deserve a thread of their own.This applies only to gmax users. It's a comparison and as such "it takes two":Here's the two scenarios :1. Created a sphere in gmax with a radius of 30m, 48 segments and 1106 vertices resulting in 2208 faces.Created an array of 27 identical spheres in a 3x9 grid and 300 m apart.Exported to FS.2. Used the same sphere as above but now in a group of 3 in a line.Placed the center of the group in the 0,0 position in gmax.Exported it 9 times in fs to 9 different bgl files and 9 different center coordinates and in the same scenery folder.The end scenery was exactly the same in both cases.I moved the plane so I had only one of the spheres in sight; the rest were to the sides and rear of the plane.In the first case (all spheres in one bgl file) I got 22 to 27 fpm.The second time I got 55 to 60 fpm.From a point where all spheres where in view, I got 12 to 17 fpm in both cases.The idea and possible explanation is this :In the scenery files there are a couple of checks performed at the very beginning of the bgl code to decide if the objects contained are visible or not. If not, nothing else is done with the entire file. In the case of large areas with many objects, the processing is done internally by the projection engine. That means all the drawing details must be first processed; which means more time consumed for things we are not going to see.I think that this tactic of exporting in parts from gmax can be applied to all scenery. Don't go over the top exporting everything in a separate bgl file :-)Also every export MUST be placed in the x-y position of 0,0 in gmax and then exported to the apropriate coordinates to blend with the rest of the scenery parts. Experiment and let us know the results.Under NO circumstances I regard or imply that this test is conclusive; just a mere indication that an improvement is possible and further investigation is required. But got me quite convinced... :-)Happy benchmarking..Waiting your thoughts - resultsGeorge

Share this post


Link to post
Share on other sites
Help AVSIM continue to serve you!
Please donate today!

Nice summary of what is the problem and solution George :).I have one comment to add, when I read your text it looks to me that it seems logical to you to make an whole airport for example in one GMax file. For me that's not that logical. I only see GMax as a tool to make the objects (and then one file per object is easier to handle).For the placement of the object in the scenery (my airport for example) I use the "traditonal" tools, like GroundMaker. For this I make library objects out of the GMax objects and these can then be placed using macros. This also gives a good control over the visibility and probably similiar framerates.So to summarize this, maybe you must more look at GMax as a object design tool and not also as an object placement tool. And certainly not as a tool to design a whole town or airport at once (in one file).ArnoMember NL2000 Teamhttp://home.wanadoo.nl/arno.gerretsen

Share this post


Link to post
Share on other sites

I have been playing with Gmax for creating an airport as well, and the logic that works for me it is to create the objects in groups based on the type of object. This way you can customise the display qualities (shadowcalls, visibility distances, etc.) based on type.So I have one bgl that is all ground polygons (that I have removed the shadowcalls, etc. and fixed the layers.)One bgl that is major buildings (seen from a long distance away.)One bgl that is smaller stuff (antennas, small objects) that shows up when you are closer.As long as you use 0,0 in Gmax as the origin, they will all come in registered perfectly.Derek

Share this post


Link to post
Share on other sites

I am sure it will work, but it is not optimal. You can now for example only set the visibility range for an entire group and not for the objects within such a group. When your airport gets big and complex this can have influence on the performance.ArnoMember NL2000 Teamhttp://home.wanadoo.nl/arno.gerretsen

Share this post


Link to post
Share on other sites

Of course you are correct.If it were a bigger airport, I think I would basically do the same thing, but have each Gmax file be an area in the airport. Main terminal area, parking, etc. All of these then could be a separate Gmax file.Philosophically speaking, I liken this discussion to the difference between assembly programming and using a higher level language. One can always get better performance out of the assembler by hand tuning the program, but if you can get 95% of the performance by doing 50% of the work, why not?By the way - thanks, Arno for contributing to the forum. Every time I come and visit you seem to have answered peoples questions or given out useful information. I appreciate it.Derek

Share this post


Link to post
Share on other sites

Hi Arno, DerekArno, I see your point, but I prefer a different approach.I design the basic airport with the traditional tools (runway, taxiways and navaids) and them overlay everything else with gmax.It also comes easy to me to get into the MASM code and fine tune anything I want.I very much like the power of working in the final product. And since it has shown very good performance I prefer not to get into anything else (another way to say I'm lazy :-) ). There are also simple tricks that help improve this performance at almost no cost.Then there is another reason:Design everything in 3DS max. Export to gmax and then to FS. Then cook the textures in 3DSmax... Now, the result is beyond belief...It would simply take years to achieve the same look with the traditional design tools and once done forget modifications. It's this possibility that makes me want to do as much as possible in gmax.But again, as always, there are more than one correct and good ways to achieve something. We have seen fantastic scenery with even simpler tools than what we have now. Like they say, it's not the camera that makes the photographer :-)CheersGeorge

Share this post


Link to post
Share on other sites

I too design the airport lay-out with FSA ( a wonderful program BTW )Then I export GMAX models one by one from within GMAX.I do scenes in GMAX like groups of lights, trees, etc. I have a flat bitplane with an aerial bmp on it as a template for placing then I remove it and create say, a light standard bgl of 30 lights.The method of scenes are used in many programs, for example, Fly! uses this method of modeling in scenes.http://members.rogers.com/jkanold/jimlogo.gifhttp://members.rogers.com/eelvish/flyurl.gif

Share this post


Link to post
Share on other sites

Hi George one caveat sometimes during the export into gmax from 3DSmax you will get teselation(sub divison of polly's) that some times goes through several itinerations so allways check your mesh in gmax! As due to the above you may end up with many more polly'sthan you thought you had also the above can cause problems with mipp mapping as well. (BTW the above is the way I do my meshes make 'em in 3DS Max import them into gmax and from there re-export into 2002. Danhttp://members.rogers.com/klasik2/danlogo.gifhttp://members.rogers.com/eelvish/flyurl.gif

Share this post


Link to post
Share on other sites

Hi Dan.Unfortunatelly I do not own a copy of 3DS. I have access to it though but it's troublesome getting there.I did some tests and I did notice various small probs; but with carefull design I got arround all of them. I tried it even with the previous version of gmax (could not import 3ds files) but using a script I found and exporting from 3DS in X managed to do it. The only prob was a 90 deg rotation in the X axis.. But now is a blessing, specially for textures (final render with T-baker is the biz).Unfortunatelly toooo expensive to buy just for gaming :-)All the bestGeorge

Share this post


Link to post
Share on other sites

Hi George sorry I misunderstood you. Are you haveing problems with the importer in ver 1.1? The importer runs O.K. on my machine although as you know there are problems sometimes with Microsft'sexporter. Email me if you have any questions or need any help.BTW you render your meshes or do you just texture them?. I did not think any consumer "games" could handle a rendered object. A somewhat curious Dan.http://members.rogers.com/klasik2/danlogo.gifhttp://members.rogers.com/eelvish/flyurl.gif

Share this post


Link to post
Share on other sites

Hi Dan..No, No probs.. That was a bit of history with the old gmax.The new one if fine.Regarding the rendering, I think is the best reason to use 3DS.You skin your model in 3ds all you want with anything you want.Then you export the mesh, and you use texture baker from final render (the 3ds plugin). It creates rendered FLAT texture bitmap and alpha channel and lightmap that you can use straight in your gmax model.As you understand, the look for day and specially night is REALISTIC.Their is one more plugin that does excactly the same; I cannot remember the name right now, but I can find out if interested.I'm afraid you probaly already knew this... but that's what I meant above. I also do not know of any games that will support directly the full skined modelsCheers George

Share this post


Link to post
Share on other sites

It is my understanding that gMax is reduced version of 3dMax and all differences between programs are listed somewhere in gMax reference document file. Are there any other features, usefull for scenery design, apart from lack of renderer, that set the programs apart and would possibly give any meaning advantage to 3dMax? Heck, Discreet gave gMax away for free in order to entice some of us later [when we grow up :)]towards their 3D flagship program. Final render mentioned in previous post is commercial product at $650 and is out of question because of that. TBaker is plugin to strip textures(?). What is the name of other plugin and what does it exactly do? Ted

Share this post


Link to post
Share on other sites

Hi Ted.Starting in reverse order, yes final render is very expensive and it is a replacement rendering engine for 3DSm. It's a raytracing engine and will do many amazing things with light.Texture baker is a part of it. This is how it works :You create an object, and skin it. Put all the lights, fogs etc. A portion of light hits your object creating all the visual variations. T-baker calculates the rendered appearence and then unwraps the skin to a square bitmap. You can also have a matching lightmap.As you understand if you use this new bitmap with the same original wraping, your object will look like it was when rendered. (what we do with the night textures in fs). I will check the name of the other plugin (also commercial) and let you know.As far as I know the modeling part is more or less the same.The matterial editor is extremely complicated and powerfull in 3DS. I thing the gmax is better for the fs designer.There is a vast list of differences, but It'll take me too long. Gmax although a bit cryptic at the beginning in my opinion is very well balanced for it's purpose.The only think that lacks seriously is the ability to create them unwraped rendered textures.CheersGeorge

Share this post


Link to post
Share on other sites

Thanks for the outline, George. So the raytracing is the word. I know that since we are doing sceneries for the fun of creation, so nice effect on screen is our best and our only reward after all. As far as texturing is concerned, shouldn't Chiliskinner be worth to take another look upon. I am in tedious process of texturing some so, so complicated architectural shapes and must admit that operation of texturing is real time burden and pain. Ted

Share this post


Link to post
Share on other sites

I answer to my own question. No... eventhough ChilliSkinner is a great utility, it is not much of help in texturing process of the buildings where most of the polys are rectangular in shape. It best serves the purpose when unwrap poly is irregular in shape and through that instantenously shows to which object it belongs.Ted

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this