Blenderスクリプトでチョコレートブロック(その3)

旧Blender


Blenderスクリプトでチョコレートブロック(その2)」の続きです。

CYCLESエンジンにしてから、グラスに新規マテリアルを設定します。

mat=bpy.data.materials.new(name='Material.001')
bpy.context.object.data.materials.append(mat)

ノードを有効にして、新規追加します。ガラスっぽくするので、BsdfGlassにします。

mat.use_nodes=True
mat.node_tree.nodes.new(type='ShaderNodeBsdfGlass')

ノードを入力出力つなげたら、オブジェクトにマテリアルを設定します。

inp = mat.node_tree.nodes['Material Output'].inputs['Surface']
outp = mat.node_tree.nodes['Glass BSDF'].outputs['BSDF']
mat.node_tree.links.new(inp,outp)
bpy.data.objects['Curve'].active_material = mat

床には色は付けません。

bpy.context.scene.cursor_location = (0,0,0)
bpy.ops.mesh.primitive_plane_add()
bpy.ops.transform.resize(value=(99, 99, 1))

ランプが明るくなるように設定。

lamp=bpy.data.lamps['Lamp']
bpy.data.scenes['Scene'].cycles.samples=10
bpy.data.lamps['Lamp'].shadow_soft_size=1

strengthは、ノードから指定します。

lamp.use_nodes=True
lamp.node_tree.nodes['Emission'].inputs['Strength'].default_value = 10000

全スクリプトです。

bpy.context.scene.render.engine='CYCLES'

mat=bpy.data.materials.new(name='Material.001')
bpy.context.object.data.materials.append(mat)
mat.use_nodes=True
mat.node_tree.nodes.new(type='ShaderNodeBsdfGlass')

inp = mat.node_tree.nodes['Material Output'].inputs['Surface']
outp = mat.node_tree.nodes['Glass BSDF'].outputs['BSDF']
mat.node_tree.links.new(inp,outp)
bpy.data.objects['Curve'].active_material = mat

bpy.context.scene.cursor_location = (0,0,0)
bpy.ops.mesh.primitive_plane_add()
bpy.ops.transform.resize(value=(99, 99, 1))

lamp=bpy.data.lamps['Lamp']
bpy.data.scenes['Scene'].cycles.samples=10
bpy.data.lamps['Lamp'].shadow_soft_size=1

lamp.use_nodes=True
lamp.node_tree.nodes['Emission'].inputs['Strength'].default_value = 10000

コメント

  1. […] ← Blenderスクリプトでチョコレートブロック(その3) […]

タイトルとURLをコピーしました