NoUserOrg

Reto Spoerri : Game Design : Zürich

ProgrammingPanda3dTutorialKamerasteuerung

Filed in: Resources.ProgrammingPanda3dTutorialKamerasteuerung · Modified on : Fri, 31 Jul 09

====== Kamerasteuerung ======

===== Die standard-Kamerasteuerung ===== Panda3d verwendet, wenn dies nicht explizit ausgeschaltet wird eine Standartsteuerung für die Maus, ähnlich den 3d Editoren. Durch das drücken der rechten Maustaste und aufwärtsbewegen der Maus kann die Kamera nach hinten verschoben werden. Die linke Maustaste bewegt links/rechts, mit der Mittleren wird rotiert.



===== Die manuelle Kamerasteuerung ===== Die standart-Kamerasteuerung ist für ein eigens Spiel unbrauchbar, und höchstens zum Debugging geeignet.

<code type="Python"> import direct.directbase.DirectStart from pandac.PandaModules import *

  1. reposition the camera

base.disableMouse() camera.setPosHpr(Vec3(0,-15,7),Vec3(0,-15,0))

  1. load a model

panda = loader.loadModel("panda") panda.reparentTo(render) panda.setScale(.5)

run() </code>



Die automatische Kamerasteuerung kann mit dem folgenden Befehl ausgeschaltet werden: <code type="Python"> base.disableMouse() </code>



Anschliessend kann die Kamera im durch eigenen Code verschoben werden: <code type="Python"> camera.setPosHpr(Vec3(0,-15,7),Vec3(0,-15,0)) </code>



Vec3 representiert einen 3 Dimensionalen Vektor (x,y,z koordinaten). Dabei ist x rechts, y in den Bildschirm und Z nach oben. Winkel werden in Grad gemessen (360 ist eine volle Umdrehung)



<code type="Python"> panda.setScale(.5) </code>

Skaliert den Panda auf die halbe grösse.