Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Logrando un estilo diferente

Iniciado por Antonio Casas Rojas, Mayo 03, 2018, 04:24:24 PM

Tema anterior - Siguiente tema
Muy buenas compañeros de UnitySpain. Tengo una duda. ¿Existe alguna manera de dotar a nuestro juego de un ambiente graficamente escaso al estilo de juegos antiguos que estaban muy poligonizados y las texturas era "reguleras"? Me comentaron que podía simplemente bajarle el tamaño máximo de las texturas que use, pero al hacerlo no me llega a convencer del todo. Adjunto una imagen para que podais ver un poco el efecto que me gustaría conseguir. Gracias y un saludo.
 
 
 


les aplicas posterizacion desde algun editor grafico como gimp, y en unity les bajas la resolucion y les pones filter mode = point (no filter) para q se vean cuadriculadas, luego es cosa de usar bajos polis

Eso es estilo , ante que la bullshit de los gráficos modernos. Me encanta esa paleta de colores post-apocaliptica.
 
Lo que dice braltor está muy bien, con el posterize de gimp ponele podés reducir el bitDepth de cualquier imagen y lograr esos gráficos, pero te recomiendo que si vas a usar esto siempre uses un shader o ahora (que se puede) una render pipeline basada en estos shaders.
 
También podés ver el tema de los mipmaps que basicamente pixelan una imagen (es como si el pixel de 1x1 ahora fuera de 2x2 o de 4x4 y así, mientras mayor(creo) sea el mipmap "peor" se ve), me parece que si la textura lo soporta podés hacerlo desde el mismo shader. O usar el mismo sampleo de la textura (SampleUV...) en el shader para lograr el pixelado.
 
Fuera de esto un poco, existe un shader/renderPipeline que se llama "Retro" hecha por Keijiro(un enfermo de los gráficos en Unity) , está centrado en las imperfecciones de las posiciones, bueno mejor ver la imagen para que te des cuenta:
 

 
si querés irte a este tipo de retro está muy bien
 
 
 
 

Mayo 03, 2018, 09:51:34 PM #3 Ultima modificación: Mayo 03, 2018, 09:52:28 PM por Igor
reducir el numero de colores (algo tipo posterizar) y lo de "filter point" como dicen... y si, la paleta de colores esta bien escojida en esas imagenes que has puesto...
 
Keijiro es un maquina, jeje, que shader mas chulo! retro glitch 3d
 
yo justo estoy hciendo uno que curva el mundo..  algo tipo esto es lo que quiero conseguir (imagen sacada de google)
 

Cita de: lightbug date=1525371088existe un shader/renderPipeline que se llama "Retro" hecha por Keijiro(un enfermo de los gráficos en Unity) , está centrado en las imperfecciones de las posiciones, bueno mejor ver la imagen para que te des cuenta:
   
   
      


keijiro es un maestro de unity xD... PERO, no recuerdo q los primeros juegos fueran taaaan inestables en los poligonos, por ejemplo mira Alone in the Dark uno de los primeros:
 


   
eature=oembed" width="459">

 
 

Cita de: Braltor date=1525392684keijiro es un maestro de unity xD... PERO, no recuerdo q los primeros juegos fueran taaaan inestables en los poligonos, por ejemplo mira Alone in the Dark uno de los primeros:
   


Si claro, yo tampoco los recuerdo así, es más una exageración eso que hizo que otra cosa, como si la precisión fallara siempre y muy feo. Es más no recuerdo ningún juego que fallara demasiado, quizás un Spyro the dragon en PS1 ?
 


   
eature=oembed" width="459">

 
o el primer crash, no recuerdo bien

ok es mas como la precision en las viejas consolas

La cuestión es qué tipo de resultado quieres obtener:
 

  •    La falta de precisión en el z-buffer es lo que hacía que la Playstation/Saturn mostraran ese efecto de "tembleque". Pero eso ya es de la época de consolas de 32bit...


  •    Los primeros videojuegos 3D po***res con mapeado de texturas (en plan Quake/DukeNukem3D,etc), además de no tener mipmapping ni filtro bilinear, basan todo su arte en una premisa indispensable = el arte es hecho a mano, estilizado, y bastante saturado en color y/o apoyado de una paleta única de un limitado nº de colores.


  •    Las texturas rara vez superaban una resolución de 256x256 y 8bit de color.   1bit para alpha en los casos de transparencias...


  •    El modelo de iluminación es Unlit o Gouraud, y no se debe tocar para nada el GAMMA.


  •    Como no usaban AO ni nada por el estilo, el mapeo de las UV de los modelos acostumbra a solapar polígonos y zonas unas encima de otras.


  •    El jagging es clave. Ni se te ocurra aplicar efectos como Anti-aliasing o Ambient Occlusion, etc.. Es decir, quítate todo lo que sean shaders de nueva generación.


  •    Se usan sprites-billboards a punta pala para la mayoría de assets que no son propiamente la geometría del escenario.


  •    La geometría de los mapas ha de ser SIMPLE: Estamos hablando de cubos y de trozos de escenario que no superen ni los 2000 polígonos.


  •    Para Atlas/tilemaps de texturas, las resoluciones más comunes de cada tile eran de 64x64px ó de 128x128px.


Con esa premisa, elige un punto de partida, una fecha o referencia del juego que más se acerca a lo que buscas. Saca su fecha de desarrollo y lanzamiento y busca información sobre blogs,etc , de la tecnología que anunciaron "por allá entonces", para saber qué es lo que necesitarás.

