Meadville Space Center

Project Apollo - NASSP => Modeling => Topic started by: Tschachim on June 07, 2007, 09:47:40 AM



Title: Mesh performance optimization
Post by: Tschachim on June 07, 2007, 09:47:40 AM
Hi 3D Artists and Apollo fans,

during the work on OVP/Orbitervis (http://www.orbitersim.com/Forum/Default.aspx?g=posts&t=13884) it turned out that the most important optimization (besides avoiding too many polygons) is to reduce the mesh groups of a given mesh as far as possible. This is also explained and confirmed by DanSteph in the Orbiter forum (http://www.orbitersim.com/Forum/Default.aspx?g=posts&t=14244). For a non-animated mesh that means one group = one material, animated meshes need to retain the groups necessary for the animations, of course. If your mesh has for example 12 groups instead of 10 it's not that big deal, but the Saturn V interstage had 1419 groups instead of 4, which really was horrible.

I already optimized the following meshes:

  • High res Saturn V
  • Canaveral LC39 scenery (pad, VAB, crawler etc.)
  • CSM (except the work in progress VC)
  • Canaveral LC37
  • Parts of Canaveral LC34

so basically everthing you see in a Saturn V launch scenario, the optimization almost doubled my frame rate. I'll continue that with the remaining meshes (Saturn 1B, low res meshes, LM etc.) and post the progress here. Of course new meshes should be optimized as explained above, too.

Cheers
Tschachim


Title: Re: Mesh performance optimization
Post by: FordPrefect on June 07, 2007, 10:03:18 AM
Thanks for this vital information, Tschachim. I will keep this in mind with my projects*

I'll be curious on the FPS improvement on my old Pentium III 900 MHz, GeForce FX5200 128 Mb system!


*which are delayed big time, sorry. Expect updates at the end of this month (SIM bay + SaturnV textures)


Title: Re: Mesh performance optimization
Post by: Zachstar on June 07, 2007, 05:45:18 PM
The best FPS and quality Improvements will be from using the DX9/OpenGL clients optimized.

Thats where I hope Seth will focus his work on when he eventually starts working on the DX9 Client.

Thanks for the research!  :ThumbsUp432:


Title: Re: Mesh performance optimization
Post by: Tschachim on August 26, 2007, 12:19:26 PM
I just committed the optimized meshes for the Saturn 1B, LC34 and both the low-res Saturn V and Saturn 1B. Now most of the meshes I'm aware of (except the LM) are optimized. Please report here if I forgot one!

Cheers
Tschachim


Title: Re: Mesh performance optimization
Post by: Eddie on August 27, 2007, 08:57:50 AM
I like the look of the VC, especially the view up te tunnel! Are you working on the idea of using the tunnel to get to the LEM?


Title: Re: Mesh performance optimization
Post by: Swatch on August 27, 2007, 12:06:50 PM
its a possibility, but just wait til you see the ACTUAL VC!  What you've seen so far was a prototype, testing the texture limitations and the mesh size requirements (that's a whole lot of points for those switches).  But trust me, you guys won't be disappointed. :cool7777:


Title: Re: Mesh performance optimization
Post by: Eddie on August 27, 2007, 02:47:14 PM
Looking forward to it swatch! Sounds like a ton of work though!! :)


Title: Re: Mesh performance optimization
Post by: Swatch on April 14, 2008, 11:44:41 PM
Ok, I've touched on it before, but I'm curious again....

I've seen the AMSO mesh, and while it is very pretty, its not completely accurate, so I'm continuing work on my VC.  But one thing stands out to me with the AMSO mesh...its got all the switches.  Now I was concerned that trying to do that would bog down a machine, but evidently I was wrong.  I'm trying to decide whether the optimum path is implement many copies of a single mesh through programming or have the switches built into the mesh itself....


So does anyone know if we'll take a bigger hit through coding it in or meshing it in? 

I look forward to neither, but its in the name of accuracy!


Title: Re: Mesh performance optimization
Post by: lassombra on April 15, 2008, 12:54:45 AM
I think we'll be fine with simply meshing it in and using simple animations on the switches...

programmatically switching between different meshes for each switch...  that sounds like a lot worse than a single mesh with animations.

If I don't understand what you're saying, then just ignore me.