dann verstehe ich nicht wo das problem ist.
|
Quellcode
|
1
2
|
(Kamera Position)= ((Position Spieler)*(Richtung Spieler)) - (Distanz)
(Kamera Richtung)= (Richtung Spieler)
|
Also ich hoffe ich steh nur auf der Leitung, aber ich schaffe es einfach nicht!
|
C-/C++-Quelltext
|
1
2
3
|
mCamera = tbMatrixCamera((SpielerPosition*vSpielerDirection) + tbVector3(0.0f,2.0f,-2.0f),
vSpielerDirection,
tbVector3(0.0f, 1.0f, 0.0f));
|
Glaub Du meinstest es sollte so aussehen? Dabei kommt eine sehr eingartige Bewegung der Kamera heraus, was leider überhaupt nicht stimmt!
Also hab ich follgendes auch noch probiert, keines davon funktioniert...:
|
C-/C++-Quelltext
|
1
2
3
|
mCamera = tbMatrixCamera((SpielerPosition*vSpielerDirection) + tbVector3(0.0f,2.0f,-2.0f),
SpielerPosition*vSpielerDirection,
tbVector3(0.0f, 1.0f, 0.0f));
|
|
C-/C++-Quelltext
|
1
2
3
|
mCamera = tbMatrixCamera((SpielerPosition-(tbVector3(0.0f,2.0f,-2.0f)))*vSpielerDirection,
SpielerPosition+tbVector3(0.0f,2.0f,0.0f),
tbVector3Cross(SpielerPosition-(tbVector3(0.0f,2.0f,-2.0f)*vSpielerDirection), SpielerPosition+tbVector3(0.0f, 2.0f, 0.0f)));
|
.........
...
Also mein Problem liegt darin, dass ich nicht so eine Kameraansicht hinbekomme, die ich wie auf der Zeichnung oben haben möchte....
Sondern meine Kamera, schaut zwar schon auf das Objekt und geht bei manchen Versuchen auch mit, aber sie dreht sich einfach nicht mit dem Objekt genau mit! Wäre ja auch unlogisch, wenn ich den Code wie er oben ist aufzeichne, sieht man gut, dass es so nicht funktionieren kann, wenn man zum Beispiel als Blickpunkt die Richtung des Spielers angibt, da dreht sich der Körper, die Kamera bleibt natürlich stehen und neigt sich nach unten!
Also ich hoffe wir schaffen das noch mal...