ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

【Unity小白学习日记10】Unity Canvas 三种Render Mode渲染模式对比

【Unity小白学习日记10】Unity Canvas 三种Render Mode渲染模式对比 目录一、Screen Space‑Overlay 屏幕空间‑覆盖层原理关键特点适用场景小坑二、Screen Space‑Camera 屏幕空间‑相机原理关键特点适用场景三、World Space 世界空间原理关键特点适用场景四、三种模式对比表五、开发选型建议六、面试简答背诵Canvas 是 Unity UGUI 的根容器Render Mode渲染模式决定UI如何投射到屏幕上是UGUI最基础也最常考的知识点。一共有3种模式Screen Space‑Overlay 屏幕空间‑覆盖层Screen Space‑Camera 屏幕空间‑相机World Space 世界空间一、Screen Space‑Overlay 屏幕空间‑覆盖层原理Canvas 直接渲染在屏幕最顶层不依赖任何相机。 坐标以屏幕像素为基准屏幕左上角为(0,0)右下角(Screen.width, Screen.height)。 UI永远盖在所有3D物体、粒子之上不受相机位置、旋转影响。关键特点✅ UI永远置顶不会被3D物体遮挡 ✅ 不需要指定相机配置最简单 ❌ 无法被3D物体遮挡不能做UI穿插3D效果 ❌ 不能跟随相机视角做透视效果适用场景游戏HUD血量、分数、计时主菜单、弹窗、提示通知。绝大多数2D手游、小游戏默认都用这个模式。小坑多Canvas时靠Sort Order控制层级数值越大越在上层。屏幕分辨率变化UI会自动适配画布。二、Screen Space‑Camera 屏幕空间‑相机原理UI依旧是2D屏幕像素UI但是绑定指定的相机UI渲染在相机的近裁剪平面前面。 坐标还是屏幕像素但会继承相机的视场角、裁剪平面参数。逻辑上UI贴在相机前面一块虚拟平面上Plane Distance参数控制距离。关键特点✅ 可以实现3D物体穿插在UI前面/后面的效果 ✅ UI依然是屏幕2D但是受相机参数影响 ✅ 可以配合多个相机让UI只出现在某个相机画面 ❌ 需要指定渲染相机Plane Distance不能大于相机近裁剪面。适用场景需要3D物体穿过UI角色脑袋弹出弹窗上方分屏游戏UI只属于其中一个相机画面需要做UI透视形变效果注意UI本身不是世界物体旋转相机UI会跟着形变但UI元素本身不会在3D世界里存在。三、World Space 世界空间原理Canvas 变成场景中普通的3D物体拥有世界坐标、旋转、缩放。 UI面板就是场景里的一块面片和模型、粒子一样被场景相机渲染。关键特点✅ UI是真实3D对象可以放在场景任意位置可以被模型遮挡也可以遮挡模型 ✅ UI可以挂碰撞体实现3D空间点击UI交互 ❌ 不再自动适配屏幕需要手动控制Canvas大小 ❌ 需要相机才能看见如果相机看不到该CanvasUI直接消失。适用场景游戏内3D交互面板NPC头顶对话框、场景悬浮按钮VR/AR项目UI游戏世界中放置的广告牌、3D界面。四、三种模式对比表对比项Screen Space‑OverlayScreen Space‑CameraWorld Space是否依赖相机❌ 不依赖✅ 需要指定相机✅ 需要场景相机看见对象UI坐标体系屏幕像素空间屏幕像素空间世界3D坐标是否会被3D物体遮挡❌ 永远置顶✅ 可以穿插遮挡✅ 和普通3D物体互相遮挡UI形变无透视形变跟随相机产生透视自身可旋转缩放形变典型用途HUD、弹窗、主菜单需要3D穿插UI效果场景内3D UI、头顶血条、VR界面配置复杂度最低中等最高五、开发选型建议普通游戏UI、弹窗、HUD→ 优先Screen Space‑Overlay简单高效绝大多数项目首选。需要3D物体跑到UI前面人物脑袋挡弹窗一角→ 使用Screen Space‑Camera。UI要放在游戏场景里面比如NPC头顶对话框、墙上屏幕→ 使用World Space。六、面试简答背诵面试口述答案 Canvas一共有三种渲染模式Screen Space‑OverlayUI直接渲染屏幕最上层不需要相机UI永远置顶适合HUD弹窗缺点不能实现3D物体和UI穿插。Screen Space‑CameraUI绑定指定相机UI依旧是屏幕空间但可以实现3D物体与UI互相穿插需要设置Render Camera和Plane Distance。World SpaceCanvas作为场景3D物体拥有世界坐标可以放在场景任意位置可以被模型遮挡多用于场景内3D UINPC头顶面板等。✨小何同学路漫漫其修远兮吾将上下而求索✨
返回列表