[B3D] Helikopter
Übersicht

![]() |
ZaPBetreff: [B3D] Helikopter |
![]() Antworten mit Zitat ![]() |
---|---|---|
Moin!
Ich habe gestern Mission Impossible 2 gesehen, und musste als ich die beiden Gehilfen von Tom Cruise in ihrem Helikopter sah, wieder an Battlefield 1942 mit Desert Combat mod denken. In diesem Mod gab es Helikopter, welche recht anspruchsvoll zu fliegen waren, die sie sich nich automatisch stabilisiert haben. Also habe ich heute morgen genau dieses Flugverhalten nachgeschrieben: Binary: (~500kb) http://vteam.vt.ohost.de/heli.zip Source: Code: [AUSKLAPPEN] ; ; Helicopter Flugverhalten ; by ZaP ; Graphics3D 800,600,32,2 SetBuffer BackBuffer() ;---------------------------------------- ;locals ;---------------------------------------- Local base = CreatePlane() Local basetex = LoadTexture("default.png") ;---------------------------------------- ;globals ;---------------------------------------- Global Piv = CreatePivot() Global cam = CreateCamera(Piv) Global VXSpeed# = 0 Global VYSpeed# = 0 Global VZSpeed# = 0 Global Vpitch# = 0 Global Vyaw# = 0 Global Vroll# = 0 Global THup# = 0 ;---------------------------------------- ;Vehicle properties ;---------------------------------------- Global DeathZone# = 0.2 ;for joystick ;---------------------------------------- ;entity defs ;---------------------------------------- PositionEntity Piv,0,1,0 CameraZoom cam,1.6 EntityTexture base,basetex ;---------------------------------------- ;MAINLOOP ;---------------------------------------- Repeat UpdateWorld RenderWorld MoveVehicle() Flip Until KeyHit(1) End Function MoveVehicle() Local jpt# = JoyPitch() Local jyw# = JoyYaw() Local jrl# = JoyRoll() Local jx# = JoyX() Local jy# = JoyY() Local jz# = JoyZ() If jy# < DeathZone#*-1 Or jy# > DeathZone# Vpitch# = Vpitch#+jy#*-0.01 EndIf If jrl# < DeathZone#*-1 Or jrl# > DeathZone# Vyaw# = Vyaw#+jrl#*-0.0001 EndIf If jx# < DeathZone#*-1 Or jx# > DeathZone# Vroll# = Vroll#+jx#*-0.01 EndIf If jz# < DeathZone#*-1 Or jz# > DeathZone# Then THup# = THup+jz# If JoyDown(1) Then THup# = THup#+0.001 If JoyDown(2) Then THup# = THup#-0.001 VYSpeed# = THup#-Abs(EntityPitch(Piv))*0.001 VXSpeed# = THup#*EntityRoll(Piv)*-0.1 VZSpeed# = EntityPitch(Piv)*0.00001+THup# If THup# =< 0 Then THup# = 0 If THup# >= 0.1 Then THup# = 0.099 MoveEntity Piv,VXSpeed#,VYSpeed#,VZSpeed# TurnEntity Piv,Vpitch#,Vyaw#,Vroll#,0 Text 0,0,VXSpeed#+" - "+VYSpeed#+" - "+VZSpeed#+" - "+THup# Text 0,12,EntityPitch(Piv)+" - "+EntityYaw(Piv)+" - "+EntityRoll(Piv) End Function Viel Spaß beim Fliegen ![]() //EDIT: Joystick benötigt! Steuerung: Joystick X,Y und Z-Achse + Schubregler ODER Joy1 und Joy2 (für Schub) |
||
Starfare: Worklog, Website (download) |
![]() |
FireballFlame |
![]() Antworten mit Zitat ![]() |
---|---|---|
Begreif ich nicht -.-
Was genau ist das? Wie testet man das? |
||
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit |
![]() |
ToeB |
![]() Antworten mit Zitat ![]() |
---|---|---|
Bei mir ruckelt das die ganze zeit obwohl ich nichts machen....
mfg Crack93 |
||
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
![]() |
ZaP |
![]() Antworten mit Zitat ![]() |
---|---|---|
Stell dir vor du sitzt in einem Hubschrauber. Und vor dir ist ein Joystick, mit 3 Achsen und 2 Tasten. Auf der ersten Taste kannst du den Schub erhöhen, auf der zweiter wieder verringern. Mit den 3 Achsen bewegst du den Hubschrauber. Alles klar ![]() Btw, vielleicht ist es sinnvoll noch einen FPS limiter einzubauen, sonst wird das Fliegen noch schwerer als es ohnehin schon ist. Ich empfehle 60 FPS. //EDIT: Das ganze ist für einen (halbwegs gut kalibrierten) Analogen Joystick geschrieben. Wer lieber mit Tastatur fliegen möchte, kann die Joystick funktionen durch die entsprechenden Tastaturabfragen ersetzen. |
||
Starfare: Worklog, Website (download) |
![]() |
mabox |
![]() Antworten mit Zitat ![]() |
---|---|---|
bei mir kommt "Memory access violation"" | ||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
cannot execute heli.exe
gibt mir winrar aus... |
||
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 ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
#ReaperNewsposter |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
StepTiger hat Folgendes geschrieben: cannot execute heli.exe
gibt mir winrar aus... Entpack es mal. Aber ich seh dafür keinen Helikopter, nur ab und zu mal kurz was rotes "vorbeifliegen". |
||
AMD Athlon 64 3500+, ATI AX800 Pro/TD, 2048 MB DRR 400 von Infineon, ♥RIP♥ (2005 - Juli 2015 -> sic!)
Blitz3D, BlitzMax, MaxGUI, Monkey X; Win7 |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Beim entpacken kommt "unknown method in heli.exe"
ganz doof bin ich auch nicht ^^ |
||
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 ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
bei mir geht die exe ich hab aber keinen joystick xD | ||
Gast |
![]() Antworten mit Zitat |
|
---|---|---|
ich kann auch net entpacken, warsch. ligt das an deinem winRAR/ZIP | ||
timmeTheOnly |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Bei mir gehts, aber ich kann nichts steuern und alles fliegt wild durch die Gegend, der Joy is frisch kalibriert. Mein Gamepad hat nur 2 Achsen... | ||
HoneschBetreff: für Tastertur |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Da die meisten hier keinen joystick haben (wie auch ich) habe ich den code für die Tastertur umgeschrieben. Ich habe nur die Steuerabfragen geändert. Mit den Tasten "1" und "2" lässt sich der Schub regulieren. Code:
Code: [AUSKLAPPEN] ; ; Helicopter Flugverhalten ; by ZaP ; Graphics3D 800,600,32,2 SetBuffer BackBuffer() ;---------------------------------------- ;locals ;---------------------------------------- Local base = CreatePlane() Local basetex = LoadTexture("default.png") ;---------------------------------------- ;globals ;---------------------------------------- Global Piv = CreatePivot() Global cam = CreateCamera(Piv) Global VXSpeed# = 0 Global VYSpeed# = 0 Global VZSpeed# = 0 Global Vpitch# = 0 Global Vyaw# = 0 Global Vroll# = 0 Global THup# = 0 ;---------------------------------------- ;Vehicle properties ;---------------------------------------- Global DeathZone# = 0.2 ;for joystick ;---------------------------------------- ;entity defs ;---------------------------------------- PositionEntity Piv,0,1,0 CameraZoom cam,1.6 EntityTexture base,basetex ;---------------------------------------- ;MAINLOOP ;---------------------------------------- MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 Repeat UpdateWorld RenderWorld MoveVehicle() Flip Until KeyHit(1) End Function MoveVehicle() ; Local jpt# = MouseY() ; Local jyw# = MouseZ() ; Local jrl# = MouseX() Local jx# = MouseXSpeed() Local jy# = MouseYSpeed() Local jz# = MouseZSpeed() If jy# < DeathZone#*-1 Or jy# > DeathZone# Vpitch# = Vpitch#+jy#*-0.01 EndIf If jrl# < DeathZone#*-1 Or jrl# > DeathZone# Vyaw# = Vyaw#+jrl#*-0.0001 EndIf If jx# < DeathZone#*-1 Or jx# > DeathZone# Vroll# = Vroll#+jx#*-0.01 EndIf If jz# < DeathZone#*-1 Or jz# > DeathZone# Then THup# = THup+jz# If KeyDown(2) Then THup# = THup#+0.001 If KeyDown(3) Then THup# = THup#-0.001 VYSpeed# = THup#-Abs(EntityPitch(Piv))*0.001 VXSpeed# = THup#*EntityRoll(Piv)*-0.1 VZSpeed# = EntityPitch(Piv)*0.00001+THup# If THup# =< 0 Then THup# = 0 If THup# >= 0.1 Then THup# = 0.099 MoveEntity Piv,VXSpeed#,VYSpeed#,VZSpeed# TurnEntity Piv,Vpitch#,Vyaw#,Vroll#,0 Text 0,0,VXSpeed#+" - "+VYSpeed#+" - "+VZSpeed#+" - "+THup# Text 0,12,EntityPitch(Piv)+" - "+EntityYaw(Piv)+" - "+EntityRoll(Piv) End Function |
||
Das Leben ist wie ein Computerspiel. Scheiß Handlung aber geile Grafik ! |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group