}
// move the time forward on the layers
for (int i = 0; i < _layers.size(); ++i) {
final AnimationLayer layer = _layers.get(i);
final AbstractFiniteState state = layer.getCurrentState();
if (state != null) {
state.update(globalTime, layer);
}
}
// call apply on blend module, passing in pose
if (!_applyToPoses.isEmpty()) {
for (int i = 0; i < _applyToPoses.size(); ++i) {
final SkeletonPose pose = _applyToPoses.get(i);
_applier.applyTo(pose, this);
}
}
// apply for non-pose related assets
_applier.apply(_sceneRoot, this);
// post update to clear states
for (int i = 0; i < _layers.size(); ++i) {
final AnimationLayer layer = _layers.get(i);
final AbstractFiniteState state = layer.getCurrentState();
if (state != null) {
state.postUpdate(layer);
}
}
}