CD3D11_VIEWPORT 结构是 Direct3D 11 中用于描述视口(viewport)的辅助类。以下是 CD3D11_VIEWPORT 结构的定义:
struct CD3D11_VIEWPORT : public D3D11_VIEWPORT
{
    CD3D11_VIEWPORT();
    explicit CD3D11_VIEWPORT(FLOAT topLeftX, FLOAT topLeftY, FLOAT width, FLOAT height, FLOAT minDepth = 0.0f, FLOAT maxDepth = 1.0f);
    explicit CD3D11_VIEWPORT(const D3D11_VIEWPORT& o);
    explicit CD3D11_VIEWPORT(CD3D11_DEFAULT);

    // 一些便利的设置函数
    CD3D11_VIEWPORT& TopLeftX(FLOAT topLeftX);
    CD3D11_VIEWPORT& TopLeftY(FLOAT topLeftY);
    CD3D11_VIEWPORT& Width(FLOAT width);
    CD3D11_VIEWPORT& Height(FLOAT height);
    CD3D11_VIEWPORT& MinDepth(FLOAT minDepth);
    CD3D11_VIEWPORT& MaxDepth(FLOAT maxDepth);
};

这个结构继承自 D3D11_VIEWPORT,并提供了一些便利函数,用于更容易地设置视口的参数。你可以通过调用这些函数来配置 CD3D11_VIEWPORT 对象,然后将其传递给设置渲染管线的函数。

以下是 CD3D11_VIEWPORT 中一些常用的设置函数:

  •  TopLeftX, TopLeftY: 设置视口左上角的 X 和 Y 坐标。

  •  Width, Height: 设置视口的宽度和高度。

  •  MinDepth, MaxDepth: 设置视口的深度范围。


这个结构使得配置视口的参数更加方便,而不需要手动设置结构的各个字段。


转载请注明出处:http://www.zyzy.cn/article/detail/25647/Win32 API/D3d11.h/CD3D11_VIEWPORT