Unity摄像机与灯光相关知识

发布于:2025-02-23 ⋅ 阅读:(20) ⋅ 点赞:(0)

一、Inspector窗口

Inspector窗口可以查看和编辑对象的属性以及设置

其中包含各种组件,例如用Cube对象来举例

1.Sphere(Mesh)组件:

   用来决定对象的网格属性,例如球体网格为Sphere、立方体网格为Cube

   

2.Mesh Renderer组件:

   用来设置对象的渲染属性,例如材质球、灯光、光照探针等     

     

3.Material材质组件

   用来设置对象的材质属性

    


unity中的任何对象都是由不同的组件生成的

二、摄像机

1.Clear Flags

Clear Flags 清除标记

每个相机在渲染时会存储颜色和深度信息。屏幕的未绘制部分是空的,默认情况下会显示天空盒。当你使用多个相机时,每一个都将自己的颜色和深度信息存储在缓冲区中,还将积累大量的每个相机的渲染数据。当场景中的任何特定相机进行渲染时,你可以设定清除标记以清除缓冲区信息的不同集合。可以通过下面四个选项之一来完成Skybox 天空盒

这是默认设置。在屏幕上空的部分将显示当前相机的天空盒。如果当前相机没有设置天空盒,它会默认使用渲染设置(在Edit->Render Settings里)中选择的天空盒。然后它将退回使用背景颜色。

Solid Color 纯色

屏幕上的任何空的部分将显示当前相机的背景颜色。

Depth Only 仅深度

如果你想绘制一个玩家的枪而不让它在环境内部得到裁剪,你要设置一个深度为0的相机来绘制环境,还要另一个深度为1的相机单独绘制武器。该武器相机的清除标记应设置为仅深度。这将保持环境的图形显示在屏幕上,但会丢弃所有关于每个对象在三维空间中的位置的信息。当枪被绘制出来,不透明的部分将完全覆盖任何已绘制的事物,而不管枪到墙之间如何接近。

Don’t Clear 不清除

该模式不清除任何颜色或深度缓存。其结果是,每帧绘制在下一帧之上,造成涂片效果。这不是用于游戏的典型方式,最好是与自定义着色器一起使用。

主要学习一下Depth Only:

个人理解为,假设一款FPS射击游戏,如果为武器单独添加一个Camera,并且调整Depth值,使其大于原来的Camera的Depth,这样这把武器便会永远显示在场景中,而不会因为距离太近或者太远导致武器被裁剪掉


上文引用自:

unity摄像机中clear flags属性介绍 - 技术专栏 - Unity官方开发者社区

2.Culling Mask

Culling Mask 是相机组件的一个重要属性,它决定了相机渲染场景中的哪些层级(Layer)的物体。

3.Projection

用来决定摄像机的投影方式的属性

  • Perspective         透视投影
  • OrthoGraphic      正交投影

 

4.Field of View 

摄像机的焦距设置

 

5.Target Texture

摄像机目标渲染纹理

目标渲染纹理:

通常情况下,摄像机直接渲染到屏幕上,但对于某些效果,将摄像机渲染到纹理中非常有用。这可以通过创建 RenderTexture 对象并将其设置为摄像机上的 targetTexture 来实现。然后,摄像机将渲染到该纹理中。

当 targetTexture 为 null 时,摄像机渲染到屏幕上。

渲染到纹理时,摄像机始终渲染到整个纹理中;

  • 第一步 创建 Render Texture
  • 第二步 将创建好的 Render Texture 拖动到摄像机的目标渲染纹理通道中,这样摄像机视角下的画面就会渲染到 Render Texture 中
  • 第三步 可创建一个材质球 将摄像机画面下的纹理贴图Render Texture赋予到材质球上

6. Target Display

 目标显示设备,用于多摄像机的显示标记


在创建多个摄像机后,程序可能会报错

可以将后创建的摄像机的监听组价给关闭,这样就不会报错了

7. Depth

摄像机的深度,当有多个摄像机时,深度的大小影响摄像机的渲染次序

深度数值越大的摄像机,越先被渲染

8.创建多个Game视口并显示不同的摄像机画面

  • 在Game标签下右键,点击 Add Tab , 增加 Game 视口
  • 并为不同的Game视口显示不同的摄像机画面

9.多摄像机下利用 Depth Only 为Game视口创建小图标 

注意:只能给深度数值最大的摄像机设置 Depth Only,这样两个摄像机的画面才会都显示在 Game视口中,而当两个摄像机深度数值相同,则都可以

然后可调整摄像机的Viewport Rect参数为该摄像机的画面创建小图标

10. Ctrl+Shift+F

选中摄像机并调整场景画面角度后按Ctrl+Shift+F,Game窗口就会显示此视角的摄像机画面

三、灯光

1.灯光类型、颜色、强度

2.灯光下阴影的参数设置

  • Cookie  阴影的剪影

3. 灯光的光晕

4. Render Mode

设置灯光的渲染模式,有自动、重要、不重要三种

5.Culling Mask

6.为平行灯添加光效的组件 Lens Flare