#pragma kernal Main 语法错误

syntax error on #pragma kernal Main

我有以下着色器:

#pragma kernal Main

RWTexture@D<float4>Reult;
[numthreads(8,8,1)]

void Main (uint3 id:SV_DispatchThreadID)
{
    Result[id,xy]=float4(id.x & id.y, (id.x & 15)/15.0, (id.y & 15)/15.0, 0.0);
}

团结一致。 然而,这会产生错误 "Shader error in ":Parse error: syntax error at line 1" //that is #pragma kernal Main

我环顾四周,但#pragma kernal [main function 的名称] 似乎是正确的语法我做错了什么?

这是unity 5.0.1 32位版本

"kernel",不是"kernal"。

See: Unity Compute Shaders

RWTexture@D -> RWTexture2D 将是您的下一个编译错误。 接着是"Reult" -> "Result",然后是"id,xy" -> "id.xy".