海东地网站建设,重庆沙坪坝学校,门户网站为什么衰落,辽阳专业建设网站预滤波环境贴图类似于辐照度图#xff0c;是预先计算的环境卷积贴图#xff0c;但这次考虑了粗糙度。因为随着粗糙度的增加#xff0c;参与环境贴图卷积的采样向量会更分散#xff0c;导致反射更模糊#xff0c;所以对于卷积的每个粗糙度级别#xff0c;我们将按顺序把模…预滤波环境贴图类似于辐照度图是预先计算的环境卷积贴图但这次考虑了粗糙度。因为随着粗糙度的增加参与环境贴图卷积的采样向量会更分散导致反射更模糊所以对于卷积的每个粗糙度级别我们将按顺序把模糊后的结果存储在预滤波贴图的 mipmap 中。例如预过滤的环境贴图在其 5 个 mipmap 级别中存储 5 个不同粗糙度值的预卷积结果如下图所示 所以可以按照不同Mipmap级别打印出来各个hdr环境贴图试试。最大尺寸128逐次减倍依次是1286432168
int textureWidth 128;
int textureHeight 128;
int level 4;//0,1,2,3,4
float ratio std::pow(0.5, level);
int mipWidth textureWidth * ratio;
int mipHeight textureHeight * ratio;
osg::ref_ptrosg::TextureCubeMap textureCubeMap getTextureCubeMap(viewer,mipWidth, mipHeight);运行结果如下