autos zum driften bringen

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

rctuner

Betreff: autos zum driften bringen

BeitragMi, Jan 24, 2007 22:36
Antworten mit Zitat
Benutzer-Profile anzeigen
hallo,

ich hab versucht meine Autos zum driften zu bekommen, hier mein code:

Code: [AUSKLAPPEN]
drift_erl=1

   
      If EntityCollided( wheels[4],TYPE_WORLD )
         If KeyDown(203)
            TurnEntity car,0,((speed/170)+Sgn(speed)),0
            drift_val#=drift_val#+.17
            drift_erl=0   
         EndIf
         
   
         If KeyDown(205)
            TurnEntity car,0,-((speed/170)+Sgn(speed)),0
            drift_val#=drift_val#-.17
            drift_erl=0
         EndIf
         



If drift_val<10 And drift_val > 0 Or drift_val>-10 And drift_val < 0
   RotateEntity drift_target,EntityPitch#(car),EntityYaw#(car),EntityRoll#(car)
EndIf

If drift_erl=1
If drift_val>1
   drift_val=drift_val-0.2
EndIf
EndIf

If drift_erl=1
If drift_val<-1
   drift_val=drift_val+0.2
EndIf
EndIf


If drift_val>10
   MoveEntity drift_target,0,0,speed/2
   EntityParent car,drift_target
EndIf

If drift_val<-10
   MoveEntity drift_target,0,0,-speed/2
   EntityParent car,drift_target
EndIf


Die überlegung ist, dass wenn man die Lenkung gedrückt hält, drift_val# steigt. Wenn drift_val# über oder unter 10 dann wird das auto an den pivot gehängt welcher nur geupdated wird wenn drift_val<10 And drift_val > 0 Or drift_val>-10 And drift_val < 0.
Komischerweise klappt das nicht so wie es soll, manchmal driftet das auto in die andere Richtung als es soll... Wo ist der/die Fehler?
[Y[our Film, Game ]M[akers and more [F]un!
www.Master-Entertainment.de.vu

[AMD 6000+ X2 @ 6400+][2GB RAM][NVidia 8800GT 512 MB]

NightPhoenix

BeitragMi, Jan 24, 2007 22:49
Antworten mit Zitat
Benutzer-Profile anzeigen
nur ein ersatz ^^

Code: [AUSKLAPPEN]
if keyhit(203) then
turnentity RichtungspivotFahrzeug,0,-2,0
drift#=drift#+0.1
else
drift#=0
endif

if keyhit(205) then
turnentity Richtungspivot,0,2,0
drift#=drift#-0.1
else
drift#=0
endif

moveentity RichtungspivotFahrzeug,drift#,0,0

if drift#>1 then drift#=1
if drift#<-1 then drift#=-1


somit hat man das etwas gefaked.... wäre wohl eine einfachere Lösung...
habs jetz nicht getestet, sollte aber prinzipiell funzen
MfG. Wink

StepTiger

BeitragMi, Jan 24, 2007 22:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Also, das ist ja ein netter Ansatz, jedoch wird das so nicht funktionieren.

Arbeite mit Kräften in x und z Richtung. Bei Schiefstand wird die Kraft der jeweiligen Richtung abgebremst. So erhällst du automatisch Trägheit und Drift.

Sinus und Cosinus sind hier sehr praktisch.
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer:
AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t
Gewinner: BP Code Compo #2
Π=3.141592653589793238...<--- und das aus dem kopf Laughing
Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser.

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group