Dov'è l'Alpha Convert Node in Python?
Non voglio che il mio alpha venga premoltiplicato durante il salvataggio delle immagini. In Blender puoi usare il compositore Alpha Convert Node per convertire da Premultiplied a Straight. Non riesco a trovare questo nodo nell'API Python .
Risposte
CompositorNodePremulKey
Puoi trovare un elenco completo dei tipi di nodi del compositore disponibili qui:https://docs.blender.org/api/current/bpy.types.CompositorNode.html.
alpha_convert = tree.nodes.new(type='CompositorNodePremulKey')
alpha_convert.mapping = 'PREMUL_TO_STRAIGHT'
Tuttavia, a volte è piuttosto difficile da capire poiché i nomi non corrispondono realmente. Suggerirei di creare manualmente il nodo nel compositore e stamparlo typesulla console per avere un'idea:
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()
Oppure usa l' Node.bl_rna
attributo che restituisce la struttura effettiva (da cui copiare il nome):
>>> node_active.bl_rna
<bpy_struct, Struct("CompositorNodePremulKey")>
Correlati: controllo del compositore da python