DX instancing绘制
当有一个物体,需要绘制该物体的100个instancing时,设置如下:
pd3dDevice->SetStreamSource(0, vb, 0, sizeof(Vertex)); pd3dDevice->SetStreamSourceFreq(0, D3DSTREAMSOURCE_INDEXEDDATA | (UINT)100));//设置实例数 pd3dDevice->SetStreamSource(1, g_pVBInstanceData, 0, sizeof(Instance)); pd3dDevice->SetStreamSourceFreq(1, D3DSTREAMSOURCE_INSTANCEDATA | 1UL);//设置实例绘制频率? pd3dDevice->SetIndices(ib));//设置索引
pd3dDevice->SetStreamSourceFreq(0, D3DSTREAMSOURCE_INDEXEDDATA | (UINT)100));//设置实例数 pd3dDevice->SetStreamSourceFreq(1, D3DSTREAMSOURCE_INSTANCEDATA | 1UL);//设置实例绘制频率?for( int i = 0; i < 3; i++ ){ pd3dDevice->SetStreamSource(0,...); pd3dDevice->SetIndices(...); pd3dDevice->DrawIndexedPrimitive(...);}