Jump to content
UnitySpain

Aceptamos donaciones vía Paypal.

UnitySpain.com es un servicio gratuito, pero mantener la Comunidad conlleva una serie de gastos.

Fondo Anual Unityspain: Donados 0€ de 150,00€

  • Servidor: Dominio.com y Hosting Web
  • Mantenimiento de los Foros
  • Contenido y Servicios Extras
  • Mantenimiento para Redes Sociales
Sign in to follow this  
Mimic

Unity y mapas de relieve ?

Recommended Posts

Hola que tal soy nuevo y tengo una duda, mi plan era modelar todo en blender y solo programar en unity pero en tal trascurso me encontré con este problema, uso los mapas de relieve (No los normales) para darle realismo a mis objetos, en blender funciona pero cuando los voy a pasar al unity los resultados no son los esperados, en primer lugar pensé que los traducia como los "heightmap" pero parece que no es lo mismo, en fin como le hago para poner mapas de relieve o solo acepta normal map ?

Share this post


Link to post
Share on other sites

Lo tienes explicado en el manual, el Heightmap de Unity3D usa la misma técnica que el Parallax Mapping. Es una alternativa al Relief Mapping.

https://docs.unity3d.com/Manual/StandardShaderMaterialParameterHeightMap.html

En este artículo de 2010 explican un poco la diferencia: https://www.gamedev.net/forums/topic/575827-what-is-the-difference-between-pom-and-relief-mapping/

Si bien, no obtienes un resultado exactamente idéntico al Relief, te ahorras tener que hacer muchos más cálculos y generar latencias, así que ganas en rendimiento.

 

Si lo necesitas de todas formas, puedes encontrar el shader de relief mapping suelto en Unity Wiki, o algún sitio de esos...

Share this post


Link to post
Share on other sites
10 hours ago, pioj said:

Lo tienes explicado en el manual, el Heightmap de Unity3D usa la misma técnica que el Parallax Mapping. Es una alternativa al Relief Mapping.

https://docs.unity3d.com/Manual/StandardShaderMaterialParameterHeightMap.html

En este artículo de 2010 explican un poco la diferencia: https://www.gamedev.net/forums/topic/575827-what-is-the-difference-between-pom-and-relief-mapping/

Si bien, no obtienes un resultado exactamente idéntico al Relief, te ahorras tener que hacer muchos más cálculos y generar latencias, así que ganas en rendimiento.

 

Si lo necesitas de todas formas, puedes encontrar el shader de relief mapping suelto en Unity Wiki, o algún sitio de esos...

Gracias capo, ahora bien, como se crean los parallax map ? el relieve mapa lo hacia mediante PS que tiene una opción para hacerlo, pero no me sale nada de los parallax y he buscado tutoriales pero no encuentro ninguno, pero parece ser que solo es una desaturación con ajustes de blanco y negro, es así o es un proceso mas complejo ?

Share this post


Link to post
Share on other sites
45 minutes ago, Mimic said:

Gracias capo, ahora bien, como se crean los parallax map ? el relieve mapa lo hacia mediante PS que tiene una opción para hacerlo, pero no me sale nada de los parallax y he buscado tutoriales pero no encuentro ninguno, pero parece ser que solo es una desaturación con ajustes de blanco y negro, es así o es un proceso mas complejo ?

El Relief es analogo al displacement? Con los nombres tengo un toque de quilombo.

El normal lo haces con los colores flayeros esos de violeta verde celeste (ya que tenés incidencia de todos lados para la luz, de izq, de der, etc entonces combinando te da eso), el bumb lo hacés con escala de grises (tengo entendido que salió en una epoca pasada y termino siendo más pedorro que el normal), y el displacement (supongo heightMap) debería ser similar al bump, ya que desplazas los vertices hacia arriba?

Igual esos plugins de PS o Gimp son horribles para hacer el normal, CrazyBump recuerdo que era muy bueno frente a esos plugins, ya sea dicho de paso, CrazyBump también te permitia generar occlusion y displacement (si es que es el analogo al Relief que buscás).

 

PD: La verdad es que no se si este software sigue vivo

Share this post


Link to post
Share on other sites
On ‎11‎/‎19‎/‎2018 at 3:25 PM, lightbug said:

El Relief es analogo al displacement? Con los nombres tengo un toque de quilombo.

