Poser覚書> Poser操作 > スクリプト

フィギュアの関節を微妙に動かすスクリプト

 フィギュアの関節を微妙に-1~1度程度動かすスクリプトを作った。


▲モデルは S4 、服は Dream Weaver 、髪は Diamond Hair

import poser
import random

ignore_parts = ['Pinky','Ring','Mid','Index','Thumb','Jaw','tongue','Eye']

scene = poser.Scene()
figure = scene.CurrentFigure()
if figure:
    bodyparts = figure.Actors()
    for part in bodyparts:
        try:
            for ipart in ignore_parts:
                if str(part.Name()).find(ipart) != -1:
                    raise "ignore parts"  # for escape loop

            XROT = part.ParameterByCode(poser.kParmCodeXROT)
            YROT = part.ParameterByCode(poser.kParmCodeYROT)
            ZROT = part.ParameterByCode(poser.kParmCodeZROT)
            xrot = float(XROT.Value()) + random.random() * 3 -2
            yrot = float(YROT.Value()) + random.random() * 3 -2
            zrot = float(ZROT.Value()) + random.random() * 3 -2
            part.SetParameter(XROT.Name(), xrot)
            part.SetParameter(YROT.Name(), yrot)
            part.SetParameter(ZROT.Name(), zrot)
        except:
            pass
else:
    print "Usage: Please select figure. This tool set body noise on current frame."

 そんなもんがいったい何の役に立つのか。

 アニメーションを作るとき、人間がぼーっと立ってるシーンで、人物の肩や腰などが完全に固定されているとおかしいだろう?だけども、適当に動かそうとして、関節のbendだのtwistだのを適当に動かすのも相当にめんどくさくないだろうか。私はめんどくさい。

 そこでこのスクリプトの登場だ。

使い方

 フィギュアをクリックして選択状態にしてから、スクリプトを実行する。

 スクリプトを実行するには、File→Run Python Scripts...で直接ファイルを指定して実行するか、<Poserインストールフォルダ>Runtime\Python\poserScripts\ScriptsMenuにスクリプトをコピーすれば、画面上部のScriptsメニューから呼び出せる。(参考:Pythonスクリプトでキーボードショートカットもどき

ダウンロード

 念のため、ダウンロードできるようにしておこう。

 bodynoise.py

関連:
デキる女風ヘア Diamond Hair
Pythonスクリプトでキーボードショートカットもどき

次のIKオンオフを繰り返してたら、足首がグシァッ!ってねじれた! 解決方法は?へ


Poser覚書> Poser操作 > スクリプト もくじ