Oil Paint - Unity Asset Store - Nephasto

Dale a tus juegos un look original transformandolos fácilmente en obras de arte con 'Oil Paint'.

🕹️ Demo  🛒 Store

Oil Paint’ es la herramienta más avanzada y configurable para darle a tus juegos un look único, transformándolos de una forma sencilla en obras de arte.

Este efecto requiere de una GPU decente por lo que no está recomendado en móviles o VR de gama baja.

Editor

Una vez instalado, selecciona la cámara de tu escena y añade el componente ‘Oil Paint’. Al hacerlo verás algo como:

 

Con ‘Strength’ (1) puedes cambiar la intensidad general del efecto, si es 0 el efecto estará desactivado.

En ‘Mode’ (2) puedes seleccionar a que le afecta ‘Oil Paint’. El primer modo es ‘Screen’ y si lo usas el efecto se aplicará a toda la pantalla (exceptuando la interfaz). Si solo quieres que afecte a objetos que estén en ciertas layers no tienes más que seleccionar ‘Layers’ y elegir las layers:

 

Si quieres cambiar la intensidad del efecto según la profundidad de la escena, elige el modo ‘Distance’. El rango empieza en el plano ‘Near’ de la cámara y acaba en el plano ‘Far’.

 

Con el modo ‘Dual Layer’ puedes especificar dos intensidades distintas para dos layers distintas. Esto puede ser útil para darle a unos objetos más definición que a otros.

 

En el ejemplo anterior, a los objetos que estén en la layerTree’ tendrán una intensidad definida por ‘Custom’ y el resto de objetos por ‘Custom dual’.

Los siguiente que puedes seleccionar es el tipo de algoritmo (3) que usará el efecto. El primero es ‘Kawahara’. Este algoritmo tiende a respetar los trazos, aunque a grandes intensidades puede llegar a deformarlos. También es el más configurable de todos. Puedes cambiar su intensidad entre ‘Low’, ‘Medium’ y ‘High’. O también puedes seleccionar ‘Custom’ para ajustar a tu gusto la intensidad del efecto. Ten en cuenta que a mayor intensidad, mayor será el impacto en el rendimiento.

Symmetric Neighborhood Neighbor’ trabaja bien a cualquier intensidad pero puede tender a blurear la imagen. El último algoritmo, ‘Tomita Tsuji’, es una mejora del primero que añade más definición pero es el más costoso de todos.

A todos estos algoritmos puedes sumarle otro, ‘Water color’ (5) que define más los contornos y satura los colores. Puedes modificar su intensidad con ‘Amount’ (6).

En ‘Color’ (7) puedes activar una serie de modificadores del color, como son brillo (8), contraste (9), gamma (10), hue (11) y saturación (12).

Los modos ‘Layer’, ‘Dual Layer’ y ‘Distance’ usan una cámara de profundidad. Es recomendable que ajustes al máximo la distancia ‘Far’ de tu cámara para ganar precisión y evitar errores.

 

Si aun así ves algunos errores, puedes ajustar la precisión en ‘Depth threshold’ (14).

Finalmente, al presionar en ‘[doc]’ (15) se abrirá la web con la documentación y si pulsas en ‘Reset’ (16) todos los parámetros volverán a sus valores por defecto.

Código

Todo el código esta dentro del namespaceNephasto.OilPaintAsset’ y el componente principal es ‘OilPaint’. Lo primero que debes hacer es importar el namespace:

1
 using Nephasto.OilPaintAsset;

 

Si ‘myCamera’ es una cámara valida y quieres añadirle el efecto, puedes hacer algo como esto:

1
 OilPaint oilPaint = mycamera.gameObject.AddComponent<OilPaint>();

 

Para más información consulta los comentarios del código y de la demo adjunta.

Cualquier pregunta o sugerencia que tengas estaré encantado de responderla en

hello@nephasto.com