Pregunta

¿Cuál es la forma habitual de redondear los bordes en un cubo, un objeto rectangular como en los ejemplos?

ingrese la descripción de la imagen aquí  ingrese la descripción de la imagen aquí

El resultado ideal se vería prácticamente como estas imágenes.

(Naturalmente, podría usar literalmente una malla que haya redondeado cuidadosamente los bordes y las esquinas, pero se necesita muchos tris para lograrlo).


Nota, por supuesto para un enfoque no -shader ...

ingrese la descripción de la imagen aquí

Agregue dos pequeñas cajas planas y simplemente haz esa nueva mitad normal, es decir, 45 grados, entre los dos lados:

ingrese la descripción de la imagen aquí

que se dibujaría perfectamente alrededor ...

GDG a continuación ha proporcionado un artículo en el que alguien afirma que esto es de hecho la mejor manera, si no está utilizando un enfoque de sombreado.

Me pregunto realmente cómo hacer esto con un sombreador .


Nota: tutorial increíblemente detallado sobre el enfoque no sombreado

http://catlikecoding.com/unity/tutorials/rounded-cube/

¿Fue útil?

Solución

Uso de sombreado diferido Puede acceder a G-buffer para localizar y redondear los bordes como se hace en este papel .Aunque es una técnica de post-procesamiento, por lo que es capaz de emular la redondez en un límite de algunos píxeles.

ingrese la descripción de la imagen aquí

Normales simples promediados (1 ancho de píxel):

ingrese la descripción de la imagen aquí

Normales simples promediados (2 píxeles):

ingrese la descripción de la imagen aquí

Normales simples promediados (3 píxeles):

ingrese la descripción de la imagen aquí

Otros consejos

Ciertamente me diferenciaría a una respuesta orientada a sombreado, pero especialmente si los sombreadores necesarios no están disponibles en una plataforma determinada, lo lograría con algunos modelos de "nivel de detalle" aka lod.

  • Dé el juego para este objeto Meshes para una caja de 6 caras, una caja ligeramente curva y una caja de cerca de cerca.( http://www.wings3d.com/ es mi herramienta de modelado simple de ir a simple)
  • Dale al juego un script de comportamiento que revisa cada cuadro para la distancia de la cámara.

  • Activar la malla apropiada según la distancia y desactivar los demás, esto debe hacerse a una distancia donde el cambio no es detectable en la resolución más alta disponible para el jugador.

Esta técnica está bastante utilizada en los juegos 3D, una buena manera de representar enjambres lejanos de cosas que pueden volverse mucho más detalladas una vez que la cámara se acerca.

Pudimos realizar cubos biselados para nuestro juego WorldTobuild.La clave es realmente que puede seguir adelante y hacer el modelo biselado, luego simplemente mueva los vértices en grupos.

En resumen, todo lo que tenía que hacer para lograr el efecto fue:

  • Crear un cubo biselado (usé la licuadora).
  • Encuentra qué vértices se moverá en cada dirección por su posición desde el centro.
  • Calcule los bordes biselados, y configure el tamaño exacto.

Escribí un artículo al respecto aquí.Desplácese hasta la parte inferior del artículo si solo desea conocer el proceso:

https://www.linkedin.com/ PULSO / CODIFICACIÓN DE CODIBILIDAD-CUBIERTA-CUBIERTE-UNIDAD-RICHARD-CHRISTLEY

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top