Tokamakke
Übersicht

KHORNBetreff: Tokamakke |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi leutz...
ich schlag mich die ganze zeit mit tokamak und ich verlier immer ![]() Ich hab einen "Ball" und will, dass dieser "Ball" beim klicken in die Richtung gestoßen wird, wo man hinschaut (wo die Kamera hinzielt). Und das ist leider gar nicht so leicht wie es sich anhört. Ich hab schon die funktionen angeschaut, hab aber nichts gefunden, was mir helfen könnte ![]() Habt ihr ne Idee wie man das macht ? Danke im voraus ![]() MfG KHORN |
||
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
hab selber keine ahnung von tokamak, aber vlt kann dir dieses tut helfen
http://www.makegame.de/tutorials/tokamak01.html |
||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
KHORN |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Den TUT kenn ich schon..
Leider hilft es nichts ![]() KHORN |
||
![]() |
Xaron |
![]() Antworten mit Zitat ![]() |
---|---|---|
Was genau geht denn nicht?
Du musst halt zunächst die Stoßrichtung bestimmen: TFormVector camera, 0, 0, kraft, camera, 0 Dann machst Du ein TOKRB_ApplyImpulse2 mit dem so transformierten Vektor (TFormedX(), ...) und setzt die Position mit PositionEntity TOKRB_Getx(tokHandle), ... Gruß - Xaron |
||
Cerberus X - Monkey X Reloaded! |
KHORN |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi Xaron.
Hört sich interessant an, aber ich versteh nicht wieso du welche parameter übergibst.. TFormVector x#,y#,z#,src_entity,dest_entity TOKRB_ApplyImpulse2(RigidBody%,X#,Y#,Z#,XPos#,YPos#,ZPos#) Wie kommst du da auf Kamera usw ? könntest du es vielleicht etwas genauer beschreiben ? Danke ![]() MfG KHORN |
||
![]() |
Xaron |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nun, auf die Kamera komme ich deshalb, weil Du dorthin schießen willst, wo die Kamera hinschaut. Prinzipiell solltest Du dafür natürlich die Entität nehmen, die die Richtung vorgeben soll.
Mit dem TFormVector transformierst Du die lokalen Koordinaten Deiner Kamera z.B. in die globalen Weltkoordinaten, die Du für ApplyImpluse brauchst. Gruß - Xaron |
||
Cerberus X - Monkey X Reloaded! |
KHORN |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
joaa..
soweit versteh ich es ja.. Aber das klappt nicht ganz ![]() BlitzBasic: [AUSKLAPPEN]
Da bekomm ich schon die erste Fehlermeldung : Too many Parameters. Muss anstelle von kraft einfach nur eine Zahl sein ? Und wie soll ich das mit ApplyImpulse machen ? Danke schonmal ![]() Gruß KHORN |
||
![]() |
Xaron |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also zunächst einmal must Du den ganzen Tokamak-Kram initialisieren.
Dann hast Du ja Deine Kamera, und in diese Richtung willst Du der Kugel einen (Billiard?) Stoß versetzen. Du möchtest ja in Z-Richtung, also von Dir weg stoßen, also brauchst Du diese Z-Richtung transformiert in Dein Kamerasystem. Deshalb: TFormvector 0, 0, kraft, camera, 0 Sorry, da hatte ich aus dem Kopf einen Parameter zu viel angegeben. ![]() Jetzt kannst Du diese Kraft auf Deine Kugel wirken lassen: TOKRB_ApplyImpulse kugel, TFormedX(), TFormedY(), TFormedZ() Wobei "kugel" Dein Tokamak-Handle der Kugel sein muss (siehe Initialisierung, wo Du ja auch die Abmessungen, Masse etc. definierst) Nun musst Du Blitzbasic natürlich noch die neue Position geben, und zwar bei jedem Schleifendurchlauf (das ApplyImpulse rufst Du nur einmal auf): PositionEntity kugelentity, TOKRB_GetX(kugel), TOKRB_GetY(kugel), TOKRB_GetZ(kugel) Wobei "kugelentity" die BB-Entität der Kugel ist (z.B. mit kugelentity=CreateSphere...). Das alles setzt voraus, dass Tokamak richtig initialisiert ist, und Du in jedem Schleifendurchlauf TOKSIM_Advance aufrufst. Wenn es jetzt immer noch nicht klappt, zeig mir mal etwas mehr Code, auch von der Initialisierung. Gruß - Xaron |
||
Cerberus X - Monkey X Reloaded! |
KHORN |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
DAANKKEEEE ![]() Juhuuu ^_^ EDIT { Eine kleine frage hätte ich noch ^^ Wie bringt man denn die Kugel wieder zum stehen ? TOKRB_ApplyImpulse rb,-TOKRB_GetVelocityX(rb),-TOKRB_GetVelocityY(rb),-TOKRB_GetVelocityZ(rb) ich habs damit versucht, aber das ist nicht so genau ![]() } MfG KHORN |
||
![]() |
Xaron |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() Reibung: TOKRB_SetLinearDamping kugel, 0.01 TOKRB_SetAngularDamping kugel,0.02 Der erste Wert ist für die Bewegung zuständig, der zweite für die Rotation. Umso näher diese Werte an 1.0 herankommen, desto stärker wird die Dämpfung. Ansonsten kannst Du die Kugel damit "zwangsstoppen": TOKRB_SetVelocity kugel, 0, 0, 0 Gruß - Xaron |
||
Cerberus X - Monkey X Reloaded! |
KHORN |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ok..
Ich danke dir wieder ![]() jetz hab ich aber wirklich alles was ich gebraucht hab ![]() Gruß KHORN |
||
![]() |
Xaron |
![]() Antworten mit Zitat ![]() |
---|---|---|
Gern geschehen! ![]() Wenn Du mal was konstant beschleunigen willst, wie z.B. ein Raumschiff, nimm besser TOKRB_SetForce... Gruß - Xaron |
||
Cerberus X - Monkey X Reloaded! |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group