El normal lo haces con los colores flayeros esos de violeta verde celeste (ya que tenés incidencia de todos lados para la luz, de izq, de der, etc entonces combinando te da eso), el bumb lo hacés con escala de grises (tengo entendido que salió en una epoca pasada y termino siendo más pedorro que el normal), y el displacement (supongo heightMap) debería ser similar al bump, ya que desplazas los vertices hacia arriba?

Igual esos plugins de PS o Gimp son horribles para hacer el normal, CrazyBump recuerdo que era muy bueno frente a esos plugins, ya sea dicho de paso, CrazyBump también te permitia generar occlusion y displacement (si es que es el analogo al Relief que buscás).

 

PD: La verdad es que no se si este software sigue vivo

Pues parece que no son lo mismo aunque con los dos el relieve que tengo yo y con el displacement del programa el cambio fue nulo, no note nada, no se porque aunque creo que es solo porque es un camino de arena y plano sin cambios de sombra abruptos para que se note algo, igual dejo los resultados que tuve con los normal maps.

Con el Crazybump: Note que lo que hace es dar una especie de ondulación dándole un poco de relieve ideal para una playa aunque no es lo que busco para este camino de arena.

9LmkhzZ.png

Con el césped no me gusto tanto

1UlXO7T.png

 

Normal map con el PS: Mejora mucho la textura haciéndola mas real y solida con ninguna ondulación o relieve a diferencia del Crazybump

QWomU7W.png

Mucho mejor los resultados con el césped 

CYOccVY.png

 

y por ultimo dejo lo que obtengo únicamente con los mapas de relieve en blender...

Yxv9R3p.png

igual creo que si se iría un poco al carajo el rendimiento si llego hacer eso en unity, igual no me importa mucho lo que es el camino ya que con el césped arboles y demás decoraciones que le hare no se va a notar mucho, lo que si me importa es que tengo una montaña rocosa en blender y quisiera que se viera 100% igual en unity pero bueno voy a leerme todo el manual de los gráficos de unity para ver como funciona esto acá y obtener un mejor resultado.

Edited by Mimic

Share this post


Link to post
Share on other sites

 @Mimic algunas cosas:

- Depende de gustos / lo que querés hacer con ese "material verde", para mi las imágenes que vos decís que se ven "bien, real y sólido" no se ven tan así, incluso las veo algo feas, osea tienen algo que las sombras captan vs las otras, pero eso no las hace automáticamente mejores, no quiero decir "mejores" sino que encajan en la tarea que tienen que hacer dentro del todo, al final siguen siendo cesped vs camino simulado sobre un plano. Entiendo que querés hacerlos reales pero no vas a poder encontrar mucha realidad con un normal map solo, ni hablar si tuvieras pensado un normal map que haga de grass (mesh billboard que simula el pasto ).

Un ejemplo:

-> con grass (Haciendo ZOOM) y fondo verde sin Normal:

Grass_demo.JPG

Grass_sinNormal.JPG

-> con grass (Haciendo ZOOM) y SIN fondo verde (tiene el normal del "camino"):

sinFondo.JPG

Como ves el fondo verde te ayuda más que nada para las transiciones y para "ahorrar grass"

- Justamente el ondulado ese lo podés controlar vos. Compararlos así es bastante agarrado de los pelos, en PS, Gimp y CrazyBump tenés algunos/muchos parámetros para tocar (sobre todo en CrazyB), me ha pasado de tocar dos cositas y el resultado mejora/empeora bastante, pero igual me parece que el crazy tiene menor frecuencia de cambios que el otro, justamente para evitar los efectos abruptos del punto anterior. Probá que podés hacer cosas parecidas entre ambos o por lo menso antes podías exagerar todo tocando las opciones que te dá. [Igual no le metería mucho tiempo a esos plugins]

- El normal que tenés en la imagen de blender está muy bueno, pero usalo más de detalle que de normal "In your Face", de ese tipo de mapas tenés en todo Internet. Ese me suena a una de esas paredes que le falta el reboque fino, que están "salpicadas", puede ser?? (no exactamente) pero algo así ??:

92814921.jpg

 

quizás esto te va mejor que usando plugins externos, ese tipo de mapas de normales funcionan de caballos de batalla en casi todos los materiales, metelos en la parte de "Detail" para controlarlos por un set de UV's separados que el principal :5_smiley:

