查看: 2088|回复: 1
打印 上一主题 下一主题

[Shaders] Unity批处理修改烘培LightMap Shader

[复制链接]

2508

主题

2

听众

3万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
32806
精华
12

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2012-4-25 09:27:29 |只看该作者 |倒序浏览


    一些用Unity朋友苦恼烘培后的多重纹理不能直接转到Unity中,还需要一个个的手动指认Shader.所以特意翻译了该文.在Max里建立你的模型,然后Diffuse Map贴这个模型上,导出一个Fbx文件,然后再相同的模型和相同的Diffuse Map通道上,贴好烘培图,同样导出一个Fbx文件,最终的结果是2个Fbx文件,模型是相同的,其中一个包含材质UV信息,另一个包含LightMap材质UV信息. 关键字:Unity
    批处理
    烘培
    LightMap
    Shader
   
    -->


一些用Unity朋友苦恼烘培后的多重纹理不能直接转到Unity中,还需要一个个的手动指认Shader.所以特意翻译了该文.在Max里建立你的模型,然后Diffuse Map贴这个模型上,导出一个Fbx文件,然后再相同的模型和相同的Diffuse Map通道上,贴好烘培图,同样导出一个Fbx文件,最终的结果是2个Fbx文件,模型是相同的,其中一个包含材质UV信息,另一个包含LightMap材质UV信息.





这个Unity资源包包含两个编辑器脚本,即"合并"两个模型网格和将一个模型上的UVs复制到另一个模型物体上并创建一个文本文件记录UV坐标信息.其他的脚本是重新导入Fbx物体的时候重新赋予UVs.



它还能自动设置所有LightMap材质,因此你不必手动的设置Shader和重新赋予LightMap纹理.



唯一的"副作用"是用来取LightMap的UV坐标的网格模型的LightMap通道会被Diffuse Map所占据,但这不是一个真正的问题,作为LightMap 网格模型可以在UV转移后删除掉.



使用本脚本的方法,你必须像下图这样选择两个网格物体文件,然后右键菜单中选择TransferUVs.








这个脚本不仅测试了从LW 9.5导出的OBJ模型,它也可以很好的用于其他软件导出的模型文件.



分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏1 支持支持0 反对反对0
回复

使用道具 举报

1

主题

1

听众

4795

积分

中级设计师

Rank: 5Rank: 5

纳金币
955
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2014-5-28 11:26:36 |只看该作者
感谢楼主分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /1 下一条

手机版|纳金网 ( 闽ICP备08008928号

GMT+8, 2024-5-8 17:05 , Processed in 0.086915 second(s), 28 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部