[German] Kirmes Simulation

Posted By: Checker123

[German] Kirmes Simulation - 09/09/08 19:03

Hallo, ich habe eine Kirmes Simulation gemacht. Aber wenn ich die Gondeln mit my.pan drehen lasse, dann Drehen die sich so Eierich. Un ich möchte jetzt das die Gondeln Fest auf dem Untergrund stehen bleiben. Der Untergrund wird mit my.roll geneigt und wenn ich die Gondel drehe, wenn der Untergrund geneigt ist, ist dieses Problem dort.

Kann mir jemand helfen?

Mfg
Checker

EDIT: Sorry ich habe im falschen Forum gepostet ich Programmiere mit C-Script bzw. WDL
Posted By: rvL_eXile

Re: [German] Kirmes Simulation - 09/10/08 15:38

Sind die Gondeln im MED genau mittig aufn Orgin gesetzt? Ansonsten probier mal vec_rotate...

cYa Sebastian
Posted By: Checker123

Re: [German] Kirmes Simulation - 09/10/08 15:41

Kannst du mir mal den Code von vec_roate sagen währe echt nett.

Mfg
Checker
Posted By: rvL_eXile

Re: [German] Kirmes Simulation - 09/10/08 15:42

Siehe Manual:
Beispiel:
var direction[3] = 10, 0, 0; // Vektor der Länge 10, zeigt gerade Ostwärts im XYZ Koordinaten System.
var angle[3] = 90, 45, 0; // pan 90 Grad, tilt 45 Grad
...
vec_rotate(direction,angle);

cYa Sebastian
Posted By: Checker123

Re: [German] Kirmes Simulation - 09/10/08 16:04

Ich habe jetzt:

Code:
action gondel1 {
	 while(1) {
	 	
	 	vec_for_vertex(temp ,pan_platte,139);
	   my.x = temp.x;
	   my.y = temp.y;
	   my.z = temp.z-10;
	   
			if(key_q == 1) {
		      if(my.roll < 50) {
		   	   my.roll += 0.2*time;
	         } 
		   }
		
		   if(key_a == 1) {
		      if(my.roll > 3.500) {
		   	   my.roll -= 0.2*time;
	         } 
		   } 
		   
var akt_pos[3] = my.x, 0, 0;
var angle[3] = my.pan, 0, my.roll;

     vec_rotate(akt_pos,angle); 



		
		my.pan += pan_speed;
		
		if(key_w == 1) {
		   if(pan_speed < 4.5) {
		   	pan_speed += 0.02*time; 
		   }
		}
		   
		if(key_x == 1) {
			if(pan_speed > -4.5) {
				pan_speed -= 0.01*time;
			}
			if(pan_speed <= 0) {
				pan_speed = 0;
			}
		}
	
				
				
		wait(1);
	}
}


aber das funktioniert nicht...
Posted By: Checker123

Re: [German] Kirmes Simulation - 09/21/08 06:33

Offensichtlich kann keiner was mit meiner erklärung anfangen ich habe mal ein Screen gemacht:


Posted By: Rasterbar

Re: [German] Kirmes Simulation - 09/21/08 10:44

Das Problem dürfte hier liegen.
Quote:

Der Untergrund wird mit my.roll geneigt und wenn ich die Gondel drehe,
wenn der Untergrund geneigt ist, ist dieses Problem dort.


So sollte es mit den Winkeln laufen, ich habe es aber nicht getestet.
Code:
define winkel_pan, skill90;
define winkel_tilt, skill91;
define winkel_roll, skill92;

action gondel1 {

	vec_set(my.winkel_pan,vector(0,0,0));	// Startwinkel der Gondel

	 while(1) {
	 	
	 	vec_for_vertex(temp ,pan_platte,139);

	   my.x = temp.x;
	   my.y = temp.y;
	   my.z = temp.z;
//	   my.z = temp.z - 10;			// Das geht so nicht weil sich die Winkel ändern ! 
	   
			if(key_q == 1) {
		      if(my.winkel_roll < 50) {
		   	   my.winkel_roll += 0.2*time;
	         } 
		   }
		
		   if(key_a == 1) {
		      if(my.winkel_roll > 3.500) {
		   	   my.winkel_roll -= 0.2*time;
	         } 
		   } 
		   

		my.winkel_pan += pan_speed;
		
		if(key_w == 1) {
		   if(pan_speed < 4.5) {
		   	pan_speed += 0.02*time; 
		   }
		}
		   
		if(key_x == 1) {
			if(pan_speed > -4.5) {
				pan_speed -= 0.01*time;
			}
			if(pan_speed <= 0) {
				pan_speed = 0;
			}
		}
	
				
		vec_set(my.pan, my.winkel_pan);	// Winkel der Gondel
		ang_add(my.pan, pan_platte.pan);	// Winkel der Gondel + Winkel der pan_platte

		wait(1);
	}
}

Posted By: Checker123

Re: [German] Kirmes Simulation - 09/21/08 12:30

Leider noch das selbe Problem cry

Code:
ang_add(my.pan, pan_platte.pan);	// Winkel der Gondel + Winkel der pan_platte


Die Platte lasse ich mit Frames drehen weil Sich die Platte hebt.

Code:
ang_add(my.pan, pan_platte.roll);	// Winkel der Gondel + Winkel der pan_platte


könnte es so gehen?
Posted By: FBL

Re: [German] Kirmes Simulation - 09/21/08 12:51

Nein, ang_add geht nämlich von Vektoren aus, also sprich du mußt den pan übergeben, ansonsten greifst du irgendwo wüst in den angrenzenden Speicherbereich.
Posted By: Checker123

Re: [German] Kirmes Simulation - 09/21/08 17:50

ah okay aber es funktionniert trotzdem nicht ich bin langsam am verzweifeln....
Posted By: Rasterbar

Re: [German] Kirmes Simulation - 09/21/08 18:47

Du verwendest eine Animation als Rotierung wenn ich das richtig verstehe, dann mußt du aus der Vertexposition die Winkel manuel berechnen. Ich bin davon ausgegangen das die Bodenplatte über Pan, Tilt-, Roll, direkt gedreht werden.
Das währen dann die Referenzwinkel. Du drehst ja nur den Roll Winkel, der Pan und Tilt Winkel muß aus der Vertexposition berechnet werden, wie das genau geht weiß ich leider auch nicht.
Ich würde in diesem Fall keine Animation nehmen.
Posted By: Checker123

Re: [German] Kirmes Simulation - 09/21/08 19:12

okay dan machen wir das so aber wie krieg ich dan wieder die Platte auf den Hydraulikarm drauf???

So dass wenn ich den Hydraulikarm hochfahre die platte drauf bleibt und nicht sonst was macht?^^
© 2024 lite-C Forums