我正在使用openGL创建3D图形引擎 我正在做一些阴影贴图,只是遇到一个小问题:
我有一个这样的LightCaster结构:
struct LightCaster {
mat4 vp;
sampler2D depth_map;
};
并定义了此结构实例的统一数组:
uniform LightCaster light_casters[4];
我的问题是,当我使用变量索引访问脚轮时,会产生很多滞后,但是当我使用数字访问它时,我可以再次获得60 fps!
mat4 m = light_casters[caster_index].vp; // create lags
mat4 m = light_casters[0].vp; // 60 fps
但是即使我使用固定值作为索引,它仍然会产生滞后:
int index = 0;
mat4 m = light_casters[index].vp; // still laggy