在Unity2d中,根据Y轴决定渲染顺序(URP项目适用)

在2D游戏中,经常会出现需要坐标更靠下的物体覆盖住坐标更靠上的物体,但是决定物体渲染顺序的是Z轴,Z轴的值越靠近摄像机,越优先渲染,当然也可以事实同步Z轴和Y轴的值,但是十分消耗性能,Unity中拥有便携的功能自定义渲染轴

复制代码
using UnityEngine;

public class SetYSortAxis : MonoBehaviour
{
    void Awake()
    {
        // 直接获取 Camera 组件
        Camera cam = GetComponent<Camera>();
        // 设置为自定义轴排序
        cam.transparencySortMode = TransparencySortMode.CustomAxis;
        // 设置 Y 轴为排序轴(Y 越高越先渲染,显示在后面)
        cam.transparencySortAxis = new Vector3(0, 1, 0.1f);
        // 如果要 Y 越高越后渲染(显示在前面),改为 new Vector3(0, -1, 0)
    }
}

这种写法就是Y轴越靠下越先渲染,在Y轴相同时判断Z轴,如果希望右边盖住左边或者左边盖住右边的,可以调节cam.transparencySortAxis中X轴的值

相关推荐
淡海水20 小时前
06-03-源码-时间分片与调度策略
unity·c#·gc
五仁烧饼2 天前
动手学 Shader Graph(二):溶解与边缘发光
游戏·unity·shader·shader graph
淡海水2 天前
06-02-源码-增量标记算法实现
算法·unity·c#·gc
淡海水2 天前
06-01-源码-Incremental GC总览与设计
unity·c#·gc
郝学胜-神的一滴2 天前
游戏设计:原型与开发 07:像游戏设计师一样工作
图像处理·游戏·unity·图形渲染·游戏策划·游戏设计
Wanda12143 天前
机器人与机电一体化3D数字孪生机器-Day5
人工智能·unity·游戏引擎·数字孪生
Wanda12143 天前
机器人与机电一体化3D数字孪生机器-Day4
3d·unity·机器人·数字孪生
年少无知且疯狂4 天前
【Unity】Shader spine动画冻结效果
unity·spine
淡海水4 天前
05-02-源码-Boehm GC标记阶段
算法·unity·c#·游戏引擎·gc
淡海水4 天前
05-03-源码-Boehm GC分配与碎片管理
开发语言·算法·unity·c#·游戏引擎·gc