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();
相关推荐
lqj_本人2 小时前
鸿蒙next版开发:相机开发-录像(ArkTS)
数码相机·华为·harmonyos
明明明h3 小时前
Unity Assembly Definition & Assembly Definition Reference
unity·游戏引擎
龙中舞王3 小时前
Unity学习笔记(4):人物和基本组件
笔记·学习·unity
无敌最俊朗@7 小时前
unity3d————协程原理讲解
开发语言·学习·unity·c#·游戏引擎
夜色。7 小时前
Unity6 + Android Studio 开发环境搭建【备忘】
android·unity·android studio
lqj_本人11 小时前
鸿蒙next版开发:相机开发-拍照(ArkTS)
数码相机·华为·harmonyos
这不比博人传燃?12 小时前
传奇996_19——常用函数
游戏引擎
erxij12 小时前
【游戏引擎之路】登神长阶(十四)——OpenGL教程:士别三日,当刮目相看
c++·经验分享·游戏·3d·游戏引擎
咩咩觉主14 小时前
尽量通俗易懂地概述.Net && U nity跨语言/跨平台相关知识
unity·c#·.net·.netcore
墨笺染尘缘15 小时前
Unity——对RectTransform进行操作
ui·unity·c#·游戏引擎