0
我正在用計算着色器實現簡單的光線跟蹤。加載計算着色器時出錯
但我卡在鏈接計算着色器的程序對象。
#version 440
struct triangle {
vec3 points[3];
};
struct sphere {
vec3 pos;
float r;
};
struct hitinfo {
vec2 lambda;
int idx;
};
layout(binding = 0, rgba32f) uniform image2D framebuffer;
// wrriten by compute shader
layout (local_size_x = 1, local_size_y = 1) in;
uniform triangle triangles[2500];
uniform sphere spheres[2500];
uniform int num_triangles;
uniform int num_spheres;
uniform vec3 eye;
uniform vec3 ray00;
uniform vec3 ray10;
uniform vec3 ray01;
uniform vec3 ray11;
這是我的計算着色器代碼,我可以得到一個「資源不足」的錯誤。 我知道這個錯誤的原因是三角形的大小,但我需要這個大小。
有沒有辦法將大量的三角形傳遞給着色器?
謝謝。非常有幫助:) –
我可以問你爲什麼着色器可以有非常有限的校服嗎?我認爲我的VRAM足以加載上面的數組 –