- En la realidad ese camino verde no existe, osea es hierba muy chiquita, entonces cubrí la parte de detalle + la de geometría. Dale un toque y no necesariamente puede ser de grass (como decía con laa pared salpicada), yo uso para dar detalle en general (ne noecesariamente grass,  pero para el ejemplo a continuación lo uso) una textura de concrete Normal de una pared para el grass y me ha queda mil veces mejor que partiendo de un grass sea por PS, GIMP o CrazyBump (aunque el fuerte del grass el justamente el grass no lo que está abajo). Y es muuuuy chiquito, ni se nota si lo mirás de arriba. El peor efecto de todos cae sobre el "Specular", cuando a esto lo combinas con los efectos de luces intensas es cada vez peor (por esto muchos juegos viejos responden mejor que juegos más modernos), por eso aveces el normal mal usado te vende (el mismo ejemplo anterior pero con Normal no tan exagerado, terrrain default de Unity).

Grass_sinNormal.JPG

Grass_seNota.JPG

LA primera, una imagen congruente con el resto de los colores, la segunda bastante pedorra, y tiene un normal con unos UV comprimidísimos! si los haga más grandes el efecto es cada vez peor, obviamente si son enormes ni notás el bump.

 

Todo esto hablando del terrain default de Unity (que no te deja controlar nada respecto al Normal ni el nivel), por supuesto podés meterle un normal y dejarlo justo como necesitas pero tenés que usar ya un material custom para las opciones. Y si tuvieras tu malla haciendo de terreno estás bien (controlas todo vos), lo unico que vas a necesitar un 3d Painter para meter/borrar el grass.

 

1 hour ago, Mimic said:

igual no me importa mucho lo que es el camino ya que con el césped arboles y demás decoraciones que le hare no se va a notar mucho

Ahhh recien leo esto :3_grin:, bueno si le vas a meter grass ni te calentes por el normal del material verde.

 

1 hour ago, Mimic said:

lo que si me importa es que tengo una montaña rocosa en blender y quisiera que se viera 100% igual en unity

Y fijate que materiales/técnicas tenés en blender y simulalas en Unity. Acordate que el Normal es "infaltable" hoy en día pero siempre del lado del detalle, sea el material que sea (salvo que tengas unos ladrillos o un piso de cerámica, que se yo, queda mucho más de protagonista), digo esto porque mencionás la montaña y quizás (no lo se) pienses "es una montaña, necesita niveles enormes de Normal", no tan así la respuesta más adecuada sería "Es una montaña, la geometría es esencial" si te bajás esos pack de rocas examinalos, el normal es casi nada y "general" (como el ejemplo del normal de la pared que mencioné anteriormente), tienen buenas texturas de dufuse y una geometría real (no necesariamente compleja). Y por supuesto la montaña hecha aparte, no con terrain, si te interesa este Topic tenés algunos artículos de los levelDesigner de Skyrim que te dan la data para hacer este tipo de cosas.

 

Saludos

Share this post


Link to post
Share on other sites

La forma correcta de crear cualquier textura basada en proyección de un modelo hi-poly es desde un programa de 3D (3dsmax, Maya, o cualquier "baker"). De esta forma generas esa textura. Si usas el método "vago", es decir, crear la textura con patrones predefinidos, no vas a conseguir el resultado que quieres.

Share this post


Link to post
Share on other sites
On ‎11‎/‎22‎/‎2018 at 7:00 PM, pioj said:

La forma correcta de crear cualquier textura basada en proyección de un modelo hi-poly es desde un programa de 3D (3dsmax, Maya, o cualquier "baker"). De esta forma generas esa textura. Si usas el método "vago", es decir, crear la textura con patrones predefinidos, no vas a conseguir el resultado que quieres.

Eso mismo estaba haciendo, aunque me ausente un poco porque tuve que terminar unos proyectos de la uni y eso por eso no respondí, intente lo del Baker y añadí los mapas de curvatura y mapa de oclusión, aunque en el blender no los uso directamente ya que los mesclo junto con las texturas en PS. bueno todo eso para generar esta bonita textura.

CA6r7zy.png

 

Lo mismo pienso hacer con el terreno y otras cosas mas, ahora bien como paso esto a unity ? recomiéndame algún shader que no tengo idea (quisiera ser así de bueno en unity como lo soy en blender :c) siento que en unity el normal map pierde mucha fuerza y esta ves el normal map lo cree con blender y hay una variante de la app xNormal, pero las dos apenas se notan, que mas podría añadir para tener un resultado asi en unity ? se que el unity acepta el occlusion map pero el curvature map se puede añadir también ?

Edited by Mimic

Share this post


Link to post
Share on other sites
Sign in to follow this  

×