Vertex-Normale in einem Quad finden...
Übersicht

Kernel32Betreff: Vertex-Normale in einem Quad finden... |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Habe eben folgendes Problem: ich habe ein Mesh mit einzelnen Quads, jeweils vier Punkte, und möchte die Normale jedes der vier Punkte, also deren jeweilige "Blickrichtung" herausfinden. VertexNX|VertexNY|VertexNZ liefern bei mir immer nur 0.0, wahrscheinlich, weil ein Vertex dafür immer mit mindestens zwei Triangles verknüpft sein muss, oder sehe ich das falsch?
Ich möchte nämlich jeden der Punkte heller bzw. dunkler färben, je nachdem, in welche Richtung der Punkt zeigt (für eine eigene Shading-Routine). Ich habe das schon mit den Normalen der jeweiligen Triangles versucht, aber das führt zu einem sehr groben "Flat-Shading". Ich denke, wenn ich das für jeden einzelnen Punkt mache, wirkt es weicher. Gibt es da eine Möglichkeit? |
||
-------------
Wollte neulich Herrn Brot anrufen, aber da war belegt. Dann hab ich bei Wheight Watcher's angerufen, aber niemand hat abgenommen. Schliesslich hab ich im Irak angerufen, aber dort war besetzt o.O |
![]() |
Vertex |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die Vertexnormalen sind unabhängig von den Triangles. Sie sind sicher einfach nur nicht gesetzt wurden. Setze sie beim erstellen so, dass die dem Quadnormal gleichen. N = (V1 - V0) x (V2 - V0) und dann N nochmal normalisieren.
Kreuzprodukt wird so berechnet: ![]() mfg olli |
||
vertex.dreamfall.at | GitHub |
Kernel32 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Alles klar, danke dir ![]() |
||
-------------
Wollte neulich Herrn Brot anrufen, aber da war belegt. Dann hab ich bei Wheight Watcher's angerufen, aber niemand hat abgenommen. Schliesslich hab ich im Irak angerufen, aber dort war besetzt o.O |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
ql:UpdateNormals macht doch nichts anderes und das besonders 'weich'. | ||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group