Gamestudio Links
Zorro Links
Newest Posts
Change chart colours
by 7th_zorro. 05/11/24 09:25
Data from CSV not parsed correctly
by dr_panther. 05/06/24 18:50
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
2 registered members (AndrewAMD, VoroneTZ), 1,258 guests, and 4 spiders.
Key: Admin, Global Mod, Mod
Newest Members
Hanky27, firatv, wandaluciaia, Mega_Rod, EternallyCurious
19051 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 1 of 3 1 2 3
Ich bin zu dumm ;-) #439018
03/25/14 15:30
03/25/14 15:30
Joined: Mar 2014
Posts: 25
T
Tirti Offline OP
Newbie
Tirti  Offline OP
Newbie
T

Joined: Mar 2014
Posts: 25
Hallo,

wie der Titel schon sagt: "Ich bin zu dumm"
Ich könnte es jetzt auf meine mangelnde Schulbildung schieben,
aber ich glaube das zählt nicht.

Da ich nen mega Newbie bin, zieht da glaube ich schon eher (8 Tage Lite-C und nie davor Programmiert).

Habe derweil unzählige Tutorials gelesen und auch selber rumprobiert, aber es will nicht.

Nu das eigentliche Problem:

Jeder macht eine Ego oder Third Person View/Camera.
Das ist ja auch recht easy.
Es gibt 2 Mrd Tutorials dafür, aber keiner mit ner Iso Perspektive.

Ich Setzte also meine Camera, alles easy. Schreibe eine function damit ich die Camera
wenn ich die rechte Mousetaste gedrückt halt verschieben und drehen kann.
Zoomen mit Mouse Rad auch kein Ding. Jetzt kommt es, wie schaffe ich es
(vielleicht doch weil nur Hauptschule) das wenn ich den camera.pan sagen wir mal um 37°
ändere das der Zom noch korrekt funktioniert. Da mien Zoom auf Y X Z Achse aufsetzt
und die ja Global sind passt das nach einer kleinen Drehung nicht mehr. Ergo Zoomt meine Camera nach einer Drehung schräg :-(

Alles klappt, MouseCursor, Entitys Clickbar mit Events nur das @*+! <---selbst Zensiert
Zoomen nach einem Kamera schwenk nicht mehr.

Brauche echt Hilfe, weil "Ich bin zu dumm"

Grüße
Tirti

P.S: Habe ich vergessen, habe meinen camera.pan mit Modulo 360 genommen, somit weis ich ja welcher Winkel die camera gerade hat. Wobei mir auch das nicht wirklich hilft :-(

Last edited by Tirti; 03/25/14 15:41.
Re: Ich bin zu dumm ;-) [Re: Tirti] #439020
03/25/14 15:45
03/25/14 15:45
Joined: Oct 2011
Posts: 1,082
Germany
C
Ch40zzC0d3r Offline
Serious User
Ch40zzC0d3r  Offline
Serious User
C

Joined: Oct 2011
Posts: 1,082
Germany
Den zoom macht man (je nach dem was du meinst) mit camera.arc
Falls es das nicht ist was du willst solltest du den "zoom" vector natürlich drehen bevor du ihn wirklich zoomst:

Code:
VECTOR vZoom;
vec_set(vZoom, vector(myzoom, 0, 0));
vec_rotate(vZoom, camera.pan);
vec_add(vZoom, camera.x);



Und das ist es laugh
Vektorrechnung lerne ich auch grade erst und bin q2(1 Jahr vor abi)

Last edited by Ch40zzC0d3r; 03/25/14 17:55.
Re: Ich bin zu dumm ;-) [Re: Tirti] #439021
03/25/14 15:47
03/25/14 15:47
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
Kartoffel Offline
Expert
Kartoffel  Offline
Expert

Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
Stell dich nicht bekloppter dar als du bist, hat mit Hauptschule ers recht nix zu tun.

Poste vielleicht mal deinen code, kann so nicht viel rauslesen (schau ich mir dann an wenn ich zuheuse bin)


POTATO-MAN saves the day! - Random
Re: Ich bin zu dumm ;-) [Re: Kartoffel] #439023
03/25/14 15:57
03/25/14 15:57
Joined: Mar 2014
Posts: 25
T
Tirti Offline OP
Newbie
Tirti  Offline OP
Newbie
T

Joined: Mar 2014
Posts: 25
@Ch40zzC0d3r

Sehr Cool, ich habe da mit einer kombination von X,Y und Z Koordinaten rumgedoktert.
Wohlgemerkt ohne brauchbares Ergebnis. Mit camera.arc geht des ja super ohne großes Rechnen^^ *freu*

@Kartoffel

Danke für die aufbauenden Worte, aber traue mich ja fast nicht den Schund den ich da geschrieben habe zu Zeigen.
Wie bekomme ich den so kopiert das man den hier auch lesen kann? Also das er die Formatierung behält?

Grüße
Tirti

Re: Ich bin zu dumm ;-) [Re: Tirti] #439026
03/25/14 17:26
03/25/14 17:26
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
Kartoffel Offline
Expert
Kartoffel  Offline
Expert

Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
Code:
code tags ;)



[code]...dein code[/code]


POTATO-MAN saves the day! - Random
Re: Ich bin zu dumm ;-) [Re: Kartoffel] #439031
03/25/14 18:15
03/25/14 18:15
Joined: Mar 2014
Posts: 25
T
Tirti Offline OP
Newbie
Tirti  Offline OP
Newbie
T

