-
1 Archivos adjunto(s)
2ª actividad de Houdini pintar una bola
Un poco más de partículas y geometría. Esta vez se trata de pintar una esfera con los colores de las partículas que reboten en ellas. El objetivo es entender las limitaciones de un sistema procedural y la forma de conseguir que algunos atributos sean persistentes.
Manana pondré una tercera actividad más sencilla. Esta vez quería poner algo que hiciera pensar un poco a Miguel. .
.
Iré dando pistas y contestando preguntas.
-- IMÁGENES ADJUNTAS --
https://foro3d.com/attachment.php?attachmentid=53405
-
2ª actividad de Houdini pintar una bola
Qué bueno. Aquí entran un Rand color y transferir el particle color al vertex color del objeto cuando colisiona a modo de slide.
Bueno, a ver cómo lo hago, gracias.
-
2ª actividad de Houdini pintar una bola
Vaya, interesante, creo que sé cómo hacer que el color no varíe más de una vez, pero bueno, en la cabeza es muy fácil, ahora a traducirlo al Houdini.
-
2ª actividad de Houdini pintar una bola
Vaya, que interesante esto. A ver si paso más, allá de hacer una bola y una colisión.
-
1 Archivos adjunto(s)
2ª actividad de Houdini pintar una bola
Primera prueba. Lo fácil ya está hecho, ahora a conseguir dos cosas:
- Que el color no se borre cuando la partícula se va.
- Editado : que si el vértice ya ha cogido el color de una partícula, lo mantenga y no coja el de otra. .
-- IMÁGENES ADJUNTAS --
https://foro3d.com/attachment.php?attachmentid=53406
-
1 Archivos adjunto(s)
2ª actividad de Houdini pintar una bola
Aquí está. Va, que lo conseguís.
-- IMÁGENES ADJUNTAS --
https://foro3d.com/attachment.php?attachmentid=53407
-
2ª actividad de Houdini pintar una bola
Cita:
- Que si el vértice ya tiene un color distinto al que tenía antes de que tocara cualquier partícula, éste no cambie.
Eso debería ser así? ¿no edbería cambiar cuando le toque una partícula sea del color que sea el vértice anteriormente?
-
2ª actividad de Houdini pintar una bola
En el ejemplo de Slime, una vez la esfera coge un color, aunque impacten nuevas partículas, no cambia. Creo que lo he cogido por el camino que no es, sigo investigando.
Miguel, en tu ejemplo la esfera coge colores de partículas nuevas, aunque ya tenga color de antiguas. Pero también mola.
Edito: el vértice debe mantener el color de la primera partícula que chocó con él.
-
2ª actividad de Houdini pintar una bola
¿Hay alguna forma de editar las expresiones en X,Y,Z a la vez?
-
2ª actividad de Houdini pintar una bola
Tiene que ir sumando el color al vértice de la esfera. Llevo ya un buen rato investigando sobre los nodos que hay que utilizar.
Upf.
Exprimiendo cerebelus.
-
1 Archivos adjunto(s)
2ª actividad de Houdini pintar una bola
¿Hay alguna forma de duplicar un nodo (con o sin su contenido) para no volver a crear desde 0? Editado:
¿Y ahora que narices he hecho? Algo he pulsado para que no se me vean los nodos y me salga esta lista. Intento averiguar cómo ponerlo como estaba.
https://www.foro3d.com/images/upload...2007/07/84.jpg
-- IMÁGENES ADJUNTAS --
https://foro3d.com/attachment.php?attachmentid=53416
-
2ª actividad de Houdini pintar una bola
-
2ª actividad de Houdini pintar una bola
No término de entender bien cómo crear y transferir atributos, voy a echarle un ojo a los tutoriales este mediodía.
-
2ª actividad de Houdini pintar una bola
Pues yo no consigo ni colorear las partículas con el random. Intento cosas como Rand(255)*$pt. Edito (ya lo tengo).
-
2ª actividad de Houdini pintar una bola
Cita:
Pues yo no consigo ni colorear las partículas con el random. Intento cosas como Rand(255)*$pt.
En Houdini por defecto el color no está de 0 a 255, sino de 0 a 1.
La forma es Rand($pt) y ya. Creara valores aleatorios por punto de 0 a 1.
Una forma muy buena para añadir color aleatorio a partículas es usando el color pop en modo Ramp. En la rampa añade colores y en el lookup escribe Rand($id). Si el final de la rampa es 1 y el principio 0, es muy fácil controlar la cantidad de un color u otro que va a aparecer.
Stewie, attribute transfer SOP.
Si, he de modificar mi escena. A ver si sale.
-
2ª actividad de Houdini pintar una bola
Calcula eso que has puesto. Rand nos da siempre un valor entre 0 y 1, hasta ahí bien. Luego lo multiplicas por el número de la partícula, entonces tendrás un número mayor de 1, y el color máximo del color es 1 (bueno, no, pero para verlo sí). Pon Rand($pt), y listo.
Edito: ahora me ganaste Miguel.
El attribute transfer ya lo tengo puesto, de hecho, es lo único que tengo puesto.
Quiero hacer una cosa, que no sé si para este ejercicio es necesaria o no. En el nodo colisión, le digo que me exporte el parámetro hittime. Luego quiero acceder a el desde el nodo point que colorea la esfera, pero no hay tu tía. Lo cargo también con el attribute transfer y toda la pesca, pero ponga lo que ponga me manda a paseo, lo mismo con cualquier parámetro que no sea $c(RGB).
-
2ª actividad de Houdini pintar una bola
Sí, justo lo acababa de conseguir. Es que yo estaba intentando poner en el color RGB y me salen diferencias entre negro y blanco.
Al ponerlo en la rampa lo puedo controlar mejor.
¿Es así?
-
2ª actividad de Houdini pintar una bola
Tienes que cambiar lo que va dentro de Rand para cada canal, si pones la misma expresión en cada uno, al ser el $pt igual para cada canal, el resultado será el mismo. Yo puse Rand($pt+1) y Rand($pt+2) en g y b.
-
2ª actividad de Houdini pintar una bola
Pero el attribute transfer no hace falta, ¿no? Es que sirve para pasar atributos desde la geo hacia las partículas y tu quieres hacer lo contrario.
Me puedo estar equivocando.
-
2ª actividad de Houdini pintar una bola
Vale para pasar cosas de un sitio a otro, en este caso lo usamos para pasar la información de las partículas, a los puntos de la esfera. Y hasta aquí he llegado.
-
2ª actividad de Houdini pintar una bola
Pues en la ayuda pone esto:
Transfers point or vertex attributes from reference geometry onto particles. Así no hay quien se aclare.
-
2ª actividad de Houdini pintar una bola
Ese es el nodo pop transfer attributes, tú quieres crear un nodo SOP transfer attributes (vamos, que lo tienes que hacer fuera del pop network, enganchárselo a la esfera).
-
2ª actividad de Houdini pintar una bola
Cita:
Pues en la ayuda pone esto: Transfers point or vertex attributes from reference geometry onto particles. Así no hay quien se aclare.
Ese es el attribute transfer pop. Pero y el SOP?
Aarrgh.
-
2ª actividad de Houdini pintar una bola
Cita:
Calcula eso que has puesto. Rand nos da siempre un valor entre 0 y 1, hasta ahí bien. Luego lo multiplicas por el número de la partícula, entonces tendrás un número mayor de 1, y el color máximo del color es 1 (bueno, no, pero para verlo sí). Pon Rand($pt), y listo.
Edito: ahora me ganaste Miguel.
El attribute transfer ya lo tengo puesto, de hecho, es lo único que tengo puesto.
Quiero hacer una cosa, que no sé si para este ejercicio es necesaria o no. En el nodo colisión, le digo que me exporte el parámetro hittime. Luego quiero acceder a el desde el nodo point que colorea la esfera, pero no hay tu tía. Lo cargo también con el attribute transfer y toda la pesca, pero ponga lo que ponga me manda a paseo, lo mismo con cualquier parámetro que no sea $c(RGB).
Stewie, por que no usas un Split que añanda una partícula quieta en el punto de colisión y ya? Así en vez de hittime puedes usar el $age de ésta. Luego en sops la borras y ya.
-
2ª actividad de Houdini pintar una bola
Ni queriendo nos sale mejor Miguel. Te cuento lo que tengo: pincho con el central en el pop network, y me dice que tiene (entre otros), el atributo hittime. Me voy al attribute transfer, y le digo que lo transfiera (aparece en la lista), porque luego quiero utilizarlo en el nodo point (si pincho con el botón central, aparece hittime como atributo, así que, estar esta). Pero a la hora de escribir la expresión, si pongo $hitime me sale en rojo. Lo mismo me pasa con todo lo que he probado, menos con la velocidad (vxyz), y con el color (crgb), ¿cómo puedo usar atributos normales -no vectoriales- En nodos vectoriales? (supongo que, éste sea el fallo).
-
2ª actividad de Houdini pintar una bola
Me estáis empezando a dar miedo.
-
2ª actividad de Houdini pintar una bola
Cita:
Vaya, ni queriendo nos sale mejor Miguel. Te cuento lo que tengo: pincho con el central en el pop network, y me dice que tiene (entre otros), el atributo hittime. Me voy al attribute transfer, y le digo que lo transfiera (aparece en la lista), porque luego quiero utilizarlo en el nodo point (si pincho con el botón central, aparece hittime como atributo, así que, estar esta). Pero a la hora de escribir la expresión, si pongo $hitime me sale en rojo. Lo mismo me pasa con todo lo que he probado, menos con la velocidad (vxyz), y con el color (crgb), ¿cómo puedo usar atributos normales -no vectoriales- En nodos vectoriales? (supongo que, éste sea el fallo).
Puedes usar la expresión point(). De esta foma: point(./mi_nodo, $pt, hittmime, 0). Búscalo también en la ayuda. También sirve para vectores, el último número indica el componente (0, 1 o 2).
Prueba también a crear un attributecreate y de nombe pon hittime, tipo float, y el la primera casilla del value, escribe point(). Me parece que luego te dejara usarla. No lo he probado.
-
2ª actividad de Houdini pintar una bola
Hey, cierto, no sé dónde vi eso escrito alguna vez (lo de point(./tralarí). Una cosa, escribo $age en la expresión de color, no sale en rojo (la acepta), pero en objeto sale negro negrísimo.
Pregunta: ¿por qué me deja utilizar $age, si no he pasado ese atributo, ni aparece en la lista de atributos?
Voy a comer, y por la noche pruebo todo esto que me has dicho, que a la tarde estoy liado.
-
2ª actividad de Houdini pintar una bola
Qué rápido vais. Yo sigo a mi ritmo, así que, una pregunta básica. ¿Qué diferencia hay entre crear la geometría bajo el (*.obj) directamente o crear un SOP network a la misma altura que el pop network? También he visto que se pueden crear dentro del popnet.
En caso de dinámicas de rígidos, los objetos bajo un sopnet se podrían separar, ¿verdad?
-
2ª actividad de Houdini pintar una bola
Stewie, $age apararece como buena, aunque no exista porque es una de las variables por defecto principales, no una que creas tú. Es igual que si escribes $nx o $cr aunque el nodo no tenga como creados los atributos de color o normal.
Cita:
Qué rápido vais.
Yo sigo a mi ritmo, así que, una pregunta básica.
¿Qué diferencia hay entre crear la geometría bajo el (*.obj) directamente o crear un SOP network a la misma altura que el pop network? También he visto que se pueden crear dentro del popnet.
En caso de dinámicas de rígidos, los objetos bajo un sopnet se podrían separar, ¿verdad?
Pues que luego tendrás que crear un geometría en obj y mezclar el resultado de tu SOP network de pops. Porque lo que se renderiza es lo que está en obj.
No entiendo la segunda pregunta. Los objetos se cean en sops, se pasan a simular en dops y se vuelven a llevar a sops para realizar los cambios necesarios para renderizar o lo que sea. Puedes mezclar los objetos por separado en distintas Networks de geometría.
-
2ª actividad de Houdini pintar una bola
Ya estáis avanzando y dándome pistas a rajatabla. Ahora es cuando lo retomo, que, por las mañanicas estoy con la peque en el parque.
Bealobo, gracias por lo de la t.
-
2ª actividad de Houdini pintar una bola
Si pongo Rand($pt) en los 3 lados de color me deja todo a escala de grises aleatorias, el resultado del Rand es el mismo para cada recuadro por eso lo deja así.
Tengo que buscar otra forma (por tiempo no, porque el tiempo es el mismo).
-
2ª actividad de Houdini pintar una bola
Leander, pon Rand($pt) en uno, Rand($pt+1) en otro, y Rand($pt+3) en el otro, para cambiar el valor del sed.
-
2ª actividad de Houdini pintar una bola
Ole. Me arreglaron el bug que les reporté. Me hicieron caso. Nueva versión 661.
Cita:
Tuesday, july 17, 2007. Houdini 9.0.661: fixed a bug with help tips that popped up in yesterday build, 660. All the text appeared as black blocks.
-
2ª actividad de Houdini pintar una bola
Cita:
Leander, pon Rand($pt) en uno, Rand($pt+1) en otro, y Rand($pt+3) en el otro, para cambiar el valor del sed.
Ya lo he visto, hasta puedo poner 1.1 y 1.2, pero no lo tengo claro, esos números. ¿Qué son? ¿un índice al color de ptú ¿o es otro índice del randomí.
A ver, a ver, a ver.
Otro bug help->start here, poned PT en find y voila.
Error console.
A reportar, a reportar.
-
2ª actividad de Houdini pintar una bola
El valor de dentro de sed dentro de Rand(sed), sirve para poder obtener el mismo valor, y no varíe cada vez que calcula el Rand. Basta con que el valor de sed sea distinto, para que el valor de Rand sea totalmente diferente, no tiene ninguna relación (da igual poner seed altos, bajos, parecidos). Si pones el mismo sed, el resultado será el mismo, (independientemente de en que ordenador abras la escena, por ejemplo).
-
2ª actividad de Houdini pintar una bola
Pues muchas gracias, la verdad, ahora voy por lo más difícil. Si que vas muy avanzado, se nota que llevabas tiempo con esto. (desde la versión 5?
-
2ª actividad de Houdini pintar una bola
Cita:
Pues que luego tendrás que crear un geometría en obj y mezclar el resultado de tu SOP network de pops. Porque lo que se renderiza es lo que está en obj.
No entiendo la segunda pregunta. Los objetos se cean en sops, se pasan a simular en dops y se vuelven a llevar a sops para realizar los cambios necesarios para renderizar o lo que sea. Puedes mezclar los objetos por separado en distintas Networks de geometría.
M
No me he enterado bien.
La cosa es: en el ejercicio anterior creamos un grid y una bola a la altura del popnetwork, bajo el geo.
Pero haciendo este ejercicio me he dado cuenta de que hay más posibilidades:
1. Geo y dentro crear un popnetworque y un SOP network (éste último con un grid y una bola dentro)
2. Geo y dentro crear un popnetworque y dentro un sopnetworque (éste último con un grid y una bola dentro)
3. Geo y dentro crear un sopnetworque y dentro un popnetworque.
Probablemente sea que me estoy liando, porque hoy estoy un poco obtusa.
Edito: lo había puesto mal (obj por geo) y también he descubierto que la opción 1 no nos valdría porque el sopnetworque no tiene salida para conectarlo a otro nodo.
-
1 Archivos adjunto(s)
2ª actividad de Houdini pintar una bola
Ya casi esta, ahora tengo que suavizar las uniones de los colores para que no queden como pegotes, y entender cómo utilizar el parámetro $age, que me está tocando un poco las bowlings porque pasa de mí.
Edito: Bea, según lo entiendo yo es más que nada tema de cómo quieras organizarlo. En /obj no te deja crear SOP network, sólo geometry (y ahí dentro sí que puedes crear SOP Networks).
-- IMÁGENES ADJUNTAS --
https://foro3d.com/attachment.php?attachmentid=53424
-
2ª actividad de Houdini pintar una bola
Cita:
1. Obj y dentro crear un popnetworque y un SOP network (éste último con un grid y una bola dentro).
¿cómo consigues crear un SOP network dentro de (*.obj)?
No te deja, en tab no aparece.
Soltadme alguna pista, que no sé cómo seguir para transferir el color de los vértices colisionados a la esfera.
-
2ª actividad de Houdini pintar una bola
Me había confundido y había escrito obj por geo, lo siento. He editado el mensaje.
-
2ª actividad de Houdini pintar una bola
La opción 1 (crear un geo y un pop network en /obj), sí que te valdría: una vez dentrod el pop network, al source le señalas dónde está el SOP que quieres utilizar, en lugar de elegir first input. Si quieres un pop network con muchos objetos emisores y de colisión (más de 4, que son los imputs que tendría el pop network creado en /obj), hay que hacerlo así (creo yo).
Edito: había puesto crear un SOP y un pop network, quería poner a crear un geo y un pop network.
-
2ª actividad de Houdini pintar una bola
Que no se puede crear un SOP network en /obj.
-
2ª actividad de Houdini pintar una bola
Cita:
La opción 1 (crear un SOP y un pop network en /obj), sí que te valdría: una vez dentrod el pop network, al source le señalas dónde está el SOP que quieres utilizar, en lugar de elegir first input. Si quieres un pop network con muchos objetos emisores y de colisión (más de 4, que son los imputs que tendría el pop network creado en /obj), hay que hacerlo así (creo yo).
Pero para el attribute transfer.
-
2ª actividad de Houdini pintar una bola
Cita:
Que no se puede crear un SOP network en /obj.
Abre un fichero nuevo, crea un geo y métete, crea un sopnetwork.
A eso me refiero.
Me había confundido (lo he puesto más arriba) y había escrito obj por geo.
-
2ª actividad de Houdini pintar una bola
Si, lo sé, eso iba para Stewie. A mí me pasa lo siguiente: Modo 1. En obj creo un geo, una vez dentro creo un grid y un popnetwork.
Dentro de popnetworque creo un source done le pongo el first context geometry.
Si que emite partículas.
Modo 2.
En obj creo un geo y un popnetwork.
Dentro del geo creo un grid.
Dentro del popnetworque creo un source y le pongo use parameters values para indicarle el geo.
No emite partículas. ¿pero que rayos?
-
2ª actividad de Houdini pintar una bola
Cita:
Que no se puede crear un SOP network en /obj.
Geometry = SOP network.
-
2ª actividad de Houdini pintar una bola
Cita:
Geometry = SOP network.
Vaya.
-
2ª actividad de Houdini pintar una bola
Cita:
Modo 2. En obj creo un geo y un popnetwork. Dentro del geo creo un grid. Dentro del popnetworque creo un source y le pongo use parameters values para indicarle el geo.
No emite partículas. ¿pero que rayosí.
No selecciones el geo, selecciona el nodo grid a ver si así.
Edito: duda, ya tengo el hittime funcionando con un attribute creator y la función point(). Ahora tengo otro problema, intento utilizar el parámetro %age, pero éste no varía, y las partículas no tienen puesta vida infinita. No varía nada de nada, porque pongo Rand($age), y el color es gris constante. ¿por qué?
-
1 Archivos adjunto(s)
2ª actividad de Houdini pintar una bola
Yo creo, Stewie, que tenemos un acercamiento distinto al problema? Ya nos pasaremos los ficheros cuando terminemos. Bueno, no sé, yo sigo, de momento lo que llevo es lo que adjunto.
Me faltan bastantes cosas, como controlar la mancha a la zona de impacto y borrar las partículas pegadas. Miguel, habías dicho que se hacía desde sops?
-- IMÁGENES ADJUNTAS --
https://foro3d.com/attachment.php?attachmentid=53426