Normalen aus 3d Werte-Gitter

Design Patterns, Erklärungen zu Algorithmen, Optimierung, Softwarearchitektur
Forumsregeln
Wenn das Problem mit einer Programmiersprache direkt zusammenhängt, bitte HIER posten.
Antworten
focus0941
Beiträge: 44
Registriert: 27.03.2023, 18:28
Benutzertext: hatte mit 3 einen Bart
Echter Name: Vladimir Ilyushko

Normalen aus 3d Werte-Gitter

Beitrag von focus0941 »

Hallo. Ich suche nun schon seit einiger Zeit eine Möglichkeit aus einem 3d Wertefeld, welches ich für den Marching-Cubes-Algorithmus nutze, Vertex-Normalen zu berechnen. Dass es geht weiß ich, schließlich gibt es ja Ableitungen in der Mathematik, allerdings weiß ich nicht wie ich dieses Wissen anwenden soll. Im Internet habe ich auch nichts gefunden, nur trilineare und tetraedrische Interpolation, aber bestimmt ja nicht die "Fließrichtung". Die einige Idee, die ich hatte und auch ausprobiert habe, ist, dass man von jedem Vertex die Werte in sehr naher Entfernung bestimmt und dann interpoliert, aber das ist nicht das, was ich brauche. Dieser Ansatz ist nämlich viel zu ineffizient und produziert in bestimmten Fällen falsche Ergebnisse. Was ich brauche ist also eine Methode aus einem Skalarfeld ein Vektorfeld zu machen, in dem man die gegebenen Werte auf irgendeine Weise miteinander verrechnet. Hoffentlich ist das nicht zu kompliziert oder noch langsamer und rechenintensiver als mein provisorischer Code.
Vielen Dank schonmal in Voraus
Benutzeravatar
joeydee
Establishment
Beiträge: 1117
Registriert: 23.04.2003, 15:29
Kontaktdaten:

Re: Normalen aus 3d Werte-Gitter

Beitrag von joeydee »

Du suchst den Gradienten des Felds.
Hier ein Artikel von Quilez dazu: https://iquilezles.org/articles/normalsSDF/
Antworten