« Python関連資料 | トップページ | Python, Blender 回転カメラ »

2017.12.27

blender, python, keyframe

今日のblender, python実験。keyframeが大切。カメラのパス沿い移動は前回のままで、今回は円柱メッシュをキーフレームで座標指定して(ガクガクした動きだけど)動かしました。blender画面の中でマウスポインタじっと置いてblender命令を読むという作業にだいぶ慣れてきました。

20171227b

使ったスクリプトは「続きを読む」以下の部分から。

import bpy

# enban  takusan naraberu

def add_nijushikon():
    for x in range(8):
        for y in range(8):
            for z in range(6):
                bpy.ops.mesh.primitive_cylinder_add(
                location=(x, y, z-1),
                rotation=(0, 0, 0),
                radius=0.3,
                depth=0.2
                )

add_nijushikon()  #rotation (0.2*(x+y+z), 0, 0)

# Starting FRAME, Ending FRAME
bpy.context.scene.frame_start = 1
bpy.context.scene.frame_end = 30
bpy.context.scene.frame_current = 10

# MOVE Cylinder mesh with KEY FRAME
bpy.ops.mesh.primitive_cylinder_add(rotation=(-0.8, 0.0, 0.0))
bpy.context.scene.frame_current = 1 # set frame to 1
cdnow  = bpy.context.object          # get new object just created
cdnow.location = (1,1,1) # set the location
bpy.ops.anim.keyframe_insert_menu(type='Location') # KEY FRAME

bpy.context.scene.frame_current = 10 # set frame to 10
cdnow.location = (1,5,2)
bpy.ops.anim.keyframe_insert_menu(type='Location') # KEY FRAME

bpy.context.scene.frame_current = 20 # set frame to 20
cdnow.location = (1,4,3)
bpy.ops.anim.keyframe_insert_menu(type='Location') # KEY FRAME

bpy.context.scene.frame_current = 30 # set frame to 30
cdnow.location = (2,4,2)
bpy.ops.anim.keyframe_insert_menu(type='Location') # KEY FRAME

# new lamps *2
bpy.ops.object.lamp_add(type='POINT', radius=1.0,  location=(5,0,6), rotation=(0, 0, 0))
bpy.context.object.data.energy = 2
bpy.ops.object.lamp_add(type='POINT', radius=1.0,  location=(-1,0,4), rotation=(0, 0, 0))
bpy.context.object.data.energy = 2

# path for camera movement
bpy.ops.curve.primitive_nurbs_path_add(
location=(3, 1.0, 2.0), rotation=(0, -(3.14/8), (3.14/4)))

# new camera
bpy.ops.object.add(
type='CAMERA', location=(1.5, -4, 1.7), rotation=(1.4, 0, 0.0))

#camera = bpy.data.objects['Camera']

camera = bpy.data.objects['Camera']
path = bpy.data.objects['NurbsPath']
#lamp = bpy.data.objects['Lamp']
camera.select = True
#lamp.select = True
path.select = True

bpy.context.scene.objects.active = path #parent
bpy.ops.object.parent_set(type='FOLLOW') #follow path

|

« Python関連資料 | トップページ | Python, Blender 回転カメラ »

コメント

コメントを書く



(ウェブ上には掲載しません)




« Python関連資料 | トップページ | Python, Blender 回転カメラ »