Game Development Community

Help Improving Torque3D Performance

by Alkor · in Torque 3D Professional · 04/08/2011 (10:58 pm) · 4 replies

I just bought the Professional Version since I started taking C++ classes and plan on getting my hands dirty (at least educational wise) with Torque3D.
I actually ran it for the first time in a windows environment (used Mac before) and realized that some serious features miss on the Mac version.
However, this aside, the performance is excruciatingly slow. I can run UDK very good on my 2009 MacBook Pro, however T3D's demos run very slow.
My specs are not low at all, 8 gigs ram, NVidia 9600 GT Mobile edition and Intel Core 2 Duo T9660 clocking at 2.8 Gigs.
Is this problem from weak code optimization or is it on my end? Even with post processing off it still moves badly on FullHD resolution.
Later Edit : I disabled AL from the Lighting menu and the situation improved dramatically! ... however it look awful.


Any ideas?

#1
04/09/2011 (6:43 am)
Advanced Lighting is very GPU dependent, considering you have a mobile graphics card it would make sense that it would be the largest performance hit for you. In my experience, mobile GPUs even the latest versions will always take a major hit for anything that is shader intensive.
#2
04/09/2011 (8:48 am)
The Advanced Lighting is absolutely a killer on performance thanks to the shadows. ScatterSky chews up even more performance than a direct Sun for your world lighting, so I work mainly with Sun.

You can adjust the shadow quality/rendering within the editor by playing with your shadowType, texSize, shadowDistance, numSplits and 'lastsplitterrianonly' (you can see these when you click on the ScatterSky or Sun object in the World Editor on the Scene Tree to the right).

You can modify the rendering distance of the entire map and enable a fog cull by editing the properties of 'theLevelinfo' in the Scene Tree as well.

Textures and PostFX shaders play a huge roll into performance as well, when building your scene make sure to be aggressive on texture sizes and using normal maps as they can increase your draw calls. SSAO can also chew up a lot of performance, it can be enabled/disabled in your PostFX editor (under Edit in the World Editor).

Alternatively, if you wanted to work with high quality baked lightmaps then you could pickup PureLight (www.purelighttech.com). You could use the T3D world editor as a rapid prototyping tool for laying out levels, then export your results (under FILE you'll find a Collada exporter), finalize your level in your 3D modeling program of choice, then export it to PureLight for lightmap baking.

I'm developing my game on a gaming system built in 2007; Intel Q6600, 4GB of RAM and a 8800GT, I'm aiming for an average of 50fps and so far I've been able to achieve it by using the vanilla T3D editor and tools with scenes over 2 million polygons using textures ranging from 256x to 1024x. It takes quiet a bit of work, but you can put together a great looking scene in T3D that has good performance.
#3
04/09/2011 (10:43 am)
You can also overview your FPS, polycount and draw calls by going into console (press ~) and typing: metrics ("fps gfx")
#4
04/09/2011 (9:15 pm)
Thanks for the info.
I am amazed you successfully got ~50fps.
I import a terrain from L3DT Pro, shadows already baked, and even then I get around 20-40 fps.

Followed your advice but it seems to me I cannot get it bigger than 20-30.
In the FPS Tutorial on TDN my frame rate is an atrocious 17.
Any ideas as to why? I played with the settings but cannot get it higher ...