Show Md5Animation.java syntax highlighted
/*
* Copyright (C) 2001-2005 Pleasant nightmare studio
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
package skunkworks;
import com.jme.app.SimpleGame;
import com.jme.input.MouseInput;
import com.jme.renderer.ColorRGBA;
import md5reader.MD5AnimReader;
import md5reader.MD5MeshReader;
import model.Model;
import model.SkeletalModelInstance;
import model.animation.Animation;
import model.animation.AnimationAnimator;
import model.animation.AnimationController;
import java.io.FileInputStream;
import java.io.IOException;
/**
* @author: deus
* @since: Jun 5, 2007 8:41:51 AM
* @version: 1.0
*/
public class Md5Animation extends SimpleGame {
private Model bodyModel;
private Animation bodyAnimation;
protected void simpleInitGame() {
try {
bodyModel = new MD5MeshReader().readModel(new FileInputStream("models/mdx/boned-mesh.md5mesh"));
bodyAnimation = new MD5AnimReader().readAnimation(new FileInputStream("models/mdx/boned-mesh.md5anim"));
} catch (IOException e) {
throw new RuntimeException(e);
}
MouseInput.get().setCursorVisible(true);
lightState.get(0).setAmbient(new ColorRGBA(1.5f, 1.5f, 1.5f, 1.0f));
SkeletalModelInstance bodyInstance = new SkeletalModelInstance(bodyModel);
AnimationController bodyAnimator = bodyInstance.addAnimationController();
AnimationAnimator anim = bodyAnimator.addAnimation(bodyAnimation);
anim.setInterpolationThreshold(0f);
bodyAnimator.update(0f);
rootNode.detachAllChildren();
rootNode.attachChild(bodyInstance);
}
public static void main(String[] args) {
Md5Animation a = new Md5Animation();
a.setDialogBehaviour(FIRSTRUN_OR_NOCONFIGFILE_SHOW_PROPS_DIALOG);
a.start();
}
}
See more files for this project here