directx - 未保存对像素着色器的更改
问题描述
我正在开发一个 DirectX 程序(我没有使用任何包装器)。我正在尝试制作像素着色器。我对像素着色器进行了一些更改,它在运行时没有反映在代码中。这是我为像素着色器编写的代码。(它只是将颜色恢复为白色)。
float4 main(PS_INPUT input) : SV_Target
{
//float4 baseTexture = txDiffuse.Sample(samLinear, input.Tex);
return float4(1.0f, 1.0f, 1.0f, 1);
}
在我将代码更改为此之前,我的像素着色器正在从顶点返回颜色。
当我运行我的图形调试器时,我看到这个像素着色器正在运行。(旧代码) 图形调试器运行
我正在将我的 HLSL 制作成 .csh。
另外,我正在像这样制作我的像素着色器
hr = m_Device->CreatePixelShader(PS_Mesh, sizeof(PS_Mesh), nullptr, &m_PixelShader[PIXEL_SHADER_TYPE::ENUM::PS_MESH].p);
为什么变化没有反映出来?我试图提供所有信息。请询问您需要的任何其他问题。我已经被这个问题困住了很长一段时间。
解决方案
推荐阅读
- algorithm - 求两个值为 2 的整数之间的异或值
- c - 读取脚本输出变量
- azure - 如何升级现有的云服务项目以使用 Azure SDK 3.0?
- aws-lambda - AWS 创建 Lambda 脚本参数输出为参数名称,而不是值
- java - WebSphere 和 Tomcat 之间的负载平衡
- javascript - 为什么这在 IE 和 Chrome 中都不起作用。表格似乎只在 Chrome 中正确显示?
- hadoop - 无法以非 sudo 用户身份写入 HDFS
- servicenow - ServiceNow 中的筛选报告筛选器
- function - 为什么 c++11 将 get<>(tuple) 定义为全局函数而不是元组的成员?
- c - 我如何检查结构是否包含任何数据,因为我正在循环传递它?