vrchat庇护所吧 关注:370贴子:4,240
  • 6回复贴,共1

Blender导出FBX相关注意事项(炸描边、PB半径异常等)

取消只看楼主收藏回复


注:不讲动画/动作相关,因为我还没学


IP属地:中国澳门1楼2024-12-17 20:27回复
    去去去去去去年、小斩酱、Yuukini. . . 被楼主禁言,将不能再进行回复
    关于炸描边、PB半径异常:
    blender修改并导出fbx后,套上原材质(特别是liltoon),描边大了一圈,不正常
    并且,有时PB在使用同一数值的情况下,半径相比原来的预制件大(或小)了100倍左右
    原因:
    两者差不多,都是因为没有应用全部变换+导出的缩放设置没选FBX全部导致的
    ~
    解决方法:
    1.完成全部修改后,回到物体模式
    2.按A全选骨架和所有网格
    3.鼠标放在场景中按【Ctrl+A】,或是物体模式下在左上角找到【物体-应用-全部变换】,按一下

    4.确保所有物体的【变换】的位置、旋转属性都为0/0/0,缩放为1/1/1
    ps.有时变换模式会使用四元数运算WXYZ,而不是XYZ欧拉,这个没有什么影响,两者选其一即可

    5.导出,注意导出设置的变换-应用缩放一定要选择【FBX全部】,其他默认


    IP属地:中国澳门2楼2024-12-17 20:38
    回复
      2025-07-29 20:12:36
      广告
      不感兴趣
      开通SVIP免广告
      适合懒人的解决办法:(无需重新导FBX)
      ①liltoon的轮廓属性,将【蒙版&宽度】的数值改小为一百倍
      ②PB半径同理,缩小为一百倍

      ps.大部分情况下,这个数值是100倍,但不排除某些粗心的作者数值不同,这种情况我建议你直接去拷打他😗


      IP属地:中国澳门3楼2024-12-17 20:42
      收起回复
        关于只导出特定项:
        有时,你需要在工程内同时导入化身的素体和衣服以方便对照调整某些部件,但修改完成后只想导出衣服,而直接导出会导致FBX内多出一份素体
        原因:默认导出设置会导出工程内所有项目

        ~
        解决方法:
        ①保存(并备份)blender工程,【临时删除】化身素体,包括骨架和网格,再进行导出,完成后关闭工程但【不要保存】
        ②只选择衣服的骨架和网格,导出
        ps.选中骨架后,按住shift再单击末尾的网格,即可选择骨架到该网格的所有项,这个办法在Unity也适用


        IP属地:中国澳门4楼2024-12-17 20:50
        回复
          关于PB Limits前后效果不同:
          给新FBX套用原预制件的PB数据后,Limits的作用范围(青蓝色区域)明显不同
          以图中为例,左为原预制件,所有Limits正常,并朝向裙子外侧;右为修改后的FBX,明显能看出Limits歪了90度左右,并且贴在裙子表面
          ps.图片仅供参考

          原因:Blender对FBX支持较差,导入时骨骼的扭转数值有变化
          ~
          解决方法:
          ①鲸鱼家后来的模都有给.blend文件,使用对应版本的Blender打开该工程并修改,导出时直接覆盖Unity工程内的原FBX即可
          ②Blender内自己修改骨骼扭转数值,并在Unity内对应更改PB Limits数据
          1.Blender内,选中骨架,切换到编辑模式
          2.选中裙子根部骨骼,一般命名是skirt_root之类,【shift+G】选择【子级】,按【M】将这些骨骼移到另一个层(高版本叫Bone Collections),或者,【shift+H】,隐藏其他骨骼

          3.按小键盘7,切换到顶视图,并在视图显示里打开骨骼【轴向】

          4.左上角,【骨架-重算扭转-游标】,点一下
          ps.这一步需要游标在世界原点,如果你没动过,那么它默认就在那里

          5.检查一下骨骼现在的轴向,应该是所有【Z朝内/Z朝原点】

          6.如果有个别骨骼轴向异常,例如图中最后一根骨骼,明显与其他骨骼不同,这时需要自己手动调整,选中后按【Ctrl+R】,将Z轴转向内侧/原点

          7.导出FBX
          8.Unity内,修改PB Limits中的Rotation数据
          ❶以图中的PB为例,原Rotation数值是-50,90,0

          ❷将Roll数值调整为0,可以看到Limits已经从贴合裙子表面变为了垂直于裙子表面,不过朝向还不正确

          ❸将Pitch数值乘负一,变为-50,此时Limits变成了朝向裙子外侧,和原预制件的效果一致

          ❹转动视角检查Limits,如果你严格按照我的步骤走,这里是不会有问题的


          IP属地:中国澳门5楼2024-12-17 21:18
          收起回复
            关于PB多说几句:
            如果你改过衣服的整体缩放或位置,那么碰撞Colliders也要套用一样的数值
            我的建议顺序是:Unity内更改原预制件的缩放,并让位置归零(0,0,0),保留→Blender修改→Unity导入新FBX→隐藏原预制件的网格,复制并粘贴PB和对应碰撞
            ~
            ①如果碰撞是单独一个空物体,那么直接挪到对应骨骼下即可,或是整理到一起,用MA Bone Proxy

            ②如果碰撞组件套在衣装的骨骼上,直接右键骨骼-新建空物体,并复制粘贴碰撞数据,再拿走这个空物体,无需修改任何数值,之后的步骤和上面一样


            IP属地:中国澳门6楼2024-12-17 21:24
            回复
              关于新FBX修改形态键数值时阴影变化:
              Unity导入FBX的默认设置导致的
              ~
              实际上不用着急改这个,因为VRC SDK会强制要求你FIX这一项才能上传
              手动修改是在FBX-Model-勾上Legacy Blend Shape Normals(可以顺手把Read/Write Enabled也勾了)

              推荐一下lil的免费工具箱lilEditorToolbox,有相关功能,可以在导入时自动设置好FBX


              IP属地:中国澳门7楼2024-12-17 21:30
              回复