如何在 Directx 中设置 2d 视图?这个OpenGL有没有类似的功能?
gluOrtho2D( 0 , 800 , 0 , 600 );
DirectX 9 中的等效调用是D3DXMatrixOrthoRH - 但是,如果您尝试遵循其他 DirectX 代码,您很可能希望使用左手版本,因为 DirectX 9 通常在左手坐标系中完成(而不是 RH像OpenGL)。左手版本是D3DXMatrixOrthoLH。
您可以使用以下内容:http: //msdn.microsoft.com/en-us/library/bb204940 (v=vs.85).aspx为您创建一个正交投影矩阵,但实际上会影响您的渲染并不像使用固定功能(版本 1.x 风格)的 OpenGL 编程那样简单。DirectX 没有即时模式,因此您需要设置适当的着色器来进行渲染、创建正交投影矩阵并将其传递给着色器(并在着色器代码中使用它)。
从手册:
构建左手正交投影矩阵。
D3DXMATRIX * D3DXMatrixOrthoLH(
__inout D3DXMATRIX *pOut,
__in FLOAT w,
__in FLOAT h,
__in FLOAT zn,
__in FLOAT zf
);