Auf Thema antworten

Schau mal, hier

[code=Java]

//...

float x,y,z;

Transform3D aa;

TransformGroup a;

public BranchGroup createUniverse(BranchGroup bg)

{

// ... Licht an und so muss du können


Transform3D aa = new Transform3D();

aa.setTranslation(new Vector3f(x,y,z));

TransformGroup a = new TransformGroup(aa);

a.setCapabilities(TransformGroup.ALLOW_TRANSFORM_WRITE);

a.addChild(new Box(1,1,1));


}

[/code]


So, dann hast du ja erstmal deine BranchGroup.

Danach kannst du nur in einer Hauptklasse, die den Componenten mit der Branchgroup und .... added, einen Thread einbauen.

Am besten in den Konstruktor ganz am Ende

[code=Java]

int schleifen_dauer_milisekunden = 10;

float fall_pro_zehn_milisekunden = 0.005f;

int t = 0;


new Thread()

{

public void run()

{

while(true)

{

y -= (fall_pro_zehn_milisekunden * t/2);


aa.setTranslation(new Vector3f(x,y,z));

a.setTransform(aa);

try{

Thread.sleep(schleifen_dauer_milisekunden );

t += schleifen_dauer_milisekunden ;

}

catch(Exception e)

{

}


}

}

}.start();

[/code]


Das ist net die richtige Formel, verursacht aber auch eine verschnellerung des falls, mithilfe

von t.


Ich hoffe das reicht dir, wenn nicht schreibe ich dir ne ganze Applikation, musste mir nur sagen.



Oben