Ich studiere/implementiere eine Version der Perlin Noise und Improved Perlin Noise. Perlin sagt in seinem Vortrag, dass er die smoothstep Funktion ersetztPerlin Noise: Warum würde ein Interpolant-Derivat zweiter Ordnung ein Normal-/Schattierungs-Artefakt erzeugen?
3t^2 - 2t^3
, dass er verwendet, um die 8 linearen Funktionen an der Gitterzelle Ecken mit der Funktion zu interpolieren:
6t^5 - 15t^4 + 10t^3
Da die zweite Ableitung der Smoothstep-Funktion ist diskontinuierlich. Er sagt (und das ist deutlich sichtbar in dem Bild, das er zeigt), dass dies einige visuelle Artefakte aufgrund der Art verursacht, wie die Normalen als Ergebnis dieser Funktion aussehen. Jetzt verstehe ich, was eine diskontinuierliche Funktion ist. Ich verstehe auch, wie die Normalen in der Perlin-Rauschfunktion unter Verwendung der partiellen Ableitungen der Perlin-Rauschfunktion berechnet werden, aber ich verstehe nicht, warum die Tatsache, dass Ableitung zweiter Ordnung nicht kontinuierlich ist, ein Problem mit den Normalen verursacht. Die Normalen werden unter Verwendung der Ableitung erster Ordnung der Rauschfunktion und nicht der Ableitung zweiter Ordnung berechnet. Wie kann also die Tatsache, dass die Ableitung 2. Ordnung nicht stetig ist, eine solche Auswirkung auf die Normalen haben?
Weitere Einzelheiten zu dem improved Noise Function.
Könnten Sie bitte einige Pfeile zum Bild hinzufügen, die zeigen, wo das Ergebnis jeder Funktion ist? –