Houdini city asset

Sayden - 10/02/2009 09:18
Buenas. Aquí va mi primer trabajo de Houdini es una ciudad controlada por Stamps. Anchura, profundidad, altura por piso, número de pisos, número de chimeneas y creo que casi todo está reunido en 2 nodos null. Todavía estoy con él, quiero introducir más edificios y que las calles tengan cierta lógica (como el tutorial de cmiVFX, a ver si lo veo un día de estos, es que dura 4 horas).

Por favor, que los 4 gatos de Houdini del foro sean buenos conmigo, solo llevo 2 semanas con el programa y aún no se texturizar ni renderizar en condiciones.

Subo también el hip por si alguien quiere enredar con el (y los nodos en castellano.

-- IMÁGENES ADJUNTAS --

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #94316



🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #94317



🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #94318

SHAZAM - 10/02/2009 10:27
Interesante, supongo que, se puede variar aún más, estas escenas son labor de hormiga. Estoy un poco alejado de este programa (y de los demás también), cuando me desahogue un poco del trabajo me pondré de nuevo, a ver si seguimos con las actividades.
¿Has pasado por aquí? : [url]https://www.foro3d.com/f34/1-actividad-de-Houdini-particulas-avanzadas-49930.html[/url]
[url]https://www.foro3d.com/f34/2-actividad-de-Houdini-pintar-una-bola-49999.html[/url]
[url]https://www.foro3d.com/f34/2-actividad-de-Houdini-pintar-una-bola-resolución-50060.html[/url]
[url]https://www.foro3d.com/f34/3-actividad-de-Houdini-huellas-procedurales-50134.html[/url]
[url]https://www.foro3d.com/f34/4-actividad-de-Houdini-pelotas-rompemuros-50362.html[/url]
[url]https://www.foro3d.com/f34/5-actividad-de-Houdini-limite-de-impactos-53087.html[/url].

Son un buen punto de partida. Ánimo.
Sayden - 10/02/2009 11:13
Pues sí, son labor de hormiga, pero a mí me encanta. Las actividades las he visto, pero como la primera es de partículas y yo voy por la animación en Tmoh, pues no me he puesto aún. Pero en cuanto termine el libro me pongo con todas y a proponer nuevas. Gracias Shazam.
Sayden - 08/05/2009 17:32
Edificio 2 de la ciudad, voy muy lento, pero es que, no me estoy parando a trabajar, no hago más que estudiar. Lo mismo, controlado por Stamps. Cuando termine me pondré a hacer el hda de cada edificio por si alguien quiere usarlos.

-- IMÁGENES ADJUNTAS --

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #102427

Netvudu - 11/05/2009 11:40
Deduzco que lo de instanciar no fue la solución a tus problemas.
Sayden - 11/05/2009 12:04

Deduzco que lo de instanciar no fue la solución a tus problemas.

Aun estoy trasteando y entendiendo con la ayuda lo que me dijiste en odforce del mantra delayed surface. Aunque me he despistado un poco ya que los nodos geometry que salen en tu escena deben ser de otra versión de Houdini ya que en la 10 no tienen la pestaña instance.

La idea es hacer entre 5 y 10 edificios distintos entre sí y llamarlos en una ciudad procedural que sea totalmente aleatoria. En el primer edificio se podía controlar casi todo por Stamps. En el segundo sólo he puesto los pisos a ver si conseguía cambiar su número a través del instancepoint() pero es lo que dices tú, stamp se controla en el nivel objeto.

Me parece que tendré que hacerlo a la vieja usanza, pero para conseguir que el movimiento de la cámara vaya por dónde quiera va a ser complicado. Gracias.
Netvudu - 11/05/2009 13:00
Efectivamente, la única forma de que lo hagas a través de instancias será que tus elementos del edificio sean objetos en lugar de elementos de sops, es más complicado porque tendrías que planificar muy bien previamente.

Una opción bastante buena a valorar sería usar sops para generar algo, así como 50 o 60 diferentes tipos de edificios, que con el copy/stamp lo harás en un periquete, guardarlos a disco y luego en instanciación solo cambiar el tamaño que eso es fácil de hacer. Esto seguramente te daría mucha variedad y te permitiría instanciar e incluso usar el delayed load.

Recuerda que el nodo file te permite escribir cosas como edificio `int(fit01(Rand($instancept()),1,45))`.bgeo para cargar objetos aleatoriamente, (en ese caso 45 edificios distintos).

Efectivamente, esa escena que te pasé la hice desde el trabajo dónde no tengo instalada la versión 10 aún, por tema de estabilidad hasta que acabemos el proyecto actual (en casa sí, que soy usuario de apprentice Hd).

Pero vamos, con las indicaciones que te escribí en los nodos deberías ser capaz de replicar eso sin demasiado problema, creo.
Sayden - 12/05/2009 10:56
Trabajas con Houdini en España? Cuanta envidia insana que te tengo. Vaya entiendo lo que me dices, pero ¿cómo debería hacerlo? Es que aún estoy un poco verde en Houdini.

Cojo un add SOP de un punto y lo conecto a la derecha de un copy SOP.

Cojo un edificio de Stamps y lo conecto a la izquierda del copy SOP.

Configuro los Stamps para que funcionen de la manera fit01(Rand($f), 5, 9) por ejemplo.

Conecto el copy SOP a un file SOP (o a un rop output driver), le activo el modo write, en el nombre de archivo le pongo algo del estilo edificio $f.bgeo y le atizo al play.

Así tendría los edificios que me diera la gana, ahora para cargarlos, usando un único nodo file podría cargar 100 de la manera edificio `int(fit01(Rand(instancepoint()), 1, 100))`.bgeo de tal manera que cada instancepoint me cargaría un edificio distinto ¿no?
Netvudu - 12/05/2009 12:58
Así sin probarlo ni nada, me suena bastante bien lo que comentas. Tal vez, para evitarte posteriores problemas y atajarlos cuanto antes mírate la expresión padzero para ponerle un número fijo de cifras a las secuencias y así luego te sea todo más fácil de automatizar.

Como siempre, y para evitar problemas, usa la gran ventaja de Houdini para prototipar escenas y hazlo todo con esferas o similares antes de meterte con el gran mogollón.
Sayden - 12/05/2009 17:00
Instancepoint() sólo funciona en nivel objeto por lo que debo estar planteandomelo mal o le estoy pidiendo demasiado a Houdini.

Al final lo he conseguido de la siguiente manera. En la versión 9.5 y 10 el nodo geometry y el instance están separados por lo que no se puede aplicar un material a un nodo instance (al menos así a primera vista). De esta manera era imposible usar mantra delayed load. Así que he creado un nodo geometría vacío y le he aplicado el material del delayed load.

Luego he creado un nodo instance que apuntaba al nodo geometry inicial y le he metido un grid dentro para hacer las pruebas.

Finalmente el material mantra delayed surface cargaba unos bgeo de la manera:
[code]pruebas/caja `int(fit01(Rand(instancepoint()), 1, 99))`.bgeo[/code]

Y ha funcionado.

Problema: en principio ninguno, aunque me da la impresión de que he hecho una potencial chapuza.
Netvudu - 12/05/2009 20:46
Bueno, ante todo enhorabuena, porque si funciona nunca será del todo chapucero. En cuanto a lo demás, estoy teniendo una sensación de Déjà vu. ¿estás seguro de que te has leído los comentarios incluidos en los dos nodos de la escena que te pasé? Lo digo porque un par de las cosas que comentas aquí, estaban escritas en aquellos nodos (ya sabes, con botón central sobre el nodo para leer los comentarios). A saber:
Efectivamente la instanciación solo funciona a nivel objeto (ya lo dice en la ayuda del programa). Y más importante, si no te gusta el nodo instance, lo único que tienes que hacer es crear un nodo de geometría corriente y moliente, y usar edit rendering parameters para añadirle point instance como parámetro a la interfaz (ten en cuenta que hay muchísimos que están ocultos de esta forma porque no son de uso habitual). Es lo que yo hago siempre.

Lo del material lo has hecho perfecto. Ánimo que ya es tuyo.
Sayden - 13/05/2009 08:50

Bueno, ante todo enhorabuena, porque si funciona nunca será del todo chapucero. Thanks.

¿Estás seguro de que te has leído los comentarios incluidos en los dos nodos de la escena que te pasé? Lo digo porque un par de las cosas que comentas aquí, estaban escritas en aquellos nodos (ya sabes, con botón central sobre el nodo para leer los comentarios). A saber:
Efectivamente la instanciación solo funciona a nivel objeto (ya lo dice en la ayuda del programa). Y más importante, si no te gusta el nodo instance, lo único que tienes que hacer es crear un nodo de geometría corriente y moliente, y usar edit rendering parameters para añadirle point instance como parámetro a la interfaz (ten en cuenta que hay muchísimos que están ocultos de esta forma porque no son de uso habitual). Es lo que yo hago siempre.

Sí, me los he leído como 10 o 20 veces, y mirado las conexiones de los nodos y sus configuraciones internas. De hecho, he aprendido más cosas que no sabía viendo un par de nodos por ahí. El problema es que me he pasado de listo y no entendía lo del edit rendering parameters y pensaba que era algo inherente a la versión 8 o algo así y que yo no podría usarlo. Anoche ya lo entendí cuando volví a leer tu respuesta.

De hecho, aquí está la prueba del delito.

Lo que no me cuadra mucho es el número de primitivas teóricas que ha manejado mantra a la hora de renderizar ya que a una media de 5144 primitivas por edificio (10 pisos) y el grid donde se han copiado los edificios es de 225x225 tendríamos 50625 edificios y 260.415.000 primitivas.

En fin, no sé si eso será posible, ahora me pondré a hacer pruebas con Mb mientras terminan de despedirme de mi curro por la historia crisis (parece coña, pero llevo 2 semanas ordenando archivos porque no tengo otra cosa que hacer).

-- IMÁGENES ADJUNTAS --

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #103194



🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #103195

Hulkong - 13/05/2009 09:09
Como mola tío.
Sayden - 13/05/2009 09:29

Como mola tío.

Has visto hulky? Es Houdini. Bueno, voy a pegarle una paliza a tu bruto.
Hulkong - 13/05/2009 09:31
Deja de houderme. Y trabaja. Saludos, a la panfila.
Sayden - 14/05/2009 11:29

Ahora me pondré a hacer pruebas con Mb mientras terminan de despedirme de mi curro por la historia crisis (parece coña, pero llevo 2 semanas ordenando archivos porque no tengo otra cosa que hacer).

Dicho y hecho. Otro más engrosando las filas del paro.

En fin, que lástima de vida, ahí dejo un video prueba:
[vimeo]4624552[/vimeo]
WILLERMIN - 19/05/2009 11:59
Me gusta mucho esta herramienta para crear ciudades aleatorias, con 3ds Max es más complicado y, aunque algunos utilizan el Greeble, no te creas que me gustan mucho los resultados, yo por el momento a pegarme con el 3ds Max para conseguir algo así.suerte.
SHAZAM - 19/05/2009 12:18

Dicho y hecho. Otro más engrosando las filas del paro. En fin, que lástima de vida, ahí dejo un video prueba:
[vimeo]4624552[/vimeo]

Ánimo tío, ya mejoraran las cosas. Aprovecha para seguir empollando el programa.