Resultados 1 al 2 de 2

Selección aleatoria de puntos

  1. #1
    Fecha de ingreso
    Dec 2007
    Mensajes
    678

    Houdini Selección aleatoria de puntos

    En Houdini, digamos que quiero hacer una copia de un suelo con un número determinado de objetos encima. O sea, muchos suelos iguales, pero con un número aleatorio de objetos encima.

    De la box original selecciono los puntos interiores de su cara superior (la que apunta a +z). Vale.

    Luego agrego un delete SOP para borrar el resto de puntos y uso la selección como template para un copy SOP.

    Ahora, ¿cómo hago que el número de objetos (para el ejemplo, esferas) que se copien encima del box sea aleatorio por instancia? Con el copy stamp, claro, pero ¿dónde colocarlo y con que expresión? Gracias.

  2. #2
    Fecha de ingreso
    Dec 2025
    Mensajes
    0
    Para lograr un número aleatorio de esferas por cada suelo en Houdini, el método más directo y actual es usar un For-Each Loop con Copy to Points y controlarlo con atributos aleatorios. El Copy Stamp está obsoleto.

    Primero, prepara tu geometría de suelos. Si tienes múltiples suelos, asegúrate de que cada uno sea una pieza separada o un grupo. Crea un Attribute Wrangle en modo Detail (sobre toda la geometría) para definir el número máximo de esferas por suelo. Por ejemplo, escribe @max_spheres = 5;.

    Luego, agrega un For-Each Loop en modo Piece (iterar sobre cada suelo). Dentro del loop, el primer nodo debe ser un Attribute Wrangle en modo Detail. Aquí, genera un número aleatorio entero para ese suelo específico. Usa la variable @iteration como semilla. La expresión sería algo como @num_spheres = int(rand(@iteration + 456) * @max_spheres) + 1;. Esto da un número entre 1 y el máximo.

    Después, en el mismo loop, añade un Scatter SOP. En el parámetro Force Count, activa la expresión y escribe detail(-1, "num_spheres", 0). Esto leerá el atributo que creaste y esparcirá exactamente ese número de puntos en la superficie de ese suelo en particular. Conecta la entrada del Scatter a la geometría del suelo que está siendo procesada en la iteración.

    A continuación, dentro del loop, agrega un nodo Sphere (o tu objeto a copiar) y finalmente un Copy to Points SOP. Conecta la esfera a la primera entrada y los puntos del Scatter a la segunda. Esto copiará la esfera en cada punto generado aleatoriamente para ese suelo.

    El loop se repetirá por cada suelo, generando un num_spheres aleatorio diferente en cada iteración y esparciendo esa cantidad de puntos. Al salir del loop, tendrás todos los suelos con un número aleatorio de esferas en cada uno.

Temas similares

  1. Selección solo visibles y seleccion ocultos
    Por JMR en el foro Modelado
    Respuestas: 3
    : 27-08-2023, 11:22
  2. Selección aleatoria de múltiples objetos
    Por RoxasLucas en el foro Materiales y Texturizado
    Respuestas: 6
    : 07-04-2017, 20:35
  3. Wings 3D Selección de dos puntos a la vez Wings 3d
    Por siulluis en el foro Modelado
    Respuestas: 1
    : 24-05-2014, 05:08
  4. Selección aleatoria de texturas max
    Por Art3D en el foro Programas de Diseño 3D y CAD
    Respuestas: 12
    : 25-01-2007, 12:21
  5. 3ds Max Selección aleatoria en 3ds Max
    Por Jose Gavilán en el foro Programas de Diseño 3D y CAD
    Respuestas: 10
    : 29-04-2006, 21:05