blender導入ninjaripper的rip文件的問題

blender導入ninjaripper的rip文件

提示

最終解決方案見 最終解決。

引子

玩AI少女的時候,捏了個老婆想把她導出來,發現了ninjaripper這個工具。導出的3D素材主要爲.rip格式,不是常用的模型格式。百度一般的解決辦法是用3dmax,導入轉成.fbx,我電腦上只有blender,發現無論用什麼都是需要從ninjaripper自帶的tool,用腳本導入,正好也有blender的導入腳本。

插件安裝問題

依照每個紳士都該學會提取老婆的模型操作基本的步驟,但是在開啓插件的時候會報如下錯誤

Traceback (most recent call last):
  File "E:\Aplication\Blender\2.82\scripts\modules\addon_utils.py", line 330, in enable
    importlib.reload(mod)
  File "E:\Aplication\Blender\2.82\python\lib\importlib\__init__.py", line 169, in reload
    _bootstrap._exec(spec, module)
  File "<frozen importlib._bootstrap>", line 630, in _exec
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "C:\Users\hierfer\AppData\Roaming\Blender Foundation\Blender\2.82\scripts\addons\import-ninja.py", line 7, in <module>
    from bpy_extras.io_utils import ImportHelper, orientation_helper_factory, axis_conversion, _check_axis_conversion
ImportError: cannot import name 'orientation_helper_factory' from 'bpy_extras.io_utils' (E:\Aplication\Blender\2.82\scripts\modules\bpy_extras\io_utils.py)

本人不懂py,查了一下,是"bpy_extras.io_utils"不包含"orientation_helper_factory"。上blender 手冊 查詢,"bpy_extras.io_utils"確實沒有"orientation_helper_factory"這個成員。最後在Blender 2.80: Helper Modules 查到原來這是2.7x的用法,2.8x改了。

2.7x:
from bpy_extras.io_utils import (
        ImportHelper,
        orientation_helper_factory,
        )

IOFBXOrientationHelper = orientation_helper_factory("IOFBXOrientationHelper", axis_forward='-Z', axis_up='Y')

class ImportFBX(bpy.types.Operator, ImportHelper, IOFBXOrientationHelper):
    pass
    
2.8x:
from bpy_extras.io_utils import (
        ImportHelper,
        orientation_helper,
        )

@orientation_helper(axis_forward='-Z', axis_up='Y')
class ImportFBX(bpy.types.Operator, ImportHelper):
    pass

看來直接把報錯的"orientation_helper_factory"注了就行。把import處"orientation_helper_factory"注了,RipImporter定義改爲"class RipImporter(bpy.types.Operator, ImportHelper):"。再次安裝,沒有報錯,但是import菜單裏並沒有出現想要的import rip選項。問題依舊。

版本問題

由於不懂py,不想再看代碼了。懷疑是版本太老的問題,我下載的是v1.7.1的漢化版。那麼上官網,最新版依然是v1.7.1。查看腳本還是老樣子。還是不行。

最終解決

也就是說官方的更新都是落後於版本的?那麼官方一定被提交過issue吧。
用bing國際版搜索"blender import rip"相關問題。github上有一個項目RipImport 從描述上看,顯然就是爲了 blender 2.8x解決rip improt 問題的。下載,然後按照README.md提示操作。報錯沒有io_import_rip_2模塊。把剛纔複製的文件夾io_import_rip_2.8改名爲io_import_rip_2再導入。成功。import中出現了導入rip的選項。導入時記得勾選整個文件夾導入。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章