Hiho!
So ich glaub ich erzähl erstmal was bevor ich zu meinen problemen komm.
Ich bastel grad an einer kleinen 2D-Tile-Engine für RPGs. Ich habe den Core für die Engine aus dem "Programming Role Playing Games with DirectX" von Jim Adams genommen und ihn erstmal auf 2D-Spiele gestutzt und das ganze 3D zeugs rausgeschmissen und dann den Code natürlich auf DirectX 9.0 convertiert.
Dann hab ich schonmal einiges an Code geschrieben usw.. blos jetzt bin ich an einem Problem angekommen:
Wenn ich einen Character auf dem Monitor in der Gegend rumlaufen lassen will.. wie mach ich das? Also die Richtung kann ich ja ganz einfach über ne Geradensteigung festlegen.. aber wie mach ich dann weiter?
Klar.. wenn ich die Steigung von 1 hab is klar dass ich den Char dann eine Einheit weiter nach Oben und nach Rechts schick (unter der Vorraussetzung dass ich ihn nach Rechts schicken will) aber wie mach ich wenn ich ne Steigung von 0.198 oder von 0.988 oder sowas mal rausbekomm?
Meine zweite frage wäre dann: wie kann ich die Bewegung der Chars noch mit der Geschwindigkeit verändern? Ich meine wie soll ich die Variable in die Bewegungsberechnung mit reinbringen? Wenn ich sage Grundgeschwindigkeit ist 1 und es mit der Anzahl der Einheiten die der Char verschoben wird multipliziere (also zB. eine Einheit nach Oben * 1 [<-- Geschwindigkeit]) dann kommt ja nix gutes bei raus weil die nächste größe wäre dann 2 statt 1, also die Chars würden doppelt so schnell laufen. Aber wenn das wieder zu schnell ist? Wenn man als speed 1.5 sagen würde würde der Char 1.5 Einheiten nach Oben gehen.. aber wie will ich 0.5 Einheiten darstellen?? Wenn ich runden würde könnt ich ja gleich den speed auf 2 setzen.. kann mir da jemand noch nen tipp geben?
schonmal vielen dank
ich meld mich ncohmal wenn ich ne frage hab.. und natürlich halte ich euch auf dem laufenden ^^