0
我嘗試轉換下GLSL
功能:OSX - 轉換GLSL '的InOut' 以金屬
float pMod1(inout float p, float size) {
float halfsize = size*0.5;
float c = floor((p + halfsize)/size);
p = mod(p + halfsize, size) - halfsize;
return c;
}
在Metal
static float pMod1(thread float &p, float size) {
float halfsize = size*0.5;
float c = floor((p + halfsize)/size);
p = mod(p + halfsize, size) - halfsize;
return c;
}
使用然後使用它:
static float map(float3 p)
{
p.x = pMod1(p.x,10);
...
}
,我得到一個錯誤:
Non-cont reference cannot bind to vector element
- 如何解決此問題?
- 什麼是
InOut
Metal
的等效限定符?