当前位置: 木地板 >> 木地板市场 >> MakeTX预处理纹理有效提升渲染速度
本教程使用木地板的简单场景来说明使用maketx预处理纹理的好处。
深圳创新电商培训(图)第1部分-设置场景
本教程将介绍如何使用连接到标准曲面着色器的高分辨率漫反射,凹凸和高光贴图重新创建上述渲染。我们将使用Skydome灯在木质材料中创建逼真的镜面反射。
首先下载我们将连接到标准曲面着色器的高分辨率(6k)木材纹理:
为地板创建多边形平面,并为其指定“标准曲面”着色器。创建Skydome灯并将HDR地图连接到其Color属性。标准表面
将漫反射贴图连接到“基色”属性。将高光贴图连接到SpecularColor和SpecularWeight属性。将凹凸贴图连接到凹凸贴图属性。凹凸贴图
只需要非常微妙的凹凸深度值。
第2部分-渲染和转换
使用未处理的纹理渲染
现在场景已经完成,您已准备好渲染。
使用纹理时,日志显示OpenImageIOImageCache的统计信息。
深圳创新电商培训(图)您的统计数据会有所不同,因为它取决于您机器的功率。记下您的统计数据,以便稍后进行比较。
渲染时间-00:00:43
文件I/O时间:4m10.4s
峰值缓存:.9MB
自动纹理贴图
你会注意到渲染开始之前有一个很长的延迟。这是因为默认情况下启用了Auto-mipmap。如果纹理贴图文件本身没有mipmap(就像我们当前使用的那样),启用此选项将触发自动生成mipmap,该mipmap将在渲染期间存储在内存中。只有最近使用的磁贴保存在内存中,默认大小为MB的纹理缓存中。此mipmap生成会增加渲染时间,尤其是对于具有许多高分辨率纹理的场景。
再次渲染,再看一下日志。
统计信息渲染时间-00:00:36文件I/O时间:1m47.1s峰值缓存:.5MB所以它更快但让我们看看转换纹理会产生什么效果。
使用MakeTX转换纹理
纹理将使用maketx进行转换,maketx是一个命令行实用程序,它是OpenImageIO的一部分。
在Linux上打开终端并导航到纹理的位置并运行以下命令:maketx-v--oiiowood-flooring-_d.jpg-owood-flooring-_d.tx
该-v标志是冗长,输出状态消息。该标志将生成针对Arnold优化的.tx文件,通过强制将磁贴大小设置为OpenImageIO(64x64)的最佳值,可以更快地渲染。它还存储交错的通道(RGBARGBA...),使它们更快地读取并实现恒定的颜色检测:如果图像是恒定颜色,它将把它转换为微小的单色.tx文件。必须在输出文件之前。--oiio-o
统计信息以相同的方式转换其他纹理。交换纹理
虽然我们可以浏览所有图像节点并更新纹理,但有一种更快捷的方法。打开“渲染设置”窗口,在“纹理”下启用“使用现有.tx纹理”。
尽管在着色器中仍然指定了未处理的纹理,但启用此参数后,Arnold将搜索相同的文件名,但扩展名为.tx。
再次渲染,显然渲染速度要快得多。查看日志以获取统计信息。
创新电商统计信息渲染时间-00:00:20文件I/O时间:0.6s峰值缓存:34.5MB与原始渲染相比,渲染时间现在不到一半。文件I/O几乎没有任何内容,使用的缓存内存是它的9%。那么,这应该说服你在开始时花一点时间来转换纹理是值得的,因为它会节省大量的渲染时间。