Mayaリガー向け!UE4.26 ControlRig &Python、コントロール階層を自動で作る!

動画の概要

ボーン階層とは別にコントール階層をPythonで作るのをPythonで行っています。

リグの設計にもよりますが、基本はボーン階層の中身はいじらない!というルールで
私自身はリグを作ってきました。

今回はその慣習に習って、UE4でも同じことをやってみたものです。
恐らくリガーの方でもボーン階層は触らない思想の方は多いはず…なので
参考になれば幸いです。

動画内のサンプルコード

# coding: utf-8
import unreal

# 開いているControlRigを取得する
rigs = unreal.ControlRigBlueprint.get_currently_open_rig_blueprints()
rig = rigs[0]

# ControlRigHierarchyModifierを取得する
h_mod = rig.get_hierarchy_modifier()

# 選択エレメントを取得する
elements = h_mod.get_selection()

"""------------------------------------------------
    スペース&コントロール作成&階層作成
------------------------------------------------"""
parent=None
for element in elements:
    # スペースを作成する
    space = h_mod.add_space("{}_space".format(element.name), space_type=unreal.RigSpaceType.SPACE)

    # コントロールを作成する
    control = h_mod.add_control("{}_control".format(element.name), space_name=space.name)

    # スペースにボーンの初期トランスフォームを適用する
    bone_initial_transform = h_mod.get_initial_transform(element)
    h_mod.set_initial_transform(space, bone_initial_transform)

    # parent変数が空でない場合、ペアレントする(階層を作る部分)
    if parent is not None:
        h_mod.reparent_element(space, parent)
    parent = control

Pythonコマンドを呼び出すGUIの作り方

以下の動画にやり方がまとめています。

Pythonのおすすめ書籍

関連記事

  1. UE4マテリアル入門 #2「LERPの基本的な使い方と応用」

    2020-10-15

  2. Megascans Plugin for Unreal Engineを使ってみよう!

    2020-10-24

  3. 負荷計測マスターへの道! RenderDocでボトルネックを特定!

    2024-08-27

  4. UE4のコントロールリグ、Backwards Solveでアニメーションリターゲット!

    2021-10-17

コメント

ABOUT

テクニカルアーティストの為のまとめサイトです。

本サイトでは、『YouTube ✕ Blog』を中心に
情報発信をしていきます。

また、テクニカルアーティストとしての様々な
ライフハック記事も投稿予定です。

限定情報会員

PATREONでは、限定情報やサンプルファイルの配布も行っています。登録頂けると更新頑張れます。支援の方よろしくお願いします。


免責事項

本ウェブサイト内で公開している全ての情報の有用性や安全性については当方は一切の保証を与えるものではありません。
利用したことによって引き起こる直接および間接的な損害に対して当方は一切責任を負うものではありません。
全て自己責任でご使用ください。

3DCGBOOK出版

BOOTHで技術書を販売利しております。







スポンサー

ページ上部へ戻る