相关疑难解决方法(0)

每台显示器显示不同的图像directX 10

我是DirectX 10编程的新手,我一直在尝试用我有限的技能做以下事情(尽管我有很强的OpenGL背景)

我试图显示2个不同的纹理四边形,每个显示器1个.为此,我明白我需要一个D3D10设备,多个(2)交换链和单个VertexBuffer

虽然我认为我能够创造所有这些,但我仍然不确定如何处理所有这些.我需要多个ID3D10RenderTargetView吗?我应该如何以及在哪里使用OMSetRenderTargets(...)?

除了MSDN之外,这些概念的文档或说明相当有限,因此非常欢迎任何帮助.这是我的一些代码:

这是渲染代码

for(int i = 0; i < screenNumber; i++){
    //clear scene
    pD3DDevice->ClearRenderTargetView( pRenderTargetView, D3DXCOLOR(0,1,0,0) );

    //fill vertex buffer with vertices
    UINT numVertices = 4;   
    vertex* v = NULL;   

    //lock vertex buffer for CPU use
    pVertexBuffer->Map(D3D10_MAP_WRITE_DISCARD, 0, (void**) &v );

    v[0] = vertex( D3DXVECTOR3(-1,-1,0), D3DXVECTOR4(1,0,0,1), D3DXVECTOR2(0.0f, 1.0f) );
    v[1] = vertex( D3DXVECTOR3(-1,1,0), D3DXVECTOR4(0,1,0,1), D3DXVECTOR2(0.0f, 0.0f) );
    v[2] = vertex( D3DXVECTOR3(1,-1,0), D3DXVECTOR4(0,0,1,1), D3DXVECTOR2(1.0f, 1.0f) );
    v[3] = vertex( D3DXVECTOR3(1,1,0), D3DXVECTOR4(1,1,0,1), D3DXVECTOR2(1.0f, 0.0f) ); 

    pVertexBuffer->Unmap();

    // Set primitive …
Run Code Online (Sandbox Code Playgroud)

c++ directx multiple-monitors

5
推荐指数
1
解决办法
4830
查看次数

标签 统计

c++ ×1

directx ×1

multiple-monitors ×1