网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
09月01日漏签0天
unity3d吧 关注:116,502贴子:561,090
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 4回复贴,共1页
<<返回unity3d吧
>0< 加载中...

求教,关于共享动画的多skinmesh合并的问题

  • 只看楼主
  • 收藏

  • 回复
  • corpus
  • Renderer
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
RT,因为看到吧友讨论性能问题,所以查了下官网文档,发现官方建议在单套骨架驱动多个skinnedmeshrenderer时合并这些蒙皮模型会提高渲染效率。虽然他说的单pass绘制出整个角色这点我还没法享用,因为本身这些部分模型使用了不同的纹理和shader,但是他说在可视性检测时一个animator搭配一个skinned mesh renderer也有提升。于是为了这个我就打算尝试合并。在wiki上找到一个前人所写的脚本,叫CombineSkinnedMeshes.cs。使用后发现怎么也不对,模型虽然合并在一起了,但是一播放动画形体就扭曲变形。调试之后感觉问题好像出在合并后的蒙皮信息里的bind pose矩阵组计算错误导致的。他计算绑定矩阵的方法是skinnedmeshRenderer.bones[i].WorldToLocalMatrix * transform.WorldToLocalMatrix。 这就相当于是吧合并后的模型的顶点先从世界空间变换到模型本地空间,再从模型本地变换到骨骼的本地空间。看起来原理上讲没错,但是实际确有问题,因为如果参与合并的多个模型的pivot本身不在一起,那么也就是会出现对应同一跟骨骼的不同模型的绑定矩阵就不一样了。大家有没有用过这个脚本的,或者自己做过类似功能的,帮我看看吧,谢谢了。


  • corpus
  • Renderer
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
附上官网那篇优化策略文章
docs.unity3d.com/Manual/ModelingOptimizedCharacters.html
以及wiki上的这个脚本原文
wiki.unity3d.com/index.php/CombineSkinnedMeshes


2025-09-01 18:29:08
广告
不感兴趣
开通SVIP免广告
  • corpus
  • Renderer
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
就这么沉了么,话说吧里大神们做过换装的应该都遇到过这个问题吧。


  • 新世界的欧亚吉
  • Unitor
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
我来挖坟了,楼主求交流一下,最近也在做这个。。


  • feijigang
  • Texture
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
最近也在研究这个 可有人解决了呢


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 4回复贴,共1页
<<返回unity3d吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示