在DirectX9中设置纹理寻址模式为边框颜色

Set Texture Addressing Mode to border color in DirectX9

本文关键字:模式 边框 颜色 寻址 纹理 DirectX9 设置      更新时间:2023-10-16

我试图在DirectX应用程序中将纹理寻址模式设置为边框颜色。根据这个来源,我所要做的就是:

调用IDirect3DDevice7:: SetTextureStageState并传递纹理阶段标识符作为第一个参数D3DTSS_BORDERCOLOR阶段状态值作为第二个参数所需的RGBA边框颜色作为第三个参数

我尝试使用以下代码:

m_device->SetTextureStageState(0, D3DTSS_BORDERCOLOR, 0);

但是我得到一个编译错误说

标识符"D3DTSS_BORDERCOLOR"未定义

您确定要使用DirectX7吗?

你的文档太旧了,那是DirectX7,现在已经弃用了,你应该在DirectX9

中使用以下功能
m_device->SetSamplerState(0, D3DSAMP_BORDERCOLOR, 0xffff0000) // red color

:

如果你没有设置正确的地址模式,这里是边框模式的代码。

m_device->SetSamplerState(0, D3DSAMP_ADDRESSU,  D3DTADDRESS_BORDER);
m_device->SetSamplerState(0, D3DSAMP_ADDRESSV,  D3DTADDRESS_BORDER);