Performance Tweaking
Page: 1
There are two types of problems that can occur when a simulation becomes too complex for the computer to handle: 1) slow or jumpy animations when running the simulations in real time and 2) errors or freeze-ups during a video rendering. The jumpy animation in real-time is caused when the CPU or graphics card can no longer keep up with all the calculations and image manipulations required to render all particles in one frame of animation before time runs out and the next frame of animation must begin. Video renderings do not suffer from this limitation however because it does not occur in real time, thus each frame of animation can take however long is necessary to render it before moving on to the next frame. Thus errors and freeze ups that occur during a video rendering is almost always an issue of the computer running out of memory. Each particle on the screen requires a certain amount of memory to store all the data associated with it’s position, velocity, color and a number of other variables. When you have hundreds of thousands of these particles on the screen, the amount of memory required to store all this data can simply run out.

There are two basic ways of attacking both problems: 1) optimizing the settings in showsim and 2) optimizing your hardware. In this section we are going to focus on just the software settings. The section on System Recommendation gives the details for selecting the best hardware.

The main strategy to try speeding things up in ShowSim is to try to limit the number of particles on the screen as much as possible while effecting quality as little as possible.

Particle Throttle Setting
Particle Throttle can be used to improve real-time rendering performance as well as prevent running out of memory during the video rendering of very dense show segments. It works by reducing the particle count of streamers dynamically as needed based on the total number of particles on the screen at any given time. When there are fewer shells, no particles are reduced and you get 100% quality. But when there are many streamer shells bogging down the system, the streamers are thinned out to reduce the load. You really don’t notice it because when there are lots of shells there is too much overlap to see the streamer density decrease. On an average computer you can set the throttle to 20K and test fire glitter palm shells as fast as you can click the mouse and the animation never gets jumpy. Slower computers might require a lower throttle setting, while faster computers can use a higher setting. The throttle number represents the number of particles on the screen where throttling will max out, with half that value being the zone where throttling starts to kick in. So for a value of 20K, streamers will start to thin themselves when the particle count hits 10K, and the emitter frequency will drop to the lowest value of one spark per frame when the particle count reaches 20K. One spark per frame is when you just get what looks like a tiny dotted line behind the star for the streamer.

You can hit F12 on the keyboard to see some statistics in the upper left corner of the screen to judge the effectiveness of your throttle setting as seen in Figure 1. The display might not appear right away until you refresh the rendering screen by clicking on it. Frame counts above 30 are ideal to maintain a smooth animation. When frame count gets into the teens and lower, that’s when graphics get jumpy on the real time playback. For video rendering, the frame count is always a constant, but excessive particle counts can crash the computer so the throttle can be useful to prevent that and is more effective than the particle density setting on the video rendering page for eliminating crash problems. The particle density setting on the video recording form will reduce quality on all shells even when activity is low, whereas the throttle only reduces quality when needed and you get to control at what point it starts to take effect.

There are two particle throttle settings in ShowSim: one in the Program Settings page and one on the video recording setup. The throttle setting in Program Settings should be dialed in for optimal playback performance when watching shows in real-time. The throttle setting on the video page will override the one in Program Settings and should be dialed in for optimal video production, which usually means setting it to a higher value than the one used in Program Settings. In the video settings the throttle is only used to avoid running out of memory, so unless your show has a very dense segment you can usually set this quite a bit higher than what is used for real-time playback.

Smoke Setting
In the Environment Settings page there is a checkbox that allows you to turn on or off the use of smoke in simulations. Because smoke uses a lot of long duration particles that can accumulate over time, turning it off will reduce the overall particle count and speed up the simulator. If too much smoke is building up in a section of your show and creating bright white clouds you may also want to turn off smoke even if speed is not a problem, or possibly lower the brightness of the smoke as an alternative. For the final video production you would usually want to turn smoke back on.

Low Quality Mode
Another setting in the Environment Settings that you can use so speed up real-time playback is the low quality mode. The low quality mode will shorten streamers and use fewer particles to render color, so it can cut the particle count down quite a bit at the expense of simulation quality. Figures 3 shows the difference between the same scene shown in normal mode vs low quality mode. Note how color purity and glow is significantly reduced in the low quality mode.

Particle Density Setting
The video settings page has a Particle Density slider which is another method of trying to reduce the number of particles used in streamers. By setting this control to a lower value, less particles will be used on streamer tails. This is something you would really only want to do if the video recording session was getting out of memory errors or freezing up. The default value is 25%, but you can go as low as 15% without much change in quality. Unlike the Particle Throttle, this setting actually reduces quality regardless of how much activity there is at any given time, whereas the Particle Throttle only reduces quality when necessary.

Page 1

Figure 1: F12 statistics readout with a single silver glitter palm shell and particle throttle setting of 40K.
Figure 1: F12 statistics readout with a single silver glitter palm shell and particle throttle setting of 40K.

Figure 2: F12 statistics readout with a dozen or more silver glitter palms fired simultaneously (click image for larger size).
Figure 2: F12 statistics readout with a dozen or more silver glitter palms fired simultaneously (click image for larger size).

Figure 3: Top image shows normal quality, with lower image showing same scene in low quality mode.
Figure 3: Top image shows normal quality, with lower image showing same scene in low quality mode.


Home  |  Purchase  |  Forum  |  Documentation  |  Videos  |  Information  |  Contact Us