예제 #1
0
  @Override
  public void render() {
    if (animation != null) {
      int keyFrame = animation.getKeyFrame() + animation.getKeyFrameOffset() - 1;

      if (keyFrame > -1 && keyFrame < keyFrames.length) {
        keyFrames[keyFrame].bind();

        OpenGLRenderer.gl.glPushMatrix();

        OpenGLRenderer.gl.glTranslatef(position.x, position.y, position.z);

        if (rx != 0) OpenGLRenderer.gl.glRotatef(rx, 1, 0, 0);
        if (ry != 0) OpenGLRenderer.gl.glRotatef(ry, 0, 1, 0);
        if (rz != 0) OpenGLRenderer.gl.glRotatef(rz, 0, 0, 1);

        if (sx > 0 && sy > 0 && sz > 0) OpenGLRenderer.gl.glScalef(sx, sy, sz);

        renderPosition();

        keyFrames[keyFrame].render();

        OpenGLRenderer.gl.glPopMatrix();

        keyFrames[keyFrame].unbind();
      }
    }
  }
예제 #2
0
 public boolean isPaused() {
   return animation.isPaused();
 }
예제 #3
0
 public void resume() {
   animation.resume();
 }
예제 #4
0
 public void pause() {
   animation.pause();
 }
예제 #5
0
 public void start() {
   animation.start();
 }
예제 #6
0
 public boolean isStarted() {
   return animation.isStarted();
 }
예제 #7
0
 public boolean isEnded() {
   return animation.isEnded();
 }