Balancing Visuals with Performance

Making tradeoffs and using alternate methods to balance visual fidelity with performance cost.

Choose your operating system:

Windows

macOS

Linux

Considering Costs Up Front

Often times, creating the effects you need may come down to solid reference footage or images which best showcase key elements. Using reference to break effects down into these key elements can prove to be a huge time saver later on in production and give you the following information.

  • What are my key components, and where am I going to spend my performance budget?

  • What materials, textures, and assets will be required to execute these key elements?

  • How many particles will I need to execute this effect?

  • How can I create this effect using the fewest number of material instructions, draw calls, emitters possible?

  • How will this effect be utilized? Is it key to communicating critical information to the player, or is this icing on the cake that might be the first item to be cut when the scene is not running fast enough?

  • What else is going on in this scene? What is the view distance? What sort of translucency exists currently? How well is the scene running? How much action (such as combat) is going on?

For each of these questions, a tool exists to get the information. Sometimes good performance can come down to using this information to your benefit.

Alternative Means of Creating Effects

Sometimes, an effect you are tasked with creating might not be a particle effect at all. There are many cases in which it might make more sense to create your effect using a mesh instead of a particle system. For instance, there might be several cases throughout your project where you have large columns of smoke and fire off in the distance. To render these columns using particles, we would run into several issues.

  • The Game Thread cost of updating the particle systems associated with keeping the emitters around ticking.

  • The GPU cost of rendering large groups of particles, drawing over each other to create a volume.

This can also be the case for instances where you might need to create flowing water or any dense volume which might require large amounts of particles. The cost associated with placing a Static Mesh is significantly lower than the cost of placing and updating a particle system. In some cases, mixing a Static Mesh with particle systems may yield the most dynamic result. Experiment and find the solution which fulfills your scenario the best.

An effective Effects Artist finds ways of using multiple systems within UE4 to balance visuals with performance.

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss