D3D - perspektivische Projektion?



  • Wo liegt der Fluchtpunkt (Projektionszentrum) bei einer perpektivschen Projektion bei D3D?



  • Vertexwahn schrieb:

    Wo liegt der Fluchtpunkt (Projektionszentrum) bei einer perpektivschen Projektion bei D3D?

    Könnte man eigentlich beliebig mit der Projektionsmatrix einstellen, wenn du darauf hinaus willst.



  • Entfernte Objekte sollen ja kleiner erscheinen als nahe? Falls diese Frage mit ja beantwortet wurde dann stellt sich eine weitere Frage – wird ein Objekt in Richtung Fluchtpunkt kleiner oder größer? – Normalerweiße sollte es ja so sein das ein Objekt das uns nah ist größer ist als ein gleich großes Objekt das weiter entfernt ist. Das ist aber bei der perspektivische Projektion anders:

    siehe folgendes Bild:
    http://people.freenet.de/cplusplus/image010.jpg


  • Mod

    Vertexwahn schrieb:

    Normalerweiße sollte es ja so sein das ein Objekt das uns nah ist größer ist als ein gleich großes Objekt das weiter entfernt ist. Das ist aber bei der perspektivische Projektion anders:

    dein bild sagt mir irgendwie nicht viel.

    bei der perspektivischen projektion werden die objekte (die positionen) durch z also durch ihre entfernung zum betrachter dividiert, es ist garnicht anders möglich als dass entfernte objekte kleiner erscheinen als nahe sofern sie die gleiche reale größe haben.

    somit frage ich mich was du sagen wolltest, denn du wiedersprichst der eigenschaft von projektionen/divisionen 😃 . oder meintest du die orthogonale projektion?

    rapso->greets();



  • Vertexwahn schrieb:

    Entfernte Objekte sollen ja kleiner erscheinen als nahe? Falls diese Frage mit ja beantwortet wurde dann stellt sich eine weitere Frage – wird ein Objekt in Richtung Fluchtpunkt kleiner oder größer? – Normalerweiße sollte es ja so sein das ein Objekt das uns nah ist größer ist als ein gleich großes Objekt das weiter entfernt ist. Das ist aber bei der perspektivische Projektion anders:

    siehe folgendes Bild:
    http://people.freenet.de/cplusplus/image010.jpg

    Also ich verstehe nicht was du damit sagen willst. Auf dem Bild wird es doch nach hinten kleiner.



  • > Auf dem Bild wird es doch nach hinten kleiner

    hinten liegt das Projektionszentrum - also der Augpunkt - praktisch die virtuelle Kamera - der Ursprung des Viewkoordinatensystems - verstehst du was ich meine?

    > dein bild sagt mir irgendwie nicht viel.

    ok - ich hab mal einen kurzen Text über mein Problem auf folgendes Seite gepackt:
    http://people.freenet.de/cplusplus/projectiontransform.html

    ich wollte darauf hinaus das bei einer perpektivischen Projektion - perpektivische Verkürzungen auftretten - nur wo wird ein Objekt kleiner - mit mehr entfernung zum Projektionszentrum oder mit weniger entfernung?

    es ist so wie ich es beschrieben habe - und das ist ja genau das verwunderliche - das Objekte die näher sind größer Dargestellte werden kommt erst dadurch das das Sichtvolumen auf einen Quader Skaliert wird (vorher war es ja eine Pyramide)- ich wollte eigentlich eine bestätigung dieser Theorie ;), die mir irgendwie Angst macht



  • Ich möchte einiges zu deiner Seite sagen, ohne mich um die genauen Begriffsdefinitionen zu kümmern. Evtl. vermischst oder vertauschst du dort diese Begriffe, das möchte ich jetzt nicht beurteilen, da ich die Begriffe nicht nachschlagen möchte. Meine Aussagen werden also allein auf der Information der Webseite basieren.

    1. Es gibt nur ein Projektionszentrum Z, dort wo sich alle Projektionsstrahlen treffen. Das Bild P' eines jeden Punktes P ensteht durch den Schnitt der Projektionsebene mit der Geraden durch P und Z.

    2. Der Abstand zwischen zwei Punkten A,B ist unabhängig von dem Abstand zum Fluchtpunkt, der gleichzeitig Augpunkt und Z ist. Was sich überhaupt ändern kann, ist der Abstand von A' und B'. Aber auch deren Abstand ist nicht nur von Z abhängig, sondern auch von der Projektionsebene.

    3. Seien A und B zwei Punkte mit dem Abstand k untereinander und dem Abstand m zur Projektionsebene. Bei gleichem Z ist der projezierte Abstand von A und B nur abhängig von k. Liegen A und B nicht auf der selben Seite der Projektionsebene wie Z, so ist bei grösserem m der Abstand von A' und B' geringer. Liegen sie auf der anderen Seite, so ist der Abstand am grössten, wenn k gegen den Abstand von Z und der Projektionsebene geht.

    Eine Anmerkung zum Bild. Eine Filmkamera macht eine Aufnahme. Die Objekte, die auf der Kamera am grössten aufgenommen werden, sind nicht die, die für einen Schauspieler am grössten aussehen. Auf dem oben genannten Bild wird der Würfel also für den Betrachter kleiner, wenn er sich nach hinten bewegen würde. Für die Kamera die am hinteren Ende des Bildes sitzt, wird er zur gleichen Zeit aber grösser. Das Bild widerspricht dem Prinzip also nicht.

    Noch Fragen oder Ängste?



  • > Das Bild widerspricht dem Prinzip also nicht.

    Danke für die Antwort

    "Bei den obigen Skizzen soll nur der Unterschied zwischen Ein-Punkt-Perspektive, Zwei-Punkt-Perpektive, Drei-Punkt-Perpektive und andere dargestellt werden. Will man auf einen 2D Monitor einen perspektivesche Projektion darstellen, so kann man den Fluchtpunkt (Projektionszentrum) nie sehen - was ja unsinn wäre - bei obigen Skizzen ist aber der Fluchtpunkt eingezeichnet - das ist Unsinn bzw. eine optische Täuschung."

    Kann man das so formulieren?



  • Also das der Augpunkte normalerweise vor dem Bildschirm liegt und daher nicht projeziert wird (sondern nur Sachen hinter der near clipping plane), ist ja allgemein bekannt. Oder hast du es schonmal geschafft, so nah an den Monitor zu gehen, das du mit dem Auge schon hinter der Mattscheibe warst? 😉

    Trotzdem wäre ich mit solchen absoluten Aussagen vorsichtig, und erst recht würde ich das dann nicht als Unsinn bezeichnen. Wenn man schon seinen eigenen Augpunkt nicht sieht, kann man ja beispielsweise immer noch den eines anderen sehen. In Commandos wurde die Projektion, die einer der gegnerischen Soldaten wahrnehmen müsste durch grüne Sichtkegel visualisiert. Vollkommen logisch kommen dabei dieselben Regeln zur Anwendung, das Sichtfeld ist durch Geraden begrenzt, welche sich im Augpunkt treffen.


Anmelden zum Antworten