问题一:物体缩放倍数奇奇怪怪
有时候看着两个blender的模型场景,比如一栋楼。我复制A.beldner里面的门粘贴到B.blender里面来,啥也看不到,通过按【S】进行缩放之后看到了,可是为啥会放大呢?
有时候将blender导出的A.glb通过threejs导入代码,获取其中门的坐标,发现高宽好大呀,然后scale缩小了好多倍呀,不方便代码操作定位啊。难怪当初复制过来,突然会变得巨大,那咋搞呢?
注意了:
按【A】全选物体,【Ctrl+A】选择全部变换,所有物体的原点就回到了世界坐标原点,这样才统一啊!
这时候场景里面的物体相对位置和缩放大小都是相对世界坐标而言的,这样才能保证你复制出去的东西也是相对世界坐标。
当然最后导出.glb模型时,通常会按【A】全选物体,左上角【物体-设置原点】选择原点->几何中心。
此时通过代码获取物体的坐标,就是其几何中心相对世界坐标的坐标点了。
有点像绕口令哦,可以通过按【N】观察一下物体的位置、缩放、尺寸的变化吧。
问题二:全部变换后保存时物体炸开
有时候blender看一个场景好好的,按【A】全选物体,【Ctrl+A】选择全部变换也挺正常的。
但是一旦保存blender文件,或者导出glb文件后,突然物体都炸开了。
搞了半天是因为物体上有动画,可以通过右上角的图层面板看到,但是并没有什么用的动画不知道从哪导入模型时引用的。
此时,只需要删除动画,然后转换就不炸开了,坐标都相对世界坐标位置和缩放大小了。
对比总结:
往blender中导入模型时,经常看到这种,密密麻麻的线,图层中有很多多余的东西比如动画,导出glb后代码中获取物体坐标位置很大缩放很小。
都是因为"相对"和"绝对"的影响,于是需要先使用全局变换,再导入组装到一起。
如下情况就没有密密麻麻的线,图层的内容很简洁,导出glb后代码中获取物体坐标位置和缩放正常。