Mayo 04, 2018, 08:46:47 PM #8 Ultima modificación: Mayo 04, 2018, 09:03:42 PM por lightbug
Acá hice un shader para "pixelar" Unlit (para pbr es tan simple como cambiar el nodo principal por uno de PBR), funciona en Lightweight (2018.1):
 

 
(salió bastante feo el gif)
 

 
y acá el graph:
 

bonito... dale la posterizacion y quedara listo... supongo q lo puedes hacer dividiendo los componentes de colores de forma entera y volviendo a multiplicar

Cita de: Braltor date=1525468633bonito... dale la posterizacion y quedara listo...
   




   
      supongo q lo puedes hacer dividiendo los componentes de colores de forma entera y volviendo a multiplicar
   

[/quote]
 
de entrada me imaginé un round de colores, quizas no sea un round y sea un step, pero por ej si te toca el color 57 (0-255 por canal) te devuelva el 56 , si toca el 61 también, si toca el 63 devuelva el 64, por inventar algunos números, la cosa es que estaba mal, eso es exactamente lo que hace el posterize, por si solo solo reduce el bitDepth y usarlo con la imagen (albedo) o los canales por separado no producía el efecto (reduce la cantidad de colores pero la resolución vista sigue igual), lo tenía que usar con los UV's ya que es una cuestión de posición del sampleo más que de andar tocando los colores directamente (además de que los UVs se representan por colores suavizados entonces viene barbaro reducir su bitDepth)
 
EJ:

Cita de: Braltor date=1525358304les aplicas posterizacion desde algun editor grafico como gimp, y en unity les bajas la resolucion y les pones filter mode = point (no filter) para q se vean cuadriculadas, luego es cosa de usar bajos polis
   


Gracias Braltor. Lo he hecho tal cual y me gusta cómo queda. Saludos.
 
Cita de: lightbug date=1525371088Eso es estilo , ante que la bullshit de los gráficos modernos. Me encanta esa paleta de colores post-apocaliptica.
   
   
      Lo que dice braltor está muy bien, con el posterize de gimp ponele podés reducir el bitDepth de cualquier imagen y lograr esos gráficos, pero te recomiendo que si vas a usar esto siempre uses un shader o ahora (que se puede) una render pipeline basada en estos shaders.
   
   
      También podés ver el tema de los mipmaps que basicamente pixelan una imagen (es como si el pixel de 1x1 ahora fuera de 2x2 o de 4x4 y así, mientras mayor(creo) sea el mipmap "peor" se ve), me parece que si la textura lo soporta podés hacerlo desde el mismo shader. O usar el mismo sampleo de la textura (SampleUV...) en el shader para lograr el pixelado.
   
   
      Fuera de esto un poco, existe un shader/renderPipeline que se llama "Retro" hecha por Keijiro(un enfermo de los gráficos en Unity) , está centrado en las imperfecciones de las posiciones, bueno mejor ver la imagen para que te des cuenta:
   
   
      
   
      si querés irte a este tipo de retro está muy bien
   
   
       
   
   
       
   


Veo últimamente pocos juegos que utilicen ese estilo y es una pena como emociona que recuerden a los gráficos de aquella época. Lo del render pipeline no se bien a qué te refieres. Gracias y saludos.

Cita de: pioj date=1525436896La cuestión es qué tipo de resultado quieres obtener:
   
   


  •          La falta de precisión en el z-buffer es lo que hacía que la Playstation/Saturn mostraran ese efecto de "tembleque". Pero eso ya es de la época de consolas de 32bit...
          

  •       

  •          Los primeros videojuegos 3D po***res con mapeado de texturas (en plan Quake/DukeNukem3D,etc), además de no tener mipmapping ni filtro bilinear, basan todo su arte en una premisa indispensable = el arte es hecho a mano, estilizado, y bastante saturado en color y/o apoyado de una paleta única de un limitado nº de colores.
          

  •       

  •          Las texturas rara vez superaban una resolución de 256x256 y 8bit de color.   1bit para alpha en los casos de transparencias...
          

  •       

  •          El modelo de iluminación es Unlit o Gouraud, y no se debe tocar para nada el GAMMA.
          

  •       

  •          Como no usaban AO ni nada por el estilo, el mapeo de las UV de los modelos acostumbra a solapar polígonos y zonas unas encima de otras.
          

  •       

  •          El jagging es clave. Ni se te ocurra aplicar efectos como Anti-aliasing o Ambient Occlusion, etc.. Es decir, quítate todo lo que sean shaders de nueva generación.
          

  •       

  •          Se usan sprites-billboards a punta pala para la mayoría de assets que no son propiamente la geometría del escenario.
          

  •       

  •          La geometría de los mapas ha de ser SIMPLE: Estamos hablando de cubos y de trozos de escenario que no superen ni los 2000 polígonos.
          

  •       

  •          Para Atlas/tilemaps de texturas, las resoluciones más comunes de cada tile eran de 64x64px ó de 128x128px.
          

  •    

      Con esa premisa, elige un punto de partida, una fecha o referencia del juego que más se acerca a lo que buscas. Saca su fecha de desarrollo y lanzamiento y busca información sobre blogs,etc , de la tecnología que anunciaron "por allá entonces", para saber qué es lo que necesitarás.
   


¡Muchas gracias! Es información muy interesante y con la que puede empezar a trabajar. Saludos :)

Etiquetas: