■Unity開発メモ用のWiki◎現在扱っていること・Unity全般・MMDからUnityへの変換してインポート・MMDの仕様把握・BlenderでMMDモデルのカスタム




大まかな流れ

AnyPortraitの起動

  • 「Window > AnyPortrait > 2D Editor」

PSDファイルをUnityにインポート

  • レイヤー情報を使用して一度にメッシュグループを作成する事が出来る
    • レイヤーグループでレイヤーをまとめていると、アトラスはうまく出力されるが、メッシュが自動で作成されない

PSDファイルの再インポート

公式マニュアル:PSDファイルの再インポート
  • 基本的にウィザードに従っていけば、修正した画像のアトラスが作成される
  • 1. レイヤーを変更した場合
    • レイヤーの画像サイズと位置が変更されているため、位置を修正する必要があります。
  • 2. レイヤーが削除された場合
    • 再オープンするPSDからレイヤーが削除されます。
    • 新しい 「Atlas」を作成するときには含まれていません。
      • メッシュグループとメッシュグループは以前の 「Atlas」を参照して維持されます。 自動的に削除されたり、このレイヤーで参照される 「Atlas」も削除されません。
  • 3. レイヤーが追加されたとき
    • 新しいメッシュが作成されます。 ただし、新たに追加されたメッシュがメッシュグループの最上部に追加されます。

各種TIPS

AnyPortraitエディター用のサムネイルを用意する

公式マニュアル:1.10. サムネイルの作成

まばたき

16:36

ジグルボーン(揺れもの)

公式ドキュメント:ジグルボーン
  • メッシュグループ→ボーン→ジグルボーン→ジグルボーン有効/無効

ジグルボーンのパラメータ設定
  • 髪の毛ならデフォルトでも良い感じ?→要調査
  • 質量:値が大きくなるほど動きが鈍くなって重くなります
  • K定数:元の形に戻ろう属性です。値が大きくなるほど速く弾力的に復元されます。
  • 空気抵抗:空気抵抗を受ける程度で0から1の間の値を持ちます。値が大きいほど、外部の動きに敏感で大きく動きます。
  • ブレーキ:減衰力です。この値が大きいほど、揺れる時間が短くなって急速に元の形に復元されます。 K-Valueとは異なり、この値が大きければ弾性が減少します。
  • 角度制限が有効/無効:この角度は最大範囲であり、実際には自然な動きのために範囲の約70%程度から速度が減少し始めます。

メッシュ割り

  • キツキツのマシンスペックでなければ、メッシュを細かく割っても大丈夫か?
    • 「Complex」
  • AnyPortraitの自動メッシュ作成機能で細かめにメッシュを割って、頂点を整える?
  • ボーンを意識してメッシュを割っていく?



自動メッシュのパラメータ

  • 「Density」の値が大きくなるほど頂点が多く生成されます。
  • 「Margin」は、画像の端から外方向にどのくらいの距離を置いて端頂点を生成するかのオプションです。
値が大きくなるほど距離に頂点が配置されます。
  • 「Padding」は、「Morph」や「Rigging」によって画像が変形する場合には、画像のエッジで発生する歪みを低減する役割をします。
メッシュを生成すると、画像の端から内側に頂点が生成されたことを見ることができます。

個別のメッシュの自動作成

複数のメッシュの自動作成

  • PSD画像をインポートし、メッシュが矩形で出力された場合に有効?
参考:複数のメッシュを自動的に生成

リギング

公式マニュアル:様々な場合でのリギング
  • ボーンのつなぎ目のポリゴンの変形が角張っている?
  • 下側(ポーズテストの左)にあるアイコンで、メッシュにリギングされていないボーンの表示/非表示の設定

連続した複数のボーンで構成された場合のブレンド機能を使ったリギング(髪の毛の房など)

  • 一番根本のボーンとそれに対応する付近の頂点を選択し、重み「1」で塗りつぶす
  • 同様に2番目のボーン、3番目のボーンとそれらに対応するメッシュの頂点を選択し、重み「1」で塗りつぶしていく
  • すべてのボーンをリギングしたら1番最初のボーンを選択し、前回より広めの頂点を選択し、「Blend」アイコンをおす
→ウェイトがグラデーションになる
  • 同様に他のボーンを行っていく
  • 下の画像のようにウェイトがなめらかになる

ブラシモード(ケモミミ等の大きな骨と小さな骨二つに構成された場合)


重なったメッシュにリギングの重みをコピー(ウェイト転送)

  • 元となるリギングを行い、コピーする頂点を選択し、「Pos-Copy」を押す
  • コピー先のメッシュにリギングモディファイアを取り付け、頂点を選択し「Pos-Paste」を押す

オートリグ

1段階目
  • ブレンドでやったように、それぞれのボーンとメッシュの頂点をざっくりと重み「1」で塗っていく

2段階目
  • オートリグがある程度分けてやった方が精度が上がるか?全部の頂点を選択した状態ではなく、ある程度うでやあしで分ける?
  • Ctrlを押しながら「オートリグ」ボタンを押し、オートリグが適用されるボーンを選択する(ふくらはぎボーンなら、ふくらはぎボーン、ふとももボーン、あしボーンを選択する)




ボーンIK関連

IKの動作確認する方法

  • バージョン1.4.1.の段階では、そのままではIKの動作確認ができず、ひと手間かける必要がある
    • もっとスマートな方法は?
  • 対象のメッシュグループにモディファイア「Transform(Animation)」を追加する
  • 新しくアニメーションクリップを作成し、IKヘルパーボーンをタイムラインレイヤーに追加する
  • 編集を開始しキーを追加する
  • 編集ウィンドウの左上にある「Ξ」を選択し→オニオンスキン→オニオンスキンを表示

IKチェーンの作成

公式マニュアル:骨のIK設定
IKチェーンの概念図
  • IKチェーンは「Head、Chain,、Target」で構成される。
    • 1. Single : 1つのボーンだけにIKを適用した場合用
    • 2. Head : IKチェーンの出発点
    • 3. Chain : IKチェーンの中間ボーン、「Head」と「Target」の間のすべてのボーンは強制的に「Chain」モードになる。
    • 4. Disabled : IKチェーンが無い場合。子の骨が存在しないか、ランダム指定された場合にこのモードが設定されます。
  • IKは「Head」の骨を出発点とし、「Target」の骨の位置まで計算される。
  • まずIKの出発点となつボーンを選択し、IK設定で「IK Head」を指定(この場合は二の腕)
  • 項目「IKターゲットの変更」でIKの終端のボーンを選択する(この場合は手)
  • 始点と終点の間にあるボーンは自動的に「IK Chain」になっている
  • 終点のボーンは「Disabled」になっている

IKコントローラ(Bone IK Controller)

公式マニュアル:骨のIKコントローラ
  • IKの終点ボーンの近くに、新しくIK制御用「HeiperBone」を作る
  • 「ヘルパー」にチェックを入れる
  • IKの終端のボーンを選択し、「IKコントローラの設定」「エフェクトーボーン」「デフォルトのFK/IK重量」を設定する
    • 「Effector Bone」→「Change」ボタンを押し、先ほど作成した「Helper」の骨をに選択
    • 「Position Controller」は、IKの「Target」骨の位置が「Effector」骨に可能な近くなるようにIKが動作するモードです。
    • 「Look At Controller」は、IKの「Target」骨が指す方向が「Effector」骨を指すようにIKが動作するモードです。
    • 「Default FK/IK Weight」は、他の重量設定がない場合に適用されるデフォルトの重量値です。値が1の場合、IKコントローラは100%適用されます。 値が0.5の場合、50%のみが適用されます。

アニメーションクリップ

ロトスコーピング(Rotoscoping)でアニメーションの作成

  • 参考にする画像を用意する
    • 次のサイトでオンライン上でGIFを連番JPEG画像に変換するiloveimg.com
  • 画像形式はPNGのみ

後でまとめる項目

  • 関節の位置による違いリギングの違い
  • IK Angle Constraint(角度制約)

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu

【メニュー編集】

スカイリム関連

スカイリム関連


Menu

【メニュー編集】

スクリプト関連

フリーエリア

管理人/副管理人のみ編集できます