@Override
    public void onUpdate(float tpf) {
        int keyFrameIndex = timeLine.getKeyFrameIndexFromTime(time);

        //iterate to make sure every key frame is triggered
        for (int i = lastFetchedKeyFrame + 1; i <= keyFrameIndex; i++) {
            KeyFrame keyFrame = timeLine.get(i);
            if (keyFrame != null) {
                keyFrame.trigger();
            }
        }

        for (int i = 0; i < cinematicEvents.size(); i++) {
            CinematicEvent ce = cinematicEvents.get(i);
            ce.internalUpdate(tpf);
        }

        lastFetchedKeyFrame = keyFrameIndex;
    }
used internally, don't call this directly.

@param tpf time per frame (in seconds)
jme3-core/src/main/java/com/jme3/cinematic/Cinematic.java