1. 自动计算导数方法
float calculateLOD(sampler2D tex, vec2 uv) {
// 计算纹理坐标的导数
vec2 dUVdx = dFdx(uv);
vec2 dUVdy = dFdy(uv);
// 计算纹理大小
vec2 textureSize = textureSize(tex, 0); // 0表示基础mipmap级别
// 计算LOD
float maxDeriv = max(length(dUVdx * textureSize),
length(dUVdy * textureSize));
float lod = log2(maxDeriv);
return lod;
}
void example() {

最低0.47元/天 解锁文章
942

被折叠的 条评论
为什么被折叠?



