Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

blenderでpythonやる その2:基本のcubeで遊ぶ

shuzo-kino.hateblo.jp
の続きで、色を変えたり並べたり

実際のところ

色を変える

デフォ画面ではCubeは"[1]"に入ってるので、それにマテリアルをセットします。
最後にrenderで描画。

mat = bpy.data.materials.new('C1')
mat.diffuse_color =  (51 / 256, 145 / 256, 148 / 256, 1)

D.objects[1].data.materials.append(mat)
        
bpy.ops.render.render()

f:id:shuzo_kino:20220414222228p:plain

自動レンダリングらしく

こちらは勉強不十分なので、写経……あとで差し替えるかも.
色がついてるのは先ほど反映したマテリアルがそのまま残っているから。

import bpy

for i in range(5):
    for j in range(5):
        
        #選択オブジェクトをコピー
        bpy.ops.object.duplicate()
        
        #オブジェクトの座標を指定
        bpy.context.object.location.x = i * 2
        bpy.context.object.location.y = j * 2
        
        #オブジェクトのスケールを指定
        bpy.context.object.scale.x = (5-i) / 5
        bpy.context.object.scale.y = (5-i) / 5
        bpy.context.object.scale.z = (5-i) / 5
        
        #オブジェクトの角度をオイラー角[rad]で指定
        bpy.context.object.rotation_euler.x = i / 5
        bpy.context.object.rotation_euler.y = j / 5
        
bpy.ops.render.render()

f:id:shuzo_kino:20220414223425p:plain

画角がよろしくなかったようです。
次はカメラの移動とかやりましょうかね。