BlenderCN论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2096|回复: 10

[addon] Mesh Deformer

[复制链接]
发表于 2013-12-3 16:18:17 | 显示全部楼层 |阅读模式
本帖最后由 imdjs 于 2014-7-25 12:01 编辑

这是为blender写的插件,可以把一个网格的顶点绑定到另一个网格上,被绑定的网格会跟随主网格的形态变化而变化,目前这个插件不支持变形shapkey,只能变形原始网格,不是我不想支持,是我对shapekey的数据类型不太了解。
MeshDeformer.jpg

插件下载
http://blenderartists.org/forum/showthread.php?319650-addon-Mesh-Deformer
升级版全面支持shapekey 的转移。





发表于 2013-12-3 16:48:35 | 显示全部楼层
不错的东西,blender自己的mesh deform modifier确实不太好用。
刚试用了一下,不是很理解空间变形的逻辑。两个一样的box都无法做到同步。
xxx.png

另外这样写dll是为了加密吗?

如果blender的lattice能够有一个非box形的“松弛”状态就好了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-3 16:54:44 | 显示全部楼层
本帖最后由 imdjs 于 2014-7-14 10:30 编辑

目前对于mesh点数太低效果不好,因为我的设定是每个点绑定另一个mesh 的4个点,然后分配权重。另外,因为实现的代码是通过指针用c代码直接修改物体数据所以只能编译成dll。
两个绑定的物体的顶点是通过本地matrix绑定的,并不是世界matrix,不过以后可能会增加这个功能,但目前够我用了。
现在的功能还是很原始,有很多想法没有实现,因为我对blender的物体数据结构还不是太了解,例如,怎样通过object的指针找到它的shapekey的数据?

20140714最新版本 已经解决这个低面 效果不好的问题。


点评

blender的数据结构都能在datablock里面看到。另外多查查官方帮助。 这个功能用纯python也能做到的,可能没有你的效率高。  详情 回复 发表于 2013-12-3 18:20
回复 支持 反对

使用道具 举报

发表于 2013-12-3 18:20:41 | 显示全部楼层
本帖最后由 luxuy 于 2013-12-3 18:34 编辑
imdjs 发表于 2013-12-3 16:54
目前对于mesh点数太低效果不好,因为我的设定是每个点绑定另一个mesh 的4个点,然后分配权重。另外,因为实 ...

xxx.png xxx2.png
blender的数据结构都能在datablock里面看到。你要编辑的点在坐标应该就在这里。
另外多查查官方帮助。
这个功能用纯python也能做到的,可能没有你的效率高。

回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-3 19:27:43 | 显示全部楼层
的确,如果直接用python的api应该更容易实现,而且也很容易通过object找到shapkey的data,例如通过object的active_shape_key就能找到。我只是想尝试用另一种方法实现,如果实在不行再用python来找到所要的数据。对我来说实现功能并不是最重要,只是希望通过这实践多了解一下blender原始数据结构的操作。
回复 支持 反对

使用道具 举报

发表于 2013-12-4 09:31:17 | 显示全部楼层
感谢分享,为了方便大家比较。我把wiki几个相关的都贴过来。

http://wiki.blender.org/index.ph ... rm/Laplacian_Deform

http://wiki.blender.org/index.ph ... iers/Deform/Lattice

http://wiki.blender.org/index.ph ... /Deform/Mesh_Deform

更多相关资料,大家有这几个关键词就能搜到。

点评

谢谢 提供链接,正想多了解一下blender内置修改器的文档。  详情 回复 发表于 2013-12-4 10:09
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-4 10:09:41 | 显示全部楼层
nirenyang 发表于 2013-12-4 09:31
感谢分享,为了方便大家比较。我把wiki几个相关的都贴过来。

http://wiki.blender.org/index.php/Doc:2.6/ ...

谢谢 提供链接,正想多了解一下blender内置修改器的文档。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-9 10:27:13 | 显示全部楼层

本帖最后由 imdjs 于 2013-12-9 11:36 编辑

升级了一下,现在可以完全地通过shapekey变换了也就是可以在不同拓扑结构的物体间传递shapekey,为了找到object的shapekey数据真的有点麻烦,shapekey的数据是通过链表存在于mesh数据下面的,虽然麻烦但却可以更自由的操作数据。
视频:
http://you.video.sina.com.cn/b/121244026-1325600780.html
回复 支持 反对

使用道具 举报

发表于 2014-7-5 16:10:37 | 显示全部楼层
请问,是否可以在这个Mesh Deformer中加入一个把低模的“骨骼权重数据”传递给高模型,类似3dsmax的Skinwarp中的"Convert to Skin"。如果实现的话,给骨骼刷权重将会变得十分有效率。

blender自己实在不方便~~~~~~~~

点评

我也想说这个来着…… 这功能应该就是类似 MAX 的“蒙皮包裹”修改器吧?  详情 回复 发表于 2014-7-6 22:07
这个是可以实现的,只是目前我没有这个需求,可能以后会增加。这个插件我已经在官方论坛作了更新,现在这里这个不支持2.70 。 http://blenderartists.org/forum/showthread.php?319650-addon-Mesh-Deformer  详情 回复 发表于 2014-7-6 21:57
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-6 21:57:27 | 显示全部楼层
本帖最后由 imdjs 于 2014-7-7 09:42 编辑
John 发表于 2014-7-5 16:10
请问,是否可以在这个Mesh Deformer中加入一个把低模的“骨骼权重数据”传递给高模型,类似3dsmax的Skinwar ...


这个是可以实现的,只是目前我没有这个需求,而且我觉得无论骨骼权重多完美地传递,最终还是要手动刷一下权重才能达到我的要求,我觉得目前自动权重功能基本可以应付。或者以后会增加这个功能。这个插件我已经在官方论坛作了更新,现在这里这个不支持2.70 。
http://blenderartists.org/forum/ ... addon-Mesh-Deformer
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

Blender最新中文教学视频|Blender头条|小黑屋|手机版|Archiver|Blender中国 ( 蜀ICP备17002929号 )360网站安全检测平台

GMT+8, 2019-12-16 08:17 , Processed in 0.021395 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表