Ajuste del orden de representación del objeto de capa de capa específica de Unity

Descripción del requisito

Los objetos en un cierto nivel siempre se representan delante de otro nivel.

La primera idea es definitivamente usar el sombreador del material. Si los objetos en estos dos niveles usan materiales diferentes, puede ajustar la cola de renderizado del material.

Además, otra forma de mantener el material sin cambios es aumentar las características de renderizado ajustando RenderPipelineAsset y ajustándolo según el nivel.

El nivel aquí se refiere a la capa del objeto.

archivo

Especificar plantilla de escritura de capa

Usando Urp, abra UniversalRenderPipelineAsset_Renderer, Agregar característica

archivo

Desactive la representación predeterminada para el nivel especificado y use la función

archivo

Supongamos que necesitamos que PlayerBack esté detrás de Player, renderice primero la capa PlayerBack,

La cola es consistente con la cola de renderizado de material de la capa anunciada.
Máscara de capa selecciona la capa de destino a renderizar.
No escriba la profundidad, escriba la plantilla.
archivo

La capa de destino realiza pruebas de plantilla después de escribir la capa.

La capa de destino realiza una prueba de plantilla después de escribir la capa y solo se representará en la capa de destino (porque solo la capa de escritura puede pasar la prueba de plantilla)

La prueba de profundidad aquí siempre pasa, y la profundidad se escribe al mismo tiempo, el propósito es pasar la prueba de profundidad para la capa ordinaria (si aparece negro, es porque es necesario renderizar la capa ordinaria nuevamente)
archivo

archivo

capa normal

La capa ordinaria se representa normalmente. Debido a que la profundidad se ha escrito antes, se puede representar en la capa especificada y debido a que solo la capa especificada se escribe en la plantilla, no interferirá con otros niveles de representación (el principio de resaltar el especificado). La capa también es la prueba de plantilla de aplicación)

archivo

Efecto

Jugador rojo, PlayerBack blanco, PlayerBack siempre está detrás del Player

archivo

Supongo que te gusta

Origin blog.csdn.net/euphorias/article/details/124517505
Recomendado
Clasificación