Extremes Kameraruckeln??

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

DJ_Mic

Betreff: Extremes Kameraruckeln??

BeitragFr, Okt 01, 2010 21:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi Leute,

sorry wenn ich wieder ein Thread eröffne, hoffe das ich nicht arg schlimm, habe aber leider nur wieder ein Problem...

Und zwar versuche ich eine 3rd Person Kamera zu schreiben, aber iwie ruckelt die Kamera wie verrückt....
So richtiges wackeln/zittern...

//EDIT: Problem gelöst!!!! Dank an ToeB

Mfg
DJ_Mic

NightPhoenix

BeitragSa, Okt 02, 2010 10:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann sag uns bitte was das Problem war und wie es gelöst wurde. So kann man auch anderen Neulingen mit der Frage über die SuFu helfen. Smile

hazumu-kun

BeitragSa, Okt 02, 2010 12:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Wahrscheinlichkeit das DJ_Mic den Thread nochmal öffnet geht gegen 0. Leider.
Warum kann es keine omnipotente Macht geben?
Weil diese omnipotente Macht in der Lage sein müsste, einen so schweren Stein zu schaffen, dass sie ihn nicht heben kann
-> nicht omnipotent
 

DJ_Mic

BeitragSa, Okt 02, 2010 12:48
Antworten mit Zitat
Benutzer-Profile anzeigen
@hazumu-kun:

Warum???.....

B2T:
Habe mein Poblem folgend gelöst. Erst kommt meine Alte Function danach folgt die Neue.

Alte Function:
BlitzBasic: [AUSKLAPPEN]
Function UpdateCam( movespeed#=1, maxdistance#=100 )
Local px#,py#,pz#
; move around player
TurnEntity CamPivot[0],0,-MouseXSpeed()/3.0,0
MoveMouse screenx%/2,LimitMouseY()

TurnEntity CamPivot[0],0,movespeed,0
px=EntityX(CamPivot[0])
py=Normalize(((MouseY()-(screeny%/2))*1.0/(screeny%/2)),-1,1,0,maxdistance)
pz=EntityZ(CamPivot[0])
PositionEntity CamPivot[1],px,py,pz
px=EntityX(CamPivot[0],1)
py=EntityY(CamPivot[0],1)
pz=EntityZ(CamPivot[0],1)
PositionEntity Camera,px,py,pz
PointEntity Camera,CamPivot[0]

End Function


Das war totaler humbug! Habe probiert, probiert und probiert und es wollte einfach nicht funktionieren.
Daraufhin habe ich ToeB nach Hilfe gebeten, und darauf folgte dieser Code.

Neuer Code:
BlitzBasic: [AUSKLAPPEN]

Function UpdateCam( maxdistance#=100 )
Local px#,py#,pz#
; move around player
TurnEntity CamPivot[0],0,-MouseXSpeed()/3.0,0
MoveMouse screenx/2.0,LimitMouseY()


px=EntityX(CamPivot[1])
py=Normalize(((MouseY()-(screeny%/2.0))*1.0/(screeny%/2.0)),-1,1,0,maxdistance)
pz=EntityZ(CamPivot[1])
TFormPoint(px, py, pz, CamPivot[0], 0 )
PositionEntity Camera, TFormedX(), TFormedY(), TFormedZ()
PointEntity Camera,CamPivot[2]

End Function


Wer nun denkt, was ist den CamPivot?? Hier kommt die Deklaration:

BlitzBasic: [AUSKLAPPEN]
                       
Const CameraDistance# = 350.0

CamPivot[0] = CreatePivot( Player\model ) ;BasePivot
CamPivot[1] = CreatePivot( 0 ) ;Camera-Positions-Pivot
CamPivot[2] = CreatePivot( Player\model ) ;Camera-Sicht-Pivot
EntityParent CamPivot[1],CamPivot[0],1
PositionEntity CamPivot[1],0,CameraDistance,-CameraDistance
EntityParent CamPivot[2],Player\model,1
PositionEntity CamPivot[2],0,PlayerSize,0


Hoffe das ist ersichtlich, wie das Problem gelöst wurde!

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group