-1
如何转换此:转换FLOAT3 []从GLSL到金属
const float3 GDFVectors[19] = float3[](
normalize(float3(1, 0, 0)),
normalize(float3(0, 1, 0)),
normalize(float3(0, 0, 1)),
normalize(float3(1, 1, 1)),
normalize(float3(-1, 1, 1)),
normalize(float3(1, -1, 1)),
normalize(float3(1, 1, -1)),
normalize(float3(0, 1, PHI+1)),
normalize(float3(0, -1, PHI+1)),
normalize(float3(PHI+1, 0, 1)),
normalize(float3(-PHI-1, 0, 1)),
normalize(float3(1, PHI+1, 0)),
normalize(float3(-1, PHI+1, 0)),
normalize(float3(0, PHI, 1)),
normalize(float3(0, -PHI, 1)),
normalize(float3(1, 0, PHI)),
normalize(float3(-1, 0, PHI)),
normalize(float3(PHI, 1, 0)),
normalize(float3(-PHI, 1, 0))
);
成Metal
(或C++)?有了上面的代码,我得到了一些错误:
全局变量必须有一个固定的地址空间限定符。
哇,这个'金属'真的让我很虚弱。为什么使用{...}'而不是'[...]'?这不是一个'数组'吗? – sooon
我只用过大括号在C++/Metal中进行聚合初始化。我不认识你在问题中使用的语法。 – warrenm