本菜鸡不才,如有纰漏,欢迎各路神仙指出。
![35c60efd3f86e0a5096b7565accdf3b5.png](https://i-blog.csdnimg.cn/blog_migrate/604408fdaaa156cd7a7ed3d7403adffa.jpeg)
![1d8ccae734585c91561b96ddcce06fc4.png](https://i-blog.csdnimg.cn/blog_migrate/b0818f0edc265d12dee4371248d63adb.png)
一、LOD 简介:
LOD:(Level of Details),简称为多细节层次。LOD技术根据模型的节点在显示环境中所处的位置(Screen Size)和重要度,来决定物体渲染的资源分配,降低非重要物体的面数和细节数,从而获得高效率的渲染计算。
![a758e81a62db596fd07f35a6a2f6a36c.png](https://i-blog.csdnimg.cn/blog_migrate/3f7784afbed9dfa7c22b925c42fd859a.jpeg)
我们在吃鸡跳伞的时候,地面上的树和房子是逐渐从模糊变清晰的,由简面变精面的,根据距离的不同所需要渲染的模型的精度当然也不同,要不然整个场景如果都按最优化进行渲染,不是画面卡成PPT,就是手机背面能煎鸡蛋。
![ff5c95fc9d1608d19bfd69dd7e42fe9d.png](https://i-blog.csdnimg.cn/blog_migrate/1cd3c65f8b69292bd621758ae9229341.png)
二、相关DCC软件改变模型不同的面数方法:
在Blender当中我们可以使用以下两个Modifier对模型进行面数的增减:
- 我们用Decimate给模型减面,使模型更加简单
- 用Subdivision Surface进行加面,使模型更加精致
![3a71977365a0338ee4cbfd32fa8a584d.png](https://i-blog.csdnimg.cn/blog_migrate/2b49f79809d9e5d144fce68f19f69f15.png)
![92fc795877bb708bcbf6cfbd75179d6c.png](https://i-blog.csdnimg.cn/blog_migrate/ec3edfbab4b5327c2bd409fb0f0c678e.png)
三、UE4自动生成LOD:
【3.1】准备模型以进行测验
我们可以先将UE4当中的小白人(Skeletal Mesh)变成 Static Mesh(静态网格物体)(额,其实Skeletal Mesh也是可以的,文末展示)
- 骨骼网架体,缩略图(Thumbnail)为 大红色
- 静态网格体,缩略图(Thumbnail)为青色
![17f1e81885b5759f9eaf665e3ec4e3c1.png](https://i-blog.csdnimg.cn/blog_migrate/18fcf27251b780bde806fe2ae00bc540.jpeg)
打开Static Mesh后,屏幕左上角有我们模型的详细参数,包括模型面数,尺寸,当前屏幕空间等等。
- 当你按下【F】快捷键 或者是倒数第三个Button的Reset Camera的时候,可以回到ScreenSize为默认值的状态。(方便后期调试)
![f8d43e21ac8d15cef8fafaccf70a9611.png](https://i-blog.csdnimg.cn/blog_migrate/e9e60da6c8404c9625baa7a04be19cd9.png)
- 切换至LOD AUTO 可自行观察不同的LOD变化效果(如没有添加,只有Auto和LOD 0)
【3.2】LOD Picker
选取不同的LOD进行设置
![1ce2b42448d8a420130a66393a1e3457.png](https://i-blog.csdnimg.cn/blog_migrate/69edf14bb9c635aa3c35eb342a934422.png)
【3.2.1】 LOD 选取指定的LOD进行相关设置
【3.2.2】 打勾Custom 展开所有的LOD,并进行相关设置
- LOD 0 为我们的基础LOD
- 之后的LOD模型面数相应减少。(LOD 1~3)
【3.3】LOD 0/1/2/3
- 设置屏幕空间尺寸
- 设置减面比例
- 查看顶点数量
![334fa0c241c34fcfe5b127afddd85c42.png](https://i-blog.csdnimg.cn/blog_migrate/f7057c67d9a39a894454adb86f754896.jpeg)
当然还有这个Build Settings,LOD主要是模型的面数变化吧,这个暂时用不到。
![f7ee965e31145261eabd2ca164c3b933.png](https://i-blog.csdnimg.cn/blog_migrate/5a2fc1dbb4d7d45272ca70fa445fce94.jpeg)
【3.4】LOD Settings
【3.4.1】Auto Compute LOD Distances(关闭掉)
可以自己自定义设置各LOD的ScreenSize和面数。(3.3当中设置)
![109b176f7e12f43bd8ee71607159bda8.png](https://i-blog.csdnimg.cn/blog_migrate/6e338f42abbabb0ddf1368208cad9d96.png)
【3.4.2】Number of LODs 然后 Apply Changes
确定应用最终增加/减少的LOD数量
【3.4.3】LOD Group更改相对应模型的预设
![eaf1fa792824cec0bf56b923a5dfd835.png](https://i-blog.csdnimg.cn/blog_migrate/3b1ab223a8b74eff452f41db750826fe.png)
![c7f7b9c27740e93d9e0dc061036997ec.png](https://i-blog.csdnimg.cn/blog_migrate/eb5f62e326207143e00b92328b8f1c79.png)
四、UE4当中调试测验
切换至LOD AUTO 可自行观察不同的LOD变化效果
![eccaf1bcd4d745d665aa13add221c15a.png](https://i-blog.csdnimg.cn/blog_migrate/9734671e14add6c3877d8bbbe4d0535e.png)
之后我们可以看到小白人从迪迦奥特曼变成雷欧奥特曼的完整变化过程:
![4dbdc94295ec636a8d64135f82396330.png](https://i-blog.csdnimg.cn/blog_migrate/e6bee84523a1a37af0dfcdb8be4f400f.jpeg)
![9c643b35111054e137c2d4a06ee690d6.png](https://i-blog.csdnimg.cn/blog_migrate/8c69017982f92a99ba8fe985b36ec928.png)
当然你可以在世界场景当中打开 Level Of Detail Coloration->Mesh LODs(可以用红绿蓝三种颜色来检验不同屏幕尺寸的LOD变化),然后左右分屏以调整屏幕尺寸的参数。
![5bbcd3201375bca9696432c2e0e8f8aa.png](https://i-blog.csdnimg.cn/blog_migrate/44f0344488c4f8b2dcd7cedfbcb6f1f5.jpeg)
![e5395242d17df7d0e2083f73c7a89458.png](https://i-blog.csdnimg.cn/blog_migrate/56bf8165ab300ed6193bafbec289f933.png)
五、导入外部LOD资源:
【5.1】导入/导出相关模型进入DCC软件当中
当然如果对UE4自动生成LOD的模型不太满意的话,自己可以在DCC软件当中分别调整好相应的模型。
当我们更改完相关LOD之后,我们导出模型,进入Blender,会发现连带的所有LOD都导进来了。
![5e90179b1f4bf7e40aef58712e5984d5.png](https://i-blog.csdnimg.cn/blog_migrate/e378c12ddd01e9dcc3e320a1d69f0ba4.png)
我们可以删掉后面三个,然后Shift+D复制两次基础模型,添加Decimate Modifier进行减面操作。
【注意】
- 模型位置不要有相应移动
- 复制后的名字也要保持后缀一致(规整化)
【5.2】更改相关减面参数
以下为Blender当中的相关设置:(只做演示)
![bb84da5fe424f49b9bb57beda33fabdc.png](https://i-blog.csdnimg.cn/blog_migrate/69f03c33fe586b18e4ada356307ada8d.jpeg)
LOD 1 和 LOD 2 单个导出模型。LOD 0 为Base 不用变。
【5.3】导出单个模型注意事项
注意,不是选中模型(模型轮廓高亮)就能够导出所选模型,关闭小眼睛也不管用。需要在导出时要勾选Selected Objects,才能正确导出单个模型:
![1dadaab3f696bf6b9d79d1ec9b1dfbb7.png](https://i-blog.csdnimg.cn/blog_migrate/efc961a84725c94463ce4ace1455788e.png)
【5.4】导入LOD模型进入UE4当中:
1.可以直接在内容浏览器当中右键导入添加
![2b0090f485f6a128ef0f74af62d1013c.png](https://i-blog.csdnimg.cn/blog_migrate/db02595050833e2671d410493c8c02c5.png)
2.也可以在Static Mesh 页面当中直接导入:
![a83cf1cdcead5ab0684cbf0d251c9ed8.png](https://i-blog.csdnimg.cn/blog_migrate/d6e70e7644d2c8e5113c99feb7afd25a.png)
【5.5】最终效果
![d66cbff2a8a5a7d8c7ee507a7a86afce.png](https://i-blog.csdnimg.cn/blog_migrate/01c2ab45aafd64732c2ad394e713aebf.png)
![0398525d4452087ad5f1be36083c35ac.png](https://i-blog.csdnimg.cn/blog_migrate/12edb5d67179da1fecd130d5f7990ac0.png)
六、Skeletal Mesh的LOD
(前面是之前为了演示整的Static Mesh)
下面是Skeletal Mesh的,这里拿官方漂亮的小姐姐Shinbi做演示。
![12c7227b81a7b40a6b3b18f74d89a13e.png](https://i-blog.csdnimg.cn/blog_migrate/c6b53154113028069e243aa77041db03.jpeg)
![ad62d7d7eab8834a2b2e7e0ad130fd9b.png](https://i-blog.csdnimg.cn/blog_migrate/cb663b59a0fcefc15cf7c6372adf0e86.png)
结语:
说白了,LOD就跟ShapeKey 一样,只不过变化条件是屏幕距离尺寸,根据不同的距离开启相对应的不同精度的模型而已。
如有纰漏,欢迎各位大佬指出。