Abgesehen von den vorhandenen Antworten gefällt mir, wie 3D-Texturen auch prozedural erstellt werden können (eigentlich ist dies sinnvoller als eine 2D-prozedurale Textur), wie Rauschen und Fraktale, die gute und nicht verformte Texturdetails für beliebige Winkeloberflächen liefern, ohne dass dies erforderlich ist um ein Projektionsmodell auszuwählen (UV, planar, zylindrisch, sphärisch usw.).
Anstatt eine Bitmap-Ebene im 3D-Raum abzutasten, erhalten Sie mit einem einfachen Algorithmus einen eindeutigen Wert für jeden Punkt im 3D-Raum. Dadurch erhalten Sie im Grunde eine unendliche Texturauflösung und keine Probleme mit gestreckten Texturen auf winkligen Polygonen. Das sind für mich 3D "Texturen" bzw. Surface Shading ^^
Eigentlich bin ich der Bitmap-Textur-Schnupftabak in der Spieleentwicklung ziemlich müde. Wenn ich ein Raumschiff verschmutzen möchte, möchte ich ein paar Ebenen von Rauschformeln anwenden und muss keine Bitmap mit begrenzter Auflösung malen. Ein alter 3D-Fan kann träumen, oder?
Momentan macht es mir nur Spaß, diese süßen 3D-Filmoberflächenlösungen von oldschool in Farbe, normale und spiegelnde UV-Bitmaps vorzubacken. Die Demoszene tendiert (wie immer) dazu, Texturen prozedural für Echtzeit-3D (vor) zu generieren, aber es ist schwierig, gute Werkzeuge zu finden, um diesen Workflow vom Entwurf bis zur Laufzeit zu unterstützen. Die meisten verfahrenstechnischen Ansätze von Spielentwicklern scheinen sich mit der Netzgenerierung zu befassen. Ich frage mich, wie viel die Shader-Pipeline mit Hilfe einer Tiefenkarte / eines verzögerten Renderings mit Oldschool-3D-Rauschalgen umgehen kann.
... anstatt herauszufinden, wie Sie ein Texturbild parametrisch auf die Oberfläche Ihrer Form abbilden können, können Sie die volumetrischen Eigenschaften von rauschbasierten Texturen einfach an den (x, y, z) Stellen in Ihrem Pixel auswerten Shader. Auf diese Weise schnitzen Sie Ihre Textur effektiv aus einem festen Material, was häufig viel einfacher ist, als eine vernünftige unverzerrte parametrische Zuordnung zu versuchen.
Diese Art von volumetrischen, auf Rauschen basierenden prozeduralen Texturen war lange Zeit die Hauptstütze von Spielfilmen, bei denen Shader keine Echtzeitperformance erfordern. Alle Spezialeffektfilme verwenden heutzutage in hohem Maße rauschbasierte prozedurale Shader über die umfassende Verwendung der Rauschfunktion in Pixel-Shadern, die in Sprachen wie Pixars RenderMan geschrieben wurden. Ich freue mich auf einige der aufregenden visuellen Ideen von Spielfilmen, die in die nächste Generation interaktiver Unterhaltung auf dem Desktop und auf der Konsole integriert sind, da die Rauschfunktion, die für die Echtzeitnutzung in GPUs verfügbar ist, gut implementiert ist.
http://http.developer.nvidia.com/GPUGems/gpugems_ch05.html