Condividi tramite


Flussi di dati dei vertici (Direct3D 9)

Le interfacce di rendering per Direct3D sono costituite da metodi che eseguono il rendering di primitive dai dati dei vertici archiviati in uno o più buffer di dati. I dati dei vertici sono costituiti da elementi vertice combinati per formare componenti dei vertici. Gli elementi vertice, l'unità più piccola di un vertice, rappresentano entità come posizione, normale o colore.

I componenti dei vertici sono uno o più elementi vertice archiviati in modo contiguo (interleaved per vertice) in un singolo buffer di memoria. Un vertice completo è costituito da uno o più componenti, in cui ogni componente si trova in un buffer di memoria separato. Per eseguire il rendering di una primitiva, vengono letti e assemblati più componenti dei vertici in modo che i vertici completi siano disponibili per l'elaborazione dei vertici. Il diagramma seguente illustra il processo di rendering delle primitive usando i componenti dei vertici.

diagramma del processo per eseguire il rendering delle primitive usando i componenti dei vertici

Le primitive di rendering sono costituite da due passaggi. Prima di tutto, configurare uno o più flussi di componenti dei vertici; in secondo luogo, richiamare un metodo IDirect3DDevice9::D rawPrimitive per il rendering da tali flussi. L'identificazione degli elementi dei vertici all'interno di questi flussi componente viene specificata dal vertex shader.

I metodi IDirect3DDevice9::D rawPrimitive specificano un offset nei flussi di dati dei vertici in modo che sia possibile eseguire il rendering di un subset contiguo arbitrario delle primitive all'interno di un set di dati dei vertici con ogni chiamata di disegno. In questo modo è possibile modificare lo stato di rendering del dispositivo tra gruppi di primitive di cui viene eseguito il rendering dagli stessi vertex buffer.

Sono supportati sia i metodi di disegno indicizzati che non indicizzati. Per altre informazioni, vedere Rendering da vertex e index buffer (Direct3D 9).For more information, see Rendering from Vertex and Index Buffers (Direct3D 9).

Rendering di primitive