Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AVEVA™ XR Studio

Optimization Strategies (Legacy)

  • Last UpdatedApr 02, 2025
  • 2 minute read

Optimization strategies

There are some ways to reduce the number of animation frames exported, in order to export less data.

This involves making the engine interpolate between frames, so as not to see artifacts.

Scenario example

Let's take as an example an animation of 120 frames, with the timeline of 3DSMax set 30 FPS.

There are two ways to optimize data:

  • Using the fFPS parameter, or

  • Using the fSamplesPerSecond parameter

Scenario using fFPS parameter

Objective: The animation lasts (120frames / 30FPS) = 4 seconds. We want to reduce the data by one third.

Steps

  1. Make the 3DSMax timeline animation keys present only in the (120frames / 3) = 40frames space.

  2. Set the dwStartFrame, dwEndFrame parameters correctly using the range of frames actually used (40 frames).

  3. If left as is, the animation would be played by the engine very quickly (3X the speed) because the animation keys are very closely spaced.

  4. By setting the parameter fFPS = 10 instead, the engine plays the animation more slowly, compensating for the animation keys moved earlier.

  5. The exported animation contains 40 frames instead of 120. The engine plays them in (40Frames / 10FPS) = 4 seconds, just as the original animation.

Scenario using fSamplesPerSecond parameter

Objective: The animation lasts (120frames / 30FPS) = 4 seconds. We want to reduce the data by one third.

Steps

  1. If we set the fSamplesPerSecond parameter to 10, we tell the exporter to export 10 frames per second.

  2. In this way, we will export (4 seconds * 10 frames) = 40 frames, instead of 120 frames. However,the animation will still last 4 seconds.

  3. Enable the bInterpolate parameter so as not to have shots during playback, since the FPS will definitely make more than the number of frames exported per second). The bInterpolate parameter works at the exporter level. The exporter exports N frames per second in the range of frames specified by dwStartFrame, dwEndFrame.

  4. To change the playback speed of the animation, use the internal functions of the engine.

    Enabling the bInterpolate parameter

    It is essential to enable the bInterpolate parameter so as not to have shots during playback.

    The bInterpolate parameter works at the engine level; however, the exporter exports all the frames that are specified by dwStartFrame, dwEndFrame.

    This parameter can also be useful to change the playback speed in the motor.

    In This Topic
    TitleResults for “How to create a CRG?”Also Available in