3d bewegung funzt immer noch net!

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

feiadragon

Betreff: 3d bewegung funzt immer noch net!

BeitragDo, Dez 16, 2004 15:59
Antworten mit Zitat
Benutzer-Profile anzeigen
HI @all,

bin mal wieder kräftig am verzweifeln Sad

Dieses Prog sollte eigentlich eine kugel auf einen cube zufliegen lassen, aber sobald die startwerte nicht alle gleich sind, dann gibts chaos!

ich hab schon einiges gesucht, und die bewegungs-formel kommt auch daher... Embarassed


BlitzBasic: [AUSKLAPPEN]

Graphics3D 800,600,0,2

SetBuffer BackBuffer()

AmbientLight 255,255,255

sphere=CreateSphere()
sx#=20
sy#=25
sz#=20 ;start position der kugel
PositionEntity sphere,sx,sy,sz
EntityColor sphere,255,0,0

ziel=CreateCube()
cx#=0
cy#=0 ;start pos des ziels
cz#=0
PositionEntity ziel,cx,cy,cz
EntityColor ziel,0,255,0

cam=CreateCamera()
PositionEntity cam,20,0,-40



While Not KeyHit(1)
Cls
;
;winkelberechne

alpha# = (ATan2(sy-cy,sx-cx)+360) Mod 360
beta# = (ATan2(sx-cx,sz-cz)+360) Mod 360

;bewegen

sX = sX + (-1 * Cos( alpha ) * Cos( beta ) )
sY = sY + (-1 * Sin( beta ) )
sZ = sZ + (-1 * Sin( alpha ) * Cos( beta ) )

PositionEntity sphere,sx,sy,sz
Delay(200)


RenderWorld()
;
Text 0,0,\"Alpha: \"+alpha#
Text 0,10,\"Beta: \"+beta#

Text 200,0,\"sX: \"+sx
Text 200,10,\"sY: \"+sy
Text 200,20,\"sZ: \"+sz

Flip
Wend
End



thx, feiadragon

Jan_

Ehemaliger Admin

BeitragDo, Dez 16, 2004 16:02
Antworten mit Zitat
Benutzer-Profile anzeigen
lol, deltayaw, deltapitch benutzten!
between angels and insects
 

feiadragon

BeitragDo, Dez 16, 2004 16:14
Antworten mit Zitat
Benutzer-Profile anzeigen
mmh das sieht irgendwie einfacher aus als das was ich da gemacht hab Very Happy Very Happy Very Happy

tja gewusst wie....ich wussts net Sad

aber damit kreist der nett drumherum, aber der soll dadrauf zu fliegen, und das willer irgendwie net...

manno Embarassed
BlitzBasic: [AUSKLAPPEN]

;winkelberechne

alpha# = DeltaPitch#(sphere,ziel)
beta# = DeltaYaw#(sphere,ziel)

;bewegen

sX = sX + Cos( alpha ) * Cos( beta )
sY = sY + Sin( beta )
sZ = sZ + Sin( alpha ) * Cos( beta )

Jan_

Ehemaliger Admin

BeitragDo, Dez 16, 2004 16:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Ganz einfach :
BlitzBasic: [AUSKLAPPEN]

PointEntity sphere,ziel
MoveEntity sphere,0,0,1

wobei, diese methode einen großen nachteil hat, die Sphere bewegt sich immer zum cube
between angels and insects
 

feiadragon

BeitragDo, Dez 16, 2004 16:28
Antworten mit Zitat
Benutzer-Profile anzeigen
schadet ja net...bei meiner anwendung zumindest net...


sry jan...ich steh eher auf kompliziertes *lol*

DANKE!!!!

Jan_

Ehemaliger Admin

BeitragDo, Dez 16, 2004 16:36
Antworten mit Zitat
Benutzer-Profile anzeigen
BlitzBasic: [AUSKLAPPEN]

alpha# = DeltaPitch#(sphere,ziel)
beta# = DeltaYaw#(sphere,ziel)

TurnEntity sphere,Not(Not(alpha#)),Not(Not(beta#)),0
MoveEntity sphere,0,0,0.1
between angels and insects

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group