C++ 此FXC错误有问题吗?

C++ 此FXC错误有问题吗?,c++,windows,directx,direct3d11,C++,Windows,Directx,Direct3d11,我在谷歌上搜索了很多,却找不到一个解决办法。我正在使用Direct3D 11(在/Sample/-the cube one下的教程中)。它使用.fx,我知道它已被弃用,但没有教程不使用它。几乎,每当我构建程序时,都会出现错误“fxc.exe退出,代码为1”。以下是我在“Shader.fx”中的代码: 在文件的属性下,我将ShaderType设置为“Effect(/fx)”。我在入口点的名字下没有任何东西。顺便说一句,我正在使用Visual Studio 2013。您需要将着色器类型设置为Effe

我在谷歌上搜索了很多,却找不到一个解决办法。我正在使用Direct3D 11(在/Sample/-the cube one下的教程中)。它使用.fx,我知道它已被弃用,但没有教程不使用它。几乎,每当我构建程序时,都会出现错误“fxc.exe退出,代码为1”。以下是我在“Shader.fx”中的代码:


在文件的属性下,我将ShaderType设置为“Effect(/fx)”。我在入口点的名字下没有任何东西。顺便说一句,我正在使用Visual Studio 2013。

您需要将着色器类型设置为
Effect(/fx)
并将着色模型设置为
Shader Model 5(/5_0)
才能使用VS 2013构建传统的Effects 11着色器。确保为所有配置和所有平台设置了.fx文件属性

您应该了解如何使用的CodePlex版本以及已更新的各种版本,以便在不使用传统DirectX SDK的情况下为VS 2013构建


还有一些不使用传统效果的教程,包括和(正在进行中)的教程,当然还有Windows 8.x的Windows应用商店应用。

谢谢!成功了!我也不得不在这里做一些调整,但它起了作用!(调整是与此问题无关的代码块中的bug)
    // Constant buffer 
cbuffer ConstantBuffer : register(b0){
    matrix World;
    matrix View;
    matrix Projection;
}

struct VS_OUTPUT{
    float4 Pos : SV_POSITION;
    float4 Color : COLOR0;
};

// Vertex Shader
VS_OUTPUT VS(float4 Pos : POSITION, float4 Color : COLOR){
    VS_OUTPUT output = (VS_OUTPUT)0;
    output.Pos = mul(Pos, World);
    output.Pos = mul(output.Pos, View);
    output.Pos = mul(output.Pos, Projection);
    output.Color = Color;
    return output;
}

// Pixel Shader
float4 PS(VS_OUTPUT input) : SV_Target{
    return input.Color;
}