2.8 KiB
目前LOD分级工作流程复盘:
-
场景地编优先完成最高级别资源,即lv3的场景prefab;(场景一共预计做lv0,lv1,lv3)
-
选中该lv3 prefab,复制出一份,改名lv0;
-
在空场景中拖入lv0,或者进入lv0 prefab编辑模式;
-
在Project目录中遍历lv3所有关联材质,逐个Find refererce in scene,找到该材质在预制体里对应的所有Renderer(GameObject)。
-
选中所有列出的Renderer(GameObject)。
-
复制该材质,重命名为lv0资源,指定给所有对应的Renderer。
-
遍历完所有材质,完成执行lv0材质资源的生成、替换。
-
选中所有lv0的材质,统一设置成lv0对应的shader(贴图关联会发生变化,比如lv3有法线图,lv0是没有的)
-
所有lv0材质,先执行无用序列化去除,然后用Select Dependency找到实际对应的贴图,复制出来移动到目录。
-
逐个贴图更名为lv0资源,指定回对应的lv0材质,完成所有贴图的替换。
-
至此完成场景lv0 Prefab和所有资源的准备工作。
-
美术最后根据实际情况,逐个贴图、材质在进行额外的手动操作,替换shader、贴图降尺寸操作等。
工具需求(仅根据目前所需)
-
选中一个Prefab作为编辑对象。
-
可设置输出的目录(目录位置或目录名?)
-
可设置需要生成的目标LOD级别。
-
生成的各种资源文件,命名能够自动补齐命名。
-
完整前缀,&符号前的部分,即"类型+LOD"的部分,例- texlv0&。
-
能够补齐(或指定)lob,ing的部分,例- texlv0&ing。
-
原先已有前缀(删掉重新指定?)。
-
原先已有lob,ing(删掉重新指定?)。
-
-
界面列出选中Prefab的所有实际关联的材质球,最好能逐项做选择(或剔除),以确定出需要执行LOD调整的材质球列表。
-
可设置目标LOD材质球对应的Shader。
-
【按钮-生成LOD资源】以选中的材质球列表为基准,执行预制体、材质、贴图资源的复制,命名调整,并重新建立关联。
-
预制体复制到目录。
-
材质复制到目录,改名,并关联回原材质对应的renderer(在新复制的预制体里)。
-
贴图复制到目录,改名,并关联回原贴图对应的(新复制出来的)材质。
-
贴图需要辨别是否已存在lv资源?(需要详细讨论一下,因为有一种情况是共用的贴图怎么办?比如一些Cubemap环境球贴图,或者是地表类的,可能目录已经在外面其它地方,)
-