Higher-Order Grundtypen (Direct3D 9)
Direct3D 9 unterstützt Punkte, Linien, Dreiecke und Rastergrundtypen. Diese wurden erweitert, um die Interpolation höherer Reihenfolge über linear hinaus zu unterstützen. Während Dreiecke und Linien räumliche Ausmaße aufweisen, wurden beide bisher mit linearer Interpolation gerendert. In Direct3D 9 unterstützt Direct3D das Rendern dieser Grundtypen mit höherer Reihenfolge, bis hin zu quintischer Interpolation. Darüber hinaus wird nun ein neuer Quad-Grundtyp unterstützt. Dieser neue Typ kann auch mit interpolieren höherer Reihenfolge gerendert werden. Dieses Feature wird in erster Linie durch die Anforderungen für Animation und Rendering von Zeichen gesteuert. Es kann auch für andere Oberflächen wie Gelände oder Wasser verwendet werden.
Grundtypen in höherer Reihenfolge unterstützen die Interpolation höherer Reihenfolge, wenn sie als Listen, Streifen, Lüfter oder indizierte Gitter an die API übertragen werden. Dies wird erreicht, indem zusätzliche Informationen verwendet werden, die in den Scheitelpunkten selbst codiert sind. Beispielsweise können normale Vektoren verwendet werden, um Tangentenebenen an den Scheitelpunkten zu definieren, um die kubische Interpolation zu ermöglichen. Die meisten Implementierungen unterstützen die Interpolation höherer Reihenfolge durch Tessellation in planare Dreiecke. Der Tessellationsschritt wird logisch vor der Vertex-Shaderphase angewendet. Da die Vertex-Shader-API keine Semantik für die Eingabedaten aufzwingt, wird ein spezieller Mechanismus bereitgestellt, um die Vertexdatenstromkomponente zu identifizieren, die die Position darstellt, und optional den normalen Vektor. Alle anderen Komponenten werden entsprechend interpoliert.
In diesem Abschnitt werden Grundtypen mit höherer Reihenfolge vorgestellt und erläutert, wie sie in Ihren Anwendungen verwendet werden können. Die Informationen sind in die folgenden Themen unterteilt.
Verbesserte Qualität durch Auflösungsverbesserung
Aktuelle Grundtypen sind nicht ideal für die Darstellung glatter Oberflächen. Interpolationsmethoden höherer Reihenfolge, z. B. kubische Polynome, ermöglichen genauere Berechnungen beim Rendern gekrümmter Formen. Dies bietet einen erhöhten Realismus, indem Facetingartefakte reduziert oder beseitigt werden, die an Silhouettenranden oder auf Glanzflächenbeleuchtung sichtbar sind. Darüber hinaus wirken sich die dreieckigen Dreiecke, wenn die Tessellation auf dem Chip auftritt, nicht auf die Busbandbreite aus. In vielen Fällen kann eine kleine Menge an Tessellation Verbesserungen in der Bildqualität mit minimalen Leistungseinbußen bieten.
Direct3D 9 bietet eine einfache Möglichkeit, Auflösungsverbesserungen auf Inhalte anzuwenden, die von vorhandenen polygonorientierten Tools und Kunstpipelines erstellt wurden. Die Anwendung muss nur eine gewünschte Tessellationsebene bereitstellen und die Daten mithilfe der standardmäßigen Dreieckssyntax übertragen, die normale Vektoren enthält.
Direkte Zuordnung von Spline-Based-Tools
Viele aktuelle Erstellungstools unterstützen Grundtypen in höherer Reihenfolge, um leistungsfähigere Modellierungsvorgänge zu ermöglichen, als häufig für planare Dreiecksgitter bereitgestellt werden. Wenn sie effizient verwendet wird, damit die Anzahl der generierten Patches angemessen ist, können solche Tools Inhalte erzeugen, die direkt von der API gerendert werden können. Um diese Anforderung zu erfüllen, wurde ein neuer Einstiegspunkt hinzugefügt, der den eingehenden Vertexdatenstrom als 2D-Array von Kontrollpunkten interpretiert und auf die gewünschte Auflösung verweist.
Verwandte Themen