• Editor
  • Editor performance questions

Here are some questions a user asked us via email, posted here so others can benefit from the answers:

How does the mask work, and why does it affect performance so illogically? Sometimes, a mask with a higher number of vertices performs more efficiently.

Clipping performance is based on the number of clipping vertices * number of clipped vertices. Clipping performance is explained here:
https://esotericsoftware.com/spine-clipping#Performance
Here is a Twitch recording going over it:

How does the performance load technically change with an increasing number of bones in a mesh? Does it grow geometrically or arithmetically?

​The number of bones is not usually a bottleneck, but it impacts performance linearly. The most common performance problems are overusing clipping, using many deform keys, and having a very high number of vertex transforms. Docs here:
https://esotericsoftware.com/spine-metrics#Performance

How do constraints, IK, and paths affect performance?

Constraints are rarely a bottleneck, but they affect performance by causing more bone transforms. Bone world transforms are computed, constraints applied, and then the world transforms must be computed again. You can see this in the metrics view.

What are the plans for the development of Spine? Any potential implementation of a state machine or particle system?

We don't have short term plans for a state machine. We are unlikely to add a particle system, as that is a high performance feature best done by the game toolkits themselves.

Our short term plans include quality of life improvements and improved transform constraints, allowing properties to be mapped to different kinds of properties.

Related Discussions
...
  1. Clipping performance is influenced by the number of clipping vertices multiplied by the number of clipped vertices. This means that sometimes a mask with more vertices can perform better if it results in fewer clipped vertices overall. More details on clipping performance can be found in the Spine Clipping User Guide and a Twitch recording.

  2. The performance impact of increasing the number of bones in a mesh is generally linear. The main performance issues usually arise from excessive use of clipping, deform keys, and a high number of vertex transforms. More information is available in the Spine Metrics User Guide.

  3. Constraints, including IK and paths, affect performance by requiring additional bone transforms. This involves computing bone world transforms, applying constraints, and then recomputing the world transforms. These metrics can be observed in the metrics view.

  4. Currently, there are no short-term plans to implement a state machine or particle system in Spine. The focus is on quality of life improvements and enhancing transform constraints, allowing for more flexible property mapping.