Unity——URP相机详解

2021版本URP项目下的相机,一般新建一个相机有如下组件

1:Render Type(渲染类型)

有Base和Overlay两种选项,默认是Base选项

Base:主相机使用该种渲染方式,负责渲染场景中的主要图形元素

Overlay(叠加):使用了Oveylay的相机会把它渲染出的图形叠加到其他相机之上,使用方法是在主摄像机的Stack部分添加该相机,如下图

2:Projection(投影方式)

把三维场景投影到二维屏幕上的过程,有Perspective和Orthoraphic两种方式

Perspective(透视投影):远小近大的效果,可以通过调节Field of View来调节视野大小

Orthographic(正交投影):没有距离之分,没有Field of View

效果如下

视锥体如下:

Near Clipping Planes(近裁剪空间) :相机视锥体靠近相机一侧的平面,在这个平面之前,物体就会被裁剪,不会被渲染,

Far Clipping Plane(远裁剪空间):相机视锥体远离相机一侧的平面,在这个平面之后,物体会被裁剪

调整Near,前面的Cube将不被渲染

3:Rendering(渲染方式)

Renderer:渲染器,URP的渲染管线可选

Post Processing:后处理,可选择开启和关闭

Clear Depth: 如果启用 "Clear Depth",则在每一帧开始时,深度缓冲区将被清除,而如果禁用 "Clear Depth",则深度缓冲区的内容将保留,这样可以在多个相机渲染过程中保持一致的深度信息,适用于一些特殊的渲染效果和场景。

Render Shadow:该相机要不要渲染影子出来

Culling Mask(层级渲染选项):包含或忽略要由摄像机渲染的对象层,让相机渲染哪些图层,而忽略其他图层,

Occlusion Culling(遮挡剔除):防止 Unity 为那些被其他游戏对象完全挡住(遮挡)的游戏对象执行渲染计算,可选下面这些

比如没有开启遮挡剔除,所有没有被摄像机渲染到的物体还是会被渲染

而开启了遮挡剔除后,摄像机看不到的物体将不会被渲染

4:Environment/Volume(环境/体积)

在这里可以设置Update Mode(体积的更新方式)、Volume Mask(体积的遮罩),Volume Trigger(体积的触发方式)

5:Universal Additional Camera Data(添加相机数据)

Universal Additional Camera Data 组件允许 URP 扩展和覆盖 Unity 标准 Camera 组件的功能和外观。

如果不使用脚本来控制和自定义 URP,则无需对 Universal Additiona Camera Data 组件执行任何操作。

如果要使用脚本来控制和自定义 URP,则可以在如下所示的脚本中访问摄像机的 Universal Additional Camera Data 组件:

Class UniversalAdditionalCameraData | Universal RP | 12.1.1 (unity3d.com)

复制代码
var cameraData = camera.GetUniversalAdditionalCameraData();
相关推荐
龚子亦8 小时前
【Unity开发】热更新学习——HybridCLR框架
学习·unity·游戏引擎·热更新
IMPYLH8 小时前
Lua 的 OS(操作系统) 模块
开发语言·笔记·后端·游戏引擎·lua
龚子亦10 小时前
【GameFramework框架】FSM使用
学习·unity·游戏开发·游戏框架
龚子亦11 小时前
【Unity开发】安卓应用开发中,用户进行权限请求
android·unity·安卓权限
君莫愁。11 小时前
【Unity】相机与UI的自适应
ui·unity·c#·游戏引擎
心无旁骛~12 小时前
【VLA】如何构建高质量的机器人训练数据集?
数码相机·机器人
feiduoge20 小时前
教程 44 - 相机系统
windows·游戏引擎·图形渲染
lrh30251 天前
Custom SRP - 16 Render Scale
3d·unity·srp·render pipeline·render scale
feiduoge1 天前
教程 43 - 渲染目标和可配置渲染通道
windows·游戏引擎·图形渲染
春日见1 天前
眼在手上外参标定保姆级教学(Ubuntu 18.04 + ROS)
数码相机