@Override
    public void postRender() {
        super.postRender();
        if (physicsFuture != null) {
            try {
                physicsFuture.get();
                physicsFuture = null;
            } catch (InterruptedException | ExecutionException ex) {
                Logger.getLogger(BulletAppState.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
Update this state after all rendering commands are flushed. Should be
invoked only by a subclass or by the AppStateManager. Invoked once per
frame, provided the state is attached and enabled.
jme3-jbullet/src/main/java/com/jme3/bullet/BulletAppState.java