lunes, 23 de diciembre de 2013

[Blender Script] - Generador ID Color Mask 2.69 Update

Actualizo la versión de este simple script para generar máscaras a la versión 2.69.
Gracias Lell por reportar el error.




"""
Seleccionar un objeto que tenga un nodo cycles y correr.
"""
import bpy
import random

ACTOBJ=bpy.context.active_object
ACTMAT=ACTOBJ.material_slots[bpy.context.object.active_material_index].material
NODE=ACTMAT.node_tree.nodes.new(type='ShaderNodeValToRGB')    

COLORS=30


CHUNK=1/COLORS
I=0
for ELEMENT in range(COLORS):
    NODE.color_ramp.interpolation="CONSTANT"
    ELEMENTO=NODE.color_ramp.elements.new(I)    
    ELEMENTO.color=(random.uniform(0,1),random.uniform(0,1),random.uniform(0,1),1)
    I+=CHUNK

---------------------------------------



Si seleccionan un objeto que tenga en el slot de materiales activos un material de cycles, corriendo el script se generará automáticamente un nodo de ramp con muchos colores aleatoriamente.
Solo conecten este material a un emission a la salida y a un random object a la entrada.





Para hacer este proceso no destructivo yo uso el Oscurart Tools, y saco un pass.


Si dos colores quedan overlapeados pueden generan otro nodo para reemplazar.

2 comentarios:

  1. Hi there, how can i use these color id passes with blender compositor. I use a different renderer which is intergraded with BLender. I want to use a object and material id pass and use the colors to make masks. Ive tried something with key and using a color but i need to fine tuning settings then to get the correct color. Is there a better method?

    ResponderEliminar
    Respuestas
    1. Hi!
      This method is not precise, it has a margin of error.
      There is no perfect way to make these adjustments ... also a rgb mask.
      This helps, but it is not the perfect solution.

      Eliminar