Giter Club home page Giter Club logo

blender_mmd_tools's Introduction

mmd_tools

mmd_toolsはblender 2.66以降対応のMMDモデル(.pmx)およびモーションデータ(.vmd)インポータです。

環境

対応バージョン

blender 2.66以降

動作確認環境

Windows 7 + blender 2.66a 64bit

使用方法

インストール

mmd_toolsディレクトリをaddonディレクトリにコピーしてください。

.../blender-2.66a-windows64/2.66/scripts/addons/

Addonのロード

  1. User PrefernceのAddonsから"Object: MMD Tools"探してチェックを入れてください。 (検索ボックスにmmdと入力すると簡単に探せます。)
  2. 3D View左のパネルにMMD Toolsのパネルが表示されます。

MMDモデルデータ読み込み

  1. MMD Toolsパネルの"import pmx"ボタンを選択してください。
  2. ファイル選択画面でpmxファイルを選択すると、選択されたモデルをインポートします。

モーションデータの読み込み

  1. あらかじめ読み込んでおいたモデルのMeshとArmature、Cameraを選択してください。(選択していない項目はインポートされません)
  2. MMD Toolsパネルの"import vmd"ボタンを選択してください。
  3. ファイル選択画面でvmdファイルを選択すると選択中のオブジェクトへモーションをインポートします。
  4. 「auto scene setup」ボタンを押してください。剛体シミュレーションの範囲およびFrameRangeを自動設定します。

その他の機能

separate by materials

選択したメッシュオブジェクトのメッシュをマテリアル毎に分割し、分割後のオブジェクト名を各マテリアル名に変更します。
blenderデフォルトの"Separate"→"By Material"機能を使用しています。

to cycles

選択したメッシュオブジェクトのblenderRender用マテリアルをcycles用に変換します。 何の根拠もない適当な変換です。
完了メッセージなどは表示されません。マテリアルパネルから変換されているかどうか確認してください。

また、マテリアルパネルから一部の設定値がドラッグで変更できない不具合があります。(reflectionなど) 値を変更する場合は、値を直接入力してください。

auto scene setup

pmxインポート後に適当な設定ですぐレンダリングできるよう自動設定を行います。

  1. FrameRangeおよびRigid Body Cacheの範囲をシーン上アニメーションのレンジに合わせます。
  2. "Ambient Occlusion"、"Environment Lighting"および"Indirect Lighting"をオンにします。
  3. フレームレートを30fpsに変更します。

各種パラメータ詳細

Import PMX

  • scale
    • スケールです。変更すると大変なことになります。
  • rename bones
    • ボーンの名前をblenderに適した名前にリネームします。(右腕→腕.Lなど)
  • delete tip bones
    • 試験的な機能です。通常、使用する必要はありません。
  • hide rigid bodies and joints
    • 剛体情報を持つ各種オブジェクトを非表示にします。
  • import only non dynamics rigid bodies
    • ボーン追従の剛体のみインポートします。clothやsoft bodyを使用する等、剛体情報が不要な場合に使用してください。
  • ignore non collision groups
    • 非衝突グループを読み込みません。モデルの読み込み時にフリーズしてしまう場合に使用してください。
  • distance of ignore collisions
    • 非衝突グループの解決範囲を指定します。指定された距離より離れている剛体同士は非衝突グループの設定を適用しません。

Import VMD

  • scale
    • スケールです。変更すると大変なことになります。
  • margin
    • 物理シミュレーション用の余白フレームです。
    • モーションの初期位置が原点から大きく離れている場合、モーション開始時にモデルが瞬間移動してしまうため物理シミュレーションが破綻します。 この現象を回避するため、blenderのタイムライン開始とモーション開始の間に余白を挿入します。
    • モーション開始時に剛体を安定させる効果もあります。

その他

  • カメラとキャラクタモーションが別ファイルの場合は、ArmatureとMeshを選択してキャラモーション、Cameraを選択してカメラモーションというように2回に分けてインポートしてください。
  • モーションデータのアサインは"MMD Tools"でインポートしたモデルのみ可能です。
  • カメラはMMD_Cameraという名前のEmptyオブジェクトを生成し、このオブジェクトにモーションをアサインします。
  • 複数のモーションをインポートする場合やフレームにオフセットをつけてインポートしたい場合は、NLAエディタでアニメーションを編集してください。
  • アニメーションの初期位置がモデルの原点と大きく離れている場合、剛体シミュレーションが破綻することgあります。その際は、vmdインポートパラメータ"margin"を大きくしてください。
  • pmdのインポートには対応していません。pmdモデルを読み込みたい場合は、PMDEditorでpmx形式に変換してからインポートしてください。(将来的には対応したいです。)
  • pmxインポートについて
    • 頂点のウェイト情報がSDEFの場合、BDEF2と同じ扱いを行います。
    • 頂点モーフ以外のモーフ情報には対応していません。
    • 剛体設定の"物理+ボーン位置合わせ"は"物理演算"として扱います。

既知の問題

  • 剛体の非衝突グループを強引に解決しているため、剛体の数が多いモデルを読み込むとフリーズすることがあります。
    • 正確には完全なフリーズではなく、読み込みに異常な時間がかかっているだけです。
    • フリーズするモデルを読み込む場合は、"ignore non collision groups"オプションにチェックを入れてください。
    • 上記オプションをオンにした場合、意図しない剛体同士が干渉し、正常に物理シミュレーションが動作しない可能性があります。
  • 一部のボーン構造はIKを正常に読み込めないようです。(例:DIVA風ミクver105改.pmx等)

ライセンス

Copyright © 2012-2013 sugiany
Distributed under the MIT License.

blender_mmd_tools's People

Contributors

sugiany avatar iri-e avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.