Hi,
Ich hab angefangen in PB zu programmieren, kann auch schon ganz gut damit umgehen. Jetzt habe ich aber das Prob, dass ich einen kleinen shooter basteln will (mit der OGRE Engine). Leider weiss ich nicht wie ich mir die Blickrichtung der Kamera ausgeben lassen kann, um einen schuss in dann ebendiese richtung fliegen lassen zu können
Kann mir jemand helfen?
PS.: An die Programmier-Cracks : Hat schon jemand einen 3D shooter gebastelt in PB und Ogre? wenn ja, wär es cool wenn er mir den sourcecode zukommen lassen könnte!
für die blickrichtung nimmst du einfach einen vektor, am besten einen einheitsvektor der länge 1 (muß aber nicht sein, ist nur für andere sachen nacher praktisch). den vektor rotierst du selbst um seinen ursprung in die richtung in die der blick gehen soll.
bei jedem frame holst du dir dann die camera position und addierst ihre x,y,z komponenten auf die komponenten deines blickrichtungsvektors (natürlich nicht so, dass der blickrichtungsvektor verändert wird, also evtl eine kopie verwenden). dann hast du den punkt auf den du mit lookat() die kamera richten kannst. wenn du einen schuß abschicken willst, dann schickst du den einfach in richtung blickrichtungsvektor, den du dann ja schon hast.
vieleicht gibt es eine bessere möglichkeit, aber ich bin noch nicht so fit mit 3d.
wenn dir dass alles nichts sagt, nimm dir ein gutes mathe buch und lerne erstmal den umgang mit vektoren.
auf purearea(?) gibts in der showcase(?) so ein UFO ballerspiel.
das knanst du dir mal saugen, wenn du willst.
super beispiel, und zu dem noch opensource
xrot.f ; Ein Winkel für die X-Achsen Rotation
zrot.f ; " für die Z-Achse
; Dann mit der Mausabfrage die Winkel immer aktualisieren
zrot + mousedeltax()
xrot + mousedeltay()
; nicht vergessen, dass der Z-Winkel nicht größer 360° und nicht kleiner als 0° wird
;und der X-Winkel nicht größer als 180° und nicht kleiner als 0° wird.
;Dann die Kamera ausrichten:
CameraLookAt(0, CameraX(0)+10*GSin(........; <= Die Formel hab ich irgendwann gepostet und grad nicht da.
; Aber nicht vergessen: Die Sin und Cos is PB sind Bogenmaß,
; also die GSin und GCos besorgen.
Ich hänge zu oft und zu lange vor dem PC! Ich muss dringend was an meinem Lebenswandel verändern!.......
Nur heute geht's grad nicht.