(K)ODE ADDForce ganz ok, aber wenn ich eine Richtung will?

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

BobrOOney

Betreff: (K)ODE ADDForce ganz ok, aber wenn ich eine Richtung will?

BeitragDi, Jan 17, 2006 13:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Es gibt ja den Befehl

Code: [AUSKLAPPEN]
KODE_dBodyAddForce(xKraft#,yKraft#,zKraft#)


(oder vielleicht einen vergleichbaren Code für Tokamak)
der Befehl funtioniert ja auch, aber mal angenommen, ich habe eine Kanone, welche eine Kugel, also einen Body, per AddForce() in eine bestimmte Richtung schiessen will.
Gibts hier ein Mathegenie, der mir ne Funtion schicken könnte?? Wär klasse
---<< Cool down in Temper City! >>---
http://www.ShadowVision-Soft.com

Jan_

Ehemaliger Admin

BeitragDi, Jan 17, 2006 14:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
KODE_dBodyAddForce(sin(Drehunghorizontal)*(1-abs(sin(Derhungvertical)))*speed^0.5,cos(Drehunghorizontal)*(1-abs(sin(Derhungvertical)))*speed^0.5,sin(Derhungvertical)*speed^0.5)


eventuell ^0.5 durch /2.0 ersetzten,
bin mir da etwas unsicher, wie das war.
between angels and insects
  • Zuletzt bearbeitet von Jan_ am Di, Jan 17, 2006 14:27, insgesamt einmal bearbeitet

stfighter01

BeitragDi, Jan 17, 2006 14:27
Antworten mit Zitat
Benutzer-Profile anzeigen
dazu brauchts kein mathegenie, aber einfach ist es auch nicht
(deshalb werd ich es nicht ausführlich erklären Wink )


deine richtung soll ja 3D sein also:

AH = winkel rauf-runter
AF = winkel am boden.

k= kraft.

xk,yk,zk = ergebnis


zk# = sin(AH) * k
dxy# = cos(AH)

xk#=cos(AH)*dxy*k
yk#=sin(AH)*dxy*k


hoffe ich hab mich nicht verrechnet.

allerdings sollte es da irgendeine andere funktion geben
(setVector od. setSpeed od sowas. )
AddForce ist mehr für konstante beschleunigung gedacht)


mfg stfighter
Denken hilft!

Xaron

BeitragDi, Jan 17, 2006 15:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn Du für Deine Kanone (Spieler, Waffe, was auch immer) eine Entity hast, die schon in die richtige Richtung zeigt (rotiert ist), geht es auch einfacher:

Code: [AUSKLAPPEN]

TFormNormal( 0, 0, 1, playerEntity, 0 )
forceX# = TFormedX() * mass# * acc#
forceY# = TFormedY() * mass# * acc#
forceZ# = TFormedZ() * mass# * acc#


Gruß - Xaron
Cerberus X - Monkey X Reloaded!

BobrOOney

BeitragMi, Jan 18, 2006 1:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke Leute, es klappt
---<< Cool down in Temper City! >>---
http://www.ShadowVision-Soft.com

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group