【b3d_mkn】ちょっとだけ面倒だったのでpencil+4のコンポジット設定だけ自動化した
import bpy
bcon = bpy.context.scene
bpy.context.scene.use_nodes = True
pencil_viewlayer_string = 'Pencil+ 4.Line Render.View Layer'
get_pvs = bpy.data.images.get(pencil_viewlayer_string)
get_cop = bcon.node_tree.nodes.get("Composite")
get_ren = bcon.node_tree.nodes.get("Render Layers")
if get_pvs:
node_pencil = bcon.node_tree.nodes.new("CompositorNodeImage")
image_pencil = bpy.data.images[pencil_viewlayer_string]
node_pencil.image = image_pencil
node_alphaover = bcon.node_tree.nodes.new("CompositorNodeAlphaOver")
if not get_cop:
get_cop = bcon.node_tree.nodes.new("CompositorNodeComposite")
if not get_ren:
get_ren = bcon.node_tree.nodes.new("CompositorNodeRLayers")
get_ren.location = 0,400
node_pencil.location = 0,0
node_alphaover.location = 200,0
get_cop.location = 400,0
node_pencil_out = node_pencil.outputs[0]
node_alphaover_a_in = node_alphaover.inputs[1]
node_alphaover_b_in = node_alphaover.inputs[2]
node_alphaover_out = node_alphaover.outputs[0]
get_ren_out = get_ren.outputs[0]
get_cop_in = get_cop.inputs[0]
bcon.node_tree.links.new(get_ren_out,node_alphaover_a_in)
bcon.node_tree.links.new(node_pencil_out,node_alphaover_b_in)
bcon.node_tree.links.new(node_alphaover_out,get_cop_in)
else:
print("nothing pencil")
とりあえず大した内容じゃないので上にスクリプトだけ置いておきます
やってる事は
①コンポジットオン
②ペンシルノードとアルファオーバー追加
③レンダーレイヤーとコンポジットが無い場合は生成
④ノード位置調整&繋ぐ
pencil+4がアドオンとして入ってなかったら動かないです
自前の環境では動く程度のものなので、上のコピペしてエラー吐いたら
システムコンソール開いて出てきた文章コピペしてコメントにでもぶち込んでおいてください
この記事が気に入ったらサポートをしてみませんか?