Joined: Mar 2014
Posts: 25
HI Kartoffel,

also bitte nicht Hauen.
Das war der letzte nicht brauchbare Versuch

Code:
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function set_camera() 								
{		
	camera.tilt = -30; 								
	camera.y = 0; 									
	camera.x = -220; 								
	camera.z = 200; 									
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function move_cam() 								
{
while(1) 											
	{
		if(mouse_right == 1)
		{
			if(mickey.z < 0)
			{
				camera.pan += mickey.z*time_step;
			}
			if (mickey.z > 0)
				{
					camera.pan -=mickey.z*time_step;
				}
		}
		else
			{
			if (mickey.z < 0) 							
				{
					if (camera.z == 200) 				
					{
						camera.z +=0; 						
						camera.x -=0; 						
					}
					else 										
					{
						camera.z +=15; 					
						camera.x -=15;						
					}
			}
			if (mickey.z > 0) 						
				{
					if (camera.z == 50) 				
					{
						camera.z -=0; 						
						camera.x +=0; 						
					}
					else 										
					{
						camera.z -=10; 					
						camera.x +=10; 					
					}
				} 										
			}
		wait(1);
	}
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////



Grüße
Tirti

Re: Ich bin zu dumm ;-) [Re: Tirti] #439036
03/25/14 19:15
03/25/14 19:15
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
Kartoffel Offline
Expert
Kartoffel  Offline
Expert

Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
Quote:
also bitte nicht Hauen.
jetzt gibts eins auf die zwölf!

also, was du im prinzip machst ist die kamera näher zu dem (woran auch immer du hinzoomen willst) bewegen, was nicht schlecht ist, aber im fall von anderen winkeln kleines bisschen komplizierter wird.

vorschlag 1: du verkleinerst einfach camera.arc (= field of view, in grad), damit ist der zoom so wie bei einer echten kamera
-> brauchst dir um kamera winkel keine sorgen machen

vorschlag 2: du machst das gleiche wie jetzt, nur mit vektoren (in dem fall würde sich die kamera wirklich auf das 'ziel' zubewegen)

sollte beides ganz gut klappen, kommt halt drauf an, welchen effekt du haben willst.
das ganze vektor zeug ist nur relativ haarig beim verstehn, wenn mans aber mal gerafft hat geht das ohne probleme.


POTATO-MAN saves the day! - Random
Re: Ich bin zu dumm ;-) [Re: Kartoffel] #439038
03/25/14 19:31
03/25/14 19:31
Joined: Mar 2014
Posts: 25
T
Tirti Offline OP
Newbie
Tirti  Offline OP
Newbie
T

Joined: Mar 2014
Posts: 25
Also das ist jetzt die neue Version ;-)

Code:
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function set_camera() 								
{		
	camera.tilt = -30; 								
	camera.y = 0; 									
	camera.x = -220; 								
	camera.z = 200; 										
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function move_cam() 								
{
	while(1) 											
		{
			if (mouse_right == 1)
				{
					camera.pan -= mickey.z*time_step;
					camera.x += mouse_force.y;
					camera.y += mouse_force.x;
				}
			else
				{
					camera.arc -= mickey.z*time_step;
				}
			wait(1); 										
		}
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////



neuse Problem ist das wenn ich auf die rechte Maustatse drücke, dann per Rad die PAN ändere funktioniert das links rechts bewegen natürlich nicht mehr so wie es soll :-(

Grüße
Tirti

Re: Ich bin zu dumm ;-) [Re: Tirti] #439040
03/25/14 19:34
03/25/14 19:34
Joined: Sep 2003
Posts: 6,861
Kiel (Germany)
Superku Offline
Senior Expert
Superku  Offline
Senior Expert

Joined: Sep 2003
Posts: 6,861
Kiel (Germany)
Guck dir mal vec_rotate/ den ersten Antwortpost in diesem Thread an.


"Falls das Resultat nicht einfach nur dermassen gut aussieht, sollten Sie nochmal von vorn anfangen..." - Manual

Check out my new game: Pogostuck: Rage With Your Friends
Re: Ich bin zu dumm ;-) [Re: Superku] #439046
03/25/14 19:49
03/25/14 19:49
Joined: Mar 2014
Posts: 25
T
Tirti Offline OP
Newbie
Tirti  Offline OP
Newbie
T

Joined: Mar 2014
Posts: 25
@Superku,

also muss ich mich wohl doch mit Vectoren beschäftigen :-(
Aber wie kann ich den Vector der Bewegung ändern?

VECTOR newCamx;
vec_set(nemCamx, vector(camera.x+mouse_force.y, camera.y, camera.z));
vec_rotate(newCamx, camera.pan);
vec_add(newCamx, camera.x);

????
Ist mehr raten als wissen
Da ich ja jetzt nicht mehr den Vector für den Zoom sondern für die x y Bewegung brauche, müsste ich das ja 2 mal machen oder? Einmal für x und für y da sich die Camera ja um beide Achsen gleichzeitig bewegen muss?

Grüße
Tirti

Page 1 of 3 1 2 3

Moderated by  HeelX, Lukas, rayp, Rei_Ayanami, Superku, Tobias, TWO, VeT 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1