Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieses Vertex-Shader-Ausgaberegister enthält Texturkoordinaten pro Vertex.
Ein Register besteht aus Eigenschaften, die bestimmen, wie sich jedes Register verhält.
| Eigentum | Beschreibung |
|---|---|
| Name | oT0 - oT7 |
| Zählen | Acht Vektoren |
| E/A-Berechtigungen | Schreibgeschützt |
Die Register der Ausgabetexturkoordinaten sind ein Array von Ausgabedatenregistern. Die Registerdaten werden durchlaufen und als Texturkoordinaten durch die Textursamplingstufen verwendet, um Daten an den Pixelshader zu übermitteln.
Beim Schreiben in ein Texturkoordinatenregister wird empfohlen, nur so viele Gleitkommawerte wie die Dimension der entsprechenden Texturzuordnung zu übergeben. Steuern Sie die Werte, die mit einem Modifizierer übergeben werden. Verwenden Sie z. B. XY für eine 2D-Texturzuordnung.
Wenn Sie einen programmierbaren Vertex-Shader verwenden, sollten die Vertexpipeline-Flags der festen Funktion D3DTEXTURETRANSFORMFLAGS (D3DTTFF_COUNT1, D3DTTFF_COUNT2, D3DTTFF_COUNT3, D3DTTFF_COUNT4) auf Null festgelegt werden.
Objektvertexdaten enthalten Eingabetextkoordinaten. Objekte, die keine nebeneinander angeordneten Texturen verwenden, weisen häufig Texturkoordinaten im Bereich [0,1] auf. Objekte, die nebeneinander angeordnete Texturen wie Gelände verwenden, weisen in der Regel Texturkoordinaten auf, die von [-n,+n] reichen, wobei n eine beliebige Gleitkommazahl sein kann.
Die Texturkoordinateninterpolation wird für Vertexdaten für die Rasterung ausgeführt. Während der Rasterung werden Texturkoordinaten zwischen Objektvertizes interpoliert, durch Texturumbruch geändert und durch die Texturgröße skaliert (auch unter Berücksichtigung von Texturadressierungsmodi), um einen ganzzahligen Index zu erzeugen. Der Index wird dann verwendet, um eine Textursuche durchzuführen. Verwenden Sie den MaxTextureRepeat-Wert in D3DCAPS9, um zu bestimmen, wie oft eine Textur nebeneinander angeordnet werden kann.
Beispiel
Deklarieren Sie das Texturkoordinatenregister.
dcl_texcoord v7
Kopieren Sie die Texturkoordinaten pro Vertex in das Ausgaberegister.
mov oT0, v7
| Vertex-Shaderversionen | 1_1 | 2_0 | 2_sw | 2_x | 3_0 | 3_sw |
|---|---|---|---|---|---|---|
| Texturkoordinatenregister | x | x | x | x | x | x |
Verwandte Themen