Où est le nœud de conversion Alpha en python?
Je ne veux pas que mon alpha soit prémultiplié lors de l'enregistrement d'images. Dans Blender, vous pouvez utiliser le compositeur Alpha Convert Node pour convertir de Premultiplied en Straight. Je n'arrive pas à trouver ce nœud dans l' API Python .
Réponses
CompositorNodePremulKey
Vous pouvez trouver une liste complète des types de nœuds de compositeur disponibles ici:https://docs.blender.org/api/current/bpy.types.CompositorNode.html.
alpha_convert = tree.nodes.new(type='CompositorNodePremulKey')
alpha_convert.mapping = 'PREMUL_TO_STRAIGHT'
Cependant, il est parfois assez difficile à comprendre car les noms ne correspondent pas vraiment. Je suggérerais de créer le nœud dans le compositeur à la main et de l'imprimer typesur la console pour avoir une idée:
import bpy
class NodeOperator(bpy.types.Operator):
"""Tooltip"""
bl_idname = "node.simple_operator"
bl_label = "Simple Node Operator"
@classmethod
def poll(cls, context):
space = context.space_data
return space.type == 'NODE_EDITOR'
def execute(self, context):
space = context.space_data
node_tree = space.node_tree
node_active = context.active_node
print (node_active.type)
return {'FINISHED'}
def register():
bpy.utils.register_class(NodeOperator)
def unregister():
bpy.utils.unregister_class(NodeOperator)
if __name__ == "__main__":
register()
Ou utilisez l' Node.bl_rna
attribut qui renvoie la structure réelle (à partir de laquelle copier le nom):
>>> node_active.bl_rna
<bpy_struct, Struct("CompositorNodePremulKey")>
Connexes: Contrôle du compositeur par python