Texturen

Texturen sind ein leistungsstarkes Tool, um mit dem Computer realistische 3D-Bilder zu erzeugen. Direct3D unterstützt einen umfangreichen Texturfunktionssatz und ermöglicht Entwicklern dadurch den einfachen Zugriff auf erweiterte Texturtechniken.

Um die Leistung zu verbessern, sollten Sie dynamische Texturen verwenden. Für jeden Frame kann eine dynamische Textur gesperrt, geschrieben und entsperrt werden.

In diesem Abschnitt

Thema BESCHREIBUNG

Einführung zu Texturen

Eine Texturressource ist eine Datenstruktur zum Speichern von Texels. Dies ist die kleinste Einheit einer Textur, die gelesen oder geschrieben werden kann. Wenn die Textur von einem Shader gelesen wird, kann sie nach Textur-Samplern gefiltert werden.

Grundlegende Texturkonzepte

Frühe computergenerierte 3D-Bilder, obwohl im Allgemeinen für ihre Zeit fortgeschritten, tendierten dazu, ein glänzendes Kunststoff-Aussehen zu haben. Es fehlten die Arten von Markierungen wie Scuffs, Risse, Fingerabdrücke und Verschmierungen, die 3D-Objekten eine realistische visuelle Komplexität verleihen. Texturen sind beliebt geworden, um den Realismus computergenerierter 3D-Bilder zu verbessern.

Texturadressierungsmodi

Ihre Direct3D-Anwendung kann jedem Scheitelpunkt eines beliebigen Grundtyps Texturkoordinaten zuweisen. In der Regel liegen die U- und V-Texturkoordinaten, die Sie einem Scheitelpunkt zuweisen, im Bereich von 0,0 bis einschließlich 1,0. Durch Zuweisen von Texturkoordinaten außerhalb dieses Bereichs können Sie jedoch bestimmte spezielle Texturierungseffekte erstellen.

Texturfilterung

Die Texturfilterung erzeugt eine Farbe für jedes Pixel im 2D gerenderten Bild des Grundtyps, wenn ein Primitive gerendert wird, indem ein 3D-Grundtyp auf einem 2D-Bildschirm zugeordnet wird.

Texturressourcen

Texturen sind eine Art von Ressource, die zum Rendern verwendet wird.

Texturumbruch

Die Texturumbrucherstellung ändert die grundlegende Art und Weise, wie Direct3D texturierte Polygone mithilfe der für jeden Scheitelpunkt angegebenen Texturkoordinaten rastert. Beim Rastern eines Polygons interpoliert das System zwischen den Texturkoordinaten an den jeweiligen Scheitelpunkten des Polygons, um die Texel zu bestimmen, die für jedes Pixel des Polygons verwendet werden sollen.

Texturvermischung

Direct3D kann in einem einzigen Durchgang bis zu acht Texturen mit Primitiven kombinieren. Die Verwendung mehrerer Texturmischungen kann die Bildrate einer Direct3D-Anwendung erheblich erhöhen. Eine Anwendung verwendet mehrere Texturmischungen, um Texturen, Schatten, spiegelförmige Beleuchtung, diffuse Beleuchtung und andere Spezialeffekte in einem einzigen Durchgang anzuwenden.

Lichtzuordnung mit Texturen

Eine Lichtkarte ist eine Textur oder Gruppe von Texturen, die Informationen zur Beleuchtung in einer 3D-Szene enthält. Lichtkarten ordnen Bereiche von Licht und Schatten auf Primitiven ab. Multipass- und Multiple Texture Blending ermöglichen es Ihrer Anwendung, Szenen realistischer zu rendern als Schattierungstechniken.

Komprimierte Texturressourcen

Texturkarten sind digitalisierte Bilder, die auf dreidimensionalen Formen gezeichnet werden, um visuelle Details hinzuzufügen. Sie werden diesen Formen während der Rasterung zugeordnet, und der Prozess kann große Mengen sowohl des Systembus als auch des Arbeitsspeichers beanspruchen. Direct3D unterstützt die Komprimierung von Texturoberflächen, um die Menge des von Texturen belegten Arbeitsspeichers zu reduzieren. Einige Direct3D-Geräte unterstützen komprimierte Texturoberflächen nativ.

 

Leitfaden zum Lernen von Direct3D-Grafiken