No,I call it before I attach the sprite mesh to the scane.
public abstract class DynamicEnemy extends NormalEnemy
{
............................................................
protected void loadModel(String name, boolean XML)
{
this.name=name;
xmlModel=XML;
if(XML)
{
model=MyGame.assetManager.loadModel(MODELS_PATH+""+name+""+name+".mesh.xml");
scale(1.5f);
}
else
model=MyGame.assetManager.loadModel(MODELS_PATH+""+name+""+name+".obj");
TangentBinormalGenerator.generate(model);
}
......................................................
}
public class Aerian extends DynamicEnemy……….
public class NormalEnemy extends Enemy……….
public class Enemy extends Sprite……..
public class Wraith extends Aerian
{
public Wraith()
{
init();
attachChild(model);
Reactie reactor=new Reactie(this, new Vector3f(0, 0.45f, -0.8f));
attachChild(reactor);
initGuns();
}
@Override
protected void init()
{
loadModel("Wraith",false);
Material mat=MaterialsBank.LIGHTING.clone();
addDiffuseTexture(mat, "wraith_diffuse.png");
addNormalTexture(mat, "wraith_normal.png");
model.setMaterial(mat);
}
}
public class Spammer
{
.......................................
//this methid is called once at x milisec when i need to spam a sprite
@Override
protected Sprite spam()
{
Class clasaAleasa=chooseRandom(false);
Sprite obj=null;
if(clasaAleasa.getName().equals(Banshee.class.getName()))
obj=new Banshee();
if(clasaAleasa.getName().equals(Mutalisk.class.getName()))
obj=new Mutalisk();
if(clasaAleasa.getName().equals(Phoenix.class.getName()))
obj=new Phoenix();
if(clasaAleasa.getName().equals(Reaper.class.getName()))
obj=new Reaper();
if(clasaAleasa.getName().equals(Scourge.class.getName()))
obj=new Scourge();
if(clasaAleasa.getName().equals(Scout.class.getName()))
obj=new Scout();
if(clasaAleasa.getName().equals(SuperCow.class.getName()))
obj=new SuperCow();
if(clasaAleasa.getName().equals(UFO.class.getName()))
obj=new UFO();
if(clasaAleasa.getName().equals(Wraith.class.getName()))
obj=new Wraith();
MyGame.rootNode.attachChild(obj);
// level.attachChild(obj);
return obj;
}
.......................................
}