One Bit - Unity Asset Store - Nephasto

One Bit le dará a tus juegos un aspecto retro y original usando un dither con blue noise para lograr una imagen de render estable.

🕹️ Demo  🛒 Store

Editor

Una vez instalado, selecciona la cámara de tu escena y añade el componente ‘One Bit’.

 

Una vez añadido el efecto, verás algo como esto:

 

Con ‘Strength’ (1) puedes seleccionar la fuerza del efecto. En ‘Mode’ (2) puedes seleccionar a que zonas de la pantalla afecta el efecto. El primero es ‘Screen’ y si al seleccionarlo toda la pantalla usara el efecto. Si usas ‘Layer’, solo a los objetos que estén en las layers que selecciones en ‘Layer mask’ (14) les afectará el efecto.

 

El último modo es ‘Distance’ y con él podrás modular la intensidad del efecto según la distancia de la cámara. Usa ‘Curve’ (15) para ajustar la intensidad.

 

Comienza en el ‘Near’ de la cámara y acaba en el ‘Far’. Seguramente tengas que ajustar estos valores (sobre todo el ‘Far') en la cámara de tu juego.

Si ves algunos fallos de precisión en los modos ‘Layer’ o ‘Distance’ puede que sean por problemas de precisión con el buffer de profundidad. Puedes solucionarlo ajustando el valor ‘Far’ de tu cámara o ‘Depth threshold’ en ‘Advanced settings’ (11).

Con ‘Blend ops’ (3) puedes cambiar como se mezcla el efecto con la imagen original. Por defecto es ‘Solid’ que sobreescribe totalmente la imagen original por la del efecto. Aquí tienes algunos ejemplos:

Ajustando los valores ‘Seed’, ‘Strength’ y ‘Edges’ puedes cambiar el patrón que se usará para el efecto de dithering. El primero cambia la semilla usada para generar el blue noise. El segundo modifica la intensidad y el tercero la fuerza de los bordes.

También puedes cambiar el gradiente de color (7) e invertir el color (8). El gradiente por defecto es ‘Solid’ (sin gradiente). Otras opciones son ‘Horizontal’, ‘Vertical’ y ‘Circular’.

Si quieres ajustar aún más el color final, activa ‘Color’ (9) para acceder a más ajustes. Si quieres suavizar los bordes que genera el efecto, activa ‘Antialiasing’ (10) (esta opción añade una pasada al efecto por lo que el rendedimiento puede ser peor).

 

Código

Todo el código esta dentro del namespaceNephasto.OneBitAsset’. Lo primero que debes hacer es importar el namespace:

1
 using Nephasto.OneBitAsset;

 

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

1
 OneBit oneBit = mycamera.gameObject.AddComponent<OneBit>();

 

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

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

hello@nephasto.com