Figur Bewegung
Übersicht

pinochinoBetreff: Figur Bewegung |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Habe ein Kleines Problem mit der Bewegung einer Spielfigur.
ich hab eine Figur welche sich via WASD nach vorne, hinten, rechts und Links bewegen lässt. Nur schaut diese Person immer in die Selbe Richtung, was ziemlich doof aussieht ![]() Ich möchte also das sich die Figur in die Richtung Dreht in welche sie sich bewegt. Habe es schon mit Rotate & Turn probiert aber scheinbar nicht genug Erfahrung ums richtig hinzubekommen. ![]() Das ist die Bewegung wie sie jetzt ist. Für Lösungsansätze und jede Art von Hilfestellung wäre ich sehr Dankbar! Code: [AUSKLAPPEN] ;MainSchleife Repeat ;W A S D Steuerung If KeyDown(17) Then MoveEntity player, 0,0,0.1 ;w If KeyDown(31) Then MoveEntity player, 0,0,-0.1 ;s If KeyDown(30) Then MoveEntity player, -0.1,0,0 ;a If KeyDown(32) Then MoveEntity player, 0.1,0,0 ;d UpdateWorld RenderWorld Flip Until KeyHit(1) End mfg pinO |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich würde RotateEntity![]() |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
pinochino |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
RotateEntity hatte ich schon versucht ... ungefähr so
If KeyDown(17) Then MoveEntity player, 0,0,0.1 If KeyDown(17) Then RotateEntity player, 0,90,0 If KeyDown(31) Then MoveEntity player, 0,0,-0.1 If KeyDown(30) Then MoveEntity player, -0.1,0,0 If KeyDown(32) Then MoveEntity player, 0.1,0,0 Und ich hoffe ich Denke jetzt weit genug wenn ich sage, dass es zwar im ansatz funktioniert aber ich adde die selbe zeile ja quasi auch zu den anderen Tasten wenn ich also nach hinten gehe, müsste ich die 90 durch 180 ersetzen damit sich der spieler auch nach hinten dreht wenn ich dann aber nach links will muss ich für Key 31 90 setzen, jetzt schaut der Spieler nach links, drücke ich jetzt wieder w für Vorwärts (z=0.1) pitched er 180 und der Player schaut nach rechts ^^ Ich hoffe man kann mir folgen xD |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Keine zwei gleiche Bedingungen benutzten, sondern besser:
Code: [AUSKLAPPEN] If KeyDown(17) Then
MoveEntity player, 0,0,0.1 RotateEntity player, 0,90,0 EndIf Was dein Problem damit ist, verstehe ich grad' aber nicht wirklich. Edit: Funktioniert doch wunderbar. BlitzBasic: [AUSKLAPPEN] Graphics3D(800, 600, 32, 2) Edit2: Natürlich sollte man den Spieler immer in die Richtung bewegen in die er "blickt" - Code entsprechend angepasst. |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
pinochino |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ehm, Ich versuchs nochmal Deutlich zu machen. ![]() Code: [AUSKLAPPEN] If KeyDown(17) Then MoveEntity player, 0,0,0.1 RotateEntity player, 0,90,0 EndIf MoveEntity player, 0,0,0.1 = Verschiebt player auf der Z-achse, also Vorwärts. RotateEntity player, 0,90,0 = Pitched die player Ausrichtung um 90° nach links. Da beides auf einem Key liegt, bewegt man sich jetzt nach links und nicht mehr Vorwärts. Zumindest bei einer statischen Camera. Edit: Du hast ja sowas von RECHT! ![]() Ich hab einfach nicht weit genug gedacht.... ![]() Danke für deine Geduld ![]() |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Siehe oben: Erst drehen, dann entlang der Blickrichtungs-Achse bewegen. Sonst gibt's natürlich Komplikationen. | ||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
pinochino |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Versteh ich das jetzt Richtig ?
=> Die Achsen Drehen sich mit ? xD ![]() ![]() |
||
![]() |
Ana |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du dir die Hilfe anschaust wirst du sehen das es relative und absolute Achsen gibt. Die relativen Drehen sich mit, bzw sie sind relativ zu der Entity ausgerichtet.
Wenn du das nutzen willst, dann nimmst du moveentity (was eine relative Bewegung macht), wenn du es nicht nutzen willst dann translateentity (was eine Bewegung zu den absoluten Achsen macht)- |
||
Don't only practice your art,
but force your way into its secrets, for it and knowledge can raise human to divine |
pinochino |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Zitat: Wenn du dir die Hilfe anschaust wirst du sehen das es relative und absolute Achsen gibt. Die relativen Drehen sich mit, bzw sie sind relativ zu der Entity ausgerichtet.
Wenn du das nutzen willst, dann nimmst du moveentity (was eine relative Bewegung macht), wenn du es nicht nutzen willst dann translateentity (was eine Bewegung zu den absoluten Achsen macht)- Danke Ana! Die Hilfe allein konnte mir das nicht verdeutlichen! grüße pinO |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group