camera um objekt drehen?

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

TOONY

Betreff: camera um objekt drehen?

BeitragFr, Nov 19, 2004 22:10
Antworten mit Zitat
Benutzer-Profile anzeigen
hi,
ich habe ein objekt (SHPERE) und möchte folgendes erreichen:

die kamera mit den links-rechts tasten um die sphere drehen
die kamera mit rauf - runter tasten auf / abwärts um die sphere drehen
mit w,s näher/weiter an die sphere gehen...

habe schon einige dinge versucht, aber nix hat geklappt...
Sad wer weiß wies geht?
 

Another progger

BeitragSa, Nov 20, 2004 10:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Vielleicht hilft dir pointentity weiter?

Vertex

BeitragSa, Nov 20, 2004 11:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Sagt dir der Begriff "Parent", "Child" oder "Pivot" was?
vertex.dreamfall.at | GitHub
 

TOONY

BeitragSa, Nov 20, 2004 21:04
Antworten mit Zitat
Benutzer-Profile anzeigen
hab ich schon probiert,
doch wenn die cam von schräg oben oder unten auf das objekt
sieht, kann man die camera nic´ht mehr um das objekt drehen
 

Darren

BeitragSa, Nov 20, 2004 22:10
Antworten mit Zitat
Benutzer-Profile anzeigen
du musst ja dazu auch den pivot drehen und nicht die cam......
 

Steve0

BeitragSa, Nov 20, 2004 22:11
Antworten mit Zitat
Benutzer-Profile anzeigen
vielleicht suchst du sowas:

Code: [AUSKLAPPEN]
Graphics3d 640,480
Setbuffer Backbuffer()
sphere=LoadMesh("DeinMesh")
cam=createcamera()
Moveentity cam,0,0,-50
Repeat
   Pointenentity cam,sphere
   If Keydown(205) Then Moveentity cam,1,0,0
   If Keydown(203) Then Moveentity cam,-1,0,0
   If Keydown(200) Then Moveentity cam,0,1,0
   If Keydown(208) Then Moveentity cam,0,-1,0
   UpdateWorld
   RenderWorld
   Flip
Until Keydown(1)


Huch hab das hin und weg zoomen vergessen.
 

Nobody-86

BeitragMo, Apr 04, 2005 15:00
Antworten mit Zitat
Benutzer-Profile anzeigen
also, dasCode: [AUSKLAPPEN]
   If Keydown(205) Then Moveentity cam,1,0,0
   If Keydown(203) Then Moveentity cam,-1,0,0
   If Keydown(200) Then Moveentity cam,0,1,0
   If Keydown(208) Then Moveentity cam,0,-1,0
kann nicht richtig sein, die kamere sol sich ja um die kugel bewegen, in einem radius den man aber auch ändern kann.
dies kann man nur mit parrent (elter), child (kind) oder Pivot (drehpunkt) realisieren, wobei pivot warscheinlich am geeignetesten ist.
schau dir mal die tuts auf www.robsite.de an, da findest bestimmt was.
(: ---> nobody is perfect <--- Smile

MaTrixCruiser

BeitragDi, Apr 05, 2005 18:50
Antworten mit Zitat
Benutzer-Profile anzeigen
BlitzBasic: [AUSKLAPPEN]
Graphics3D 640,480
SetBuffer BackBuffer()
Global camera=CreateCamera()
RotateEntity camera,45,0,0
PositionEntity camera,0,15,-10
light=CreateLight()
RotateEntity light,45,0,0

Global sphere=CreateCube()
EntityType sphere,1
EntityRadius sphere,1
PositionEntity sphere,0,11,0

cube=CreateCube()
EntityType cube,2
EntityColor cube,0,100,0
PositionEntity cube,0,-5,0
ScaleEntity cube,10,10,10

cylinder=CreateCylinder(32)
EntityType cylinder,2
EntityColor cylinder,255,0,0
PositionEntity cylinder,0,7,0
ScaleEntity cylinder,2,2,2
Global punkte,dis#
dis#=10
While Not KeyDown(1)
x#=0
y#=0
z#=0

MoveEntity sphere,x#,0,z#
TranslateEntity sphere,0,-0.5,0
Collisions 1,2,2,2
If KeyDown(203) Then ro=ro-1
If KeyDown(205) Then ro=ro+1
If KeyDown(200) Then ry=ry+1
If KeyDown(208) Then ry=ry-1
If KeyDown(17) Then dis#=dis#-0.1
If KeyDown(31) Then dis#=dis#+0.1

PositionEntity camera,EntityX(sphere),EntityY(sphere),EntityZ(sphere)
MoveEntity camera,0,0,-dis#

RotateEntity camera,ry,ro,0
;ACHTUNG: wenn du willst das sich das objekt mit dreht mach noch das mit hin:
;RotateEntity sphere,ry,ro,0 ; <-------Das hier
UpdateWorld
RenderWorld


Flip
Wend
End


schau mal pei dem thema camara

da steht das auch schon

Chester

BeitragMi, Apr 06, 2005 16:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Das ist meine Lösung des Problems:

BlitzBasic: [AUSKLAPPEN]

Graphics3D 640,480
SetBuffer BackBuffer()
piv=CreatePivot()
cam=CreateCamera(piv)
PositionEntity cam,0,0,-10

lit=CreateLight()
TurnEntity lit,45,45,0

sp=CreateSphere(10)

ScaleMesh sp,3,3,3

While Not KeyDown(1)

If KeyDown(203) TurnEntity piv,0,1,0
If KeyDown(205) TurnEntity piv,0,-1,0
If KeyDown(200) TurnEntity piv,1,0,0
If KeyDown(208) TurnEntity piv,-1,0,0



UpdateWorld
RenderWorld

Flip
Wend

EndGraphics
End

MaTrixCruiser

BeitragMi, Apr 06, 2005 17:45
Antworten mit Zitat
Benutzer-Profile anzeigen
verschieb mal die kugel an die position 0,0,10. Da klapt es schon nicht mehr.

Chester

BeitragMi, Apr 06, 2005 17:48
Antworten mit Zitat
Benutzer-Profile anzeigen
wenn du die kugel bewegst musst du den pivot natürlich auch mitbewegen

denn dann funtzt es. Also so:
BlitzBasic: [AUSKLAPPEN]

PositionEntity sp,0,0,10
PositionEntity piv,0,0,10

MaTrixCruiser

BeitragMi, Apr 06, 2005 17:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Und wenn man gleich die kugel als child vom piv nimmt( BlitzBasic: [AUSKLAPPEN]
sp=CreateSphere(10,piv)

) dann brauch man nur den piv verschieben.

So kann man das auch machen. man müsste mal schauen was besser für die peformance ist.

Lord_Vader

BeitragDo, Apr 07, 2005 8:04
Antworten mit Zitat
Benutzer-Profile anzeigen
toll und wenn er nicht will , dass sich die kamera dreht, wenn sich die kugel dreht? Dann müsste er die camera wieder zurückdrehen.

MaTrixCruiser

BeitragDo, Apr 07, 2005 13:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Dafür ist ja mein Programm gut.

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group