2013-02-07 64 views
-2

当编译我的DX11 HLSL着色文件时失败,有点调试后,错误就出在这方面:DirectX 11的常量缓冲区错误

cbuffer ConstantPointBuffer 
{ 
    float3 dir; 
    float pad; 

    float3 pos; 
    float pad; 

    float3 att; 
    float pad; 

    float4 ambient; 
    float4 diffuse; 

    float range; 
    float3 pad; 
} 

但我不觉得有什么不妥...

谢谢你

+0

是否应该在第7行和第10行重新声明第4行的浮动垫? –

+0

哦,狗屎,所以男人,我的错... –

+0

下次比“它失败”做得更好请。执行调试并获取一些有用的信息。这是一个问答不是招聘会场! –

回答

2

你有多个同名的变量。根本不要那样做。

+0

没有看到它,但谢谢你! –

1

您在右大括号后缺少分号。 cbuffers的声明方式与C++中的struct或class声明相同。