6
Bu parçacı gölgelendiriciye sahibim. Bu, bazı mantığı ayrı bir işleve dönüştürdüğüm kadar iyi çalışıyordu. Efektin farklı sürümlerini birbirinin üzerine yerleştirmek için birden çok kez çağırmak istiyorum. GLSL: Özel işlevim bulamadı
Ancak, en kısa sürede bu özel bir işlevi yarattığı gibi, gölgelendirici hata atma başlar: o fonksiyonu olarak derleme yaptığından garip olduğunuERROR: 0:33: 'grid' : no matching overloaded function found
. Ben grid()
den return
kaldırırsanız ben de bu hatayı alıyorum:
ERROR: 0:36: '' : function does not return a value: grid
Yani ne işlevlerini bildirmek hakkında burada eksik? Burada
Tam shader:
uniform float brightness;
uniform float shiftX;
uniform float shiftY;
uniform vec4 color;
varying vec3 vPos;
void main() {
gl_FragColor = vec4(grid(200.0), 0.0, 0.0, 1.0);
}
float grid(float size) {
float x = pow(abs(0.5 - mod(vPos.x + shiftX, 200.0)/200.0), 4.0);
float y = pow(abs(0.5 - mod(vPos.y + shiftY, 200.0)/200.0), 4.0);
return (x+y) * 5.0 * pow(brightness, 2.0);
}
Vay. Utanıyorum, bunu denemedim. Teşekkürler. –
Rica ederim. – rgngl