Blenderプラグインを作ってみゆ

現在ゲーム作成作業中、なのですがー…イメージに合う背景素材がフリーで見つからないのでBlenderでちょちょいとやることにしました。
環境設定は済んでいたのですが触るの久しぶりのため操作方法完全に忘却してましたね…。ついでにBlenderもアップデートしておきました。=>2.69。
Blenderの内部組み込みスクリプトとしてpythonが採用されていることは知っていましたが、実際に触ったことがなかったため、コンソールを見てみるとなんかうずうずしてきたのでbpy.context.~とかポチポチやってると本体に組み込みたい欲求が生まれてきてしまいました。当初の目的から脱線してますね、はい。
そんなこんなで些細なBlenderプラグインを作りました。
選択したオブジェクトをZ:0を底にして配置し直すツールです。何をやってるかはコードを見てください。オブジェクトモードでSpecialから『SetGroundObject』で実行してね。それとUTF-8で保存しておくとコメントに日本語も使えるぞ!

関係無いですがWordPressの記事編集が微妙に使いやすくなっててグッドですね。

# Blender object alignment tool
# Set Ground Object is Blender(2.69)plug-in that is released under the MIT lisence
#

bl_info = {
“name”: “Set Ground Object”,
“author”: “Phiyory”,
“version”: (1, 0),
“blender”: (2, 69, 0),
“location”: “View3D > Specials > Set Ground Object”,
“description”: “Align the object at the bottom”,
“warning”: “”,
“wiki_url”: “”
“”,
“category”: “Object”}

import bpy

class Set_Ground_Object(bpy.types.Operator):
# bl_idname must be included in bl_info.
bl_idname = ‘object.set_ground_object’
bl_label = ‘SetGroundObject’
bl_options = {“REGISTER”, “UNDO”}

def execute(self, context):
for i in context.selected_objects:
i.location[2] = 0
z = i.dimensions[2]
i.location[2] += z/2
return {‘FINISHED’}

def menu_func(self, context):
self.layout.operator(Set_Ground_Object.bl_idname, text=Set_Ground_Object.bl_label)

# register the class
def register():
bpy.utils.register_module(__name__)
bpy.types.VIEW3D_MT_object_specials.append(menu_func)

def unregister():
bpy.utils.unregister_module(__name__)
bpy.types.VIEW3D_MT_object_specials.remove(menu_func)

if __name__ == “__main__”:
register()


ダウンロードはこちら
カテゴリー: 3DCG, 未分類, 雑記 パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です