Jump to content
UnitySpain
Portief

Shader Outline

Recommended Posts

Buenas de nuevo a todos. 

Continuo trabajando en un shooter multijugador y me he visto un poco parado por el tema de Shaders. Tenía la intención de hacer un shader para que cuando pulsaras una habilidad pudieras ver a todos los enemigos al estilo de widomaker en el overwatch.  He buscado por la web y me he encontrado con esto. http://wiki.unity3d.com/index.php/Silhouette-Outlined_Diffuse. Esta bastante bien y quería entenderlo por lo que me mire unos cuantos tutoriales para hacerme al lenguaje y la forma de implementación. Me he encontrado con el problema de que mi personaje esta formado por diversas partes por lo que se ve extraño:

shader.jpg

ZTest Always

Ztest LEqual

Estas dos lineas en el código se que manejan la visualización del shader. Las he ido modificando para que se viera como yo quiero, que seria: Que se viera la silueta del modelo como uno (Quizá para eso haya que modificar algo más del código) y que a través de los objetos se viera solo la silueta. 

Editado:

He continuado haciendo pruebas y adjunto otra captura de otro problema de utilizar el ZTest para anteponer el objeto a otros. Realmente yo solo quiero que la silueta se vea si el personaje enemigo esta detras de una pared para poder detectarlo:

nuevaImagen.jpg

Me sería muy útil si alguna persona pudiera orientarme un poco. Gracias de antemano.

Edited by Portief

Share this post


Link to post
Share on other sites

Buenas, ya adjunte correctamente las imágenes y he vuelto a ampliar un poco la información para intentar aclarar mas el tema, espero ayuda :).

Share this post


Link to post
Share on other sites

Mira se que esto esta lejos de ser una respuesta apropiada, pero te puedo poner este video de este gran youtuber que maneja como los dioses el mundo de los shaders en Unity. Casualmente hace un efecto en el que el personaje se ve a traves de otros objetos, tipo rayos X. Lo vi un par de veces pero entendi todo a medias :6_smile: quizas le des mas utilidad y puedas sacar algo:

EDIT: agrego...

me cruce con este vid que es mas tirando a lo que necesitas, ya que lo que hace es renderizar el objeto entero version rellena (de un color) y version blur, y restarlas para que quede el outline del objeto entero, practicamente ignoras si esta formado por partes distintas, a no ser que las partes distintas esten separadas.

 

Edited by lightbug

Share this post


Link to post
Share on other sites

Jajaja Muchas gracias lightbug acabo de ver el edit ahora la verdad. Estaba esperando a contestarte cuando tuviera tiempo para implementar el shader del primer vídeo que me pasaste. La he implementado hoy y va de maravilla y me gusta bastante el acabado así que genial. Gracias por la ayuda.

Edited by Portief

Share this post


Link to post
Share on other sites
9 hours ago, Portief said:

Jajaja Muchas gracias lightbug acabo de ver el edit ahora la verdad. Estaba esperando a contestarte cuando tuviera tiempo para implementar el shader del primer vídeo que me pasaste. La he implementado hoy y va de maravilla y me gusta bastante el acabado así que genial. Gracias por la ayuda.

De nada, cuando lo termines nos subis el codigo :6_smile:

Share this post


Link to post
Share on other sites

×
×
  • Create New...