当前位置:   article > 正文

Unity学习笔记4:遮挡剔除、LOD、Profiler、光照、声音_阴影遮挡剔除

阴影遮挡剔除

渲染管线:图形数据在GPU上经过运算处理,最后输出到屏幕的过程。

遮挡剔除:当物体被送进渲染流水线之前,将摄像机视角内看不到的物体进行剔除,从而减少每帧渲染数据量,提高渲染性能

InstantOC:即时遮挡剔除,Instant Occlusion Culling

把组件IOCcam添加到摄像机上面,然后设置参与遮挡的层(Layer mask)和标签(IOC Tag)。对于有遮挡需要的物体,需要放到对应的层和设置对应的标签。

Samples:组件每帧都往前面随机发射x条射线,如果物品不被射中,则会被遮挡。射线数量越多,消耗越大,通常在150-500之间。(被检测的物体需要加伤Box Collider组件,才能被射线碰到)

Rays FOV:射线视野,应大于摄像机视野(Field of View)

View Distance:视图的距离,射线长度,将影响摄像机Clipping Planes -Far数值

Hide Delay:延迟隐藏的帧数,建议50-100之间

PreCull Check::检查采集信息,建议勾选,可以提高剔除效率

Realtime Shadows:实时阴影,如果场景需要实时阴影,建议启用,确保剔除物体显示正常的阴影

LOD:Levels of Detail,多细节层次

指根据物体模型的节点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。

依然是用InstantOC插件来实现的

原理其实很简单,就是对同一个模型,生成3个不同精度的文件(不知道具体叫什么),然后关联在一起,设置较近的时候显示最高精度的,稍微远一点就显示中间精度的,再远就显示最低精度的。应用的图标好像也可以上传3个不同精度和大小的文件,不知道现在手机性能都上来了,还是不是这样。

Profiler:官方的性能分析工具 Window > Analysis > Profiler (快捷键Ctrl+7)

Global Illumination:全局光照

能够计算直接光、间接光、环境光以及反射光的光照系统。

通过GI算法可以使渲染出来的光照效果更加真实丰富

直接光照:从光源直接发出的光,通过Light组件实现

Directional Light:平行光,用于模拟太阳

Point Light:点光源,在灯光位置上向四周发射光线,可以照射其范围内的所有对象,用于模拟灯泡

Spot Light:聚光灯,在灯光位置上向圆锥区域内发射光线,只有这个区域内物体才能受到照射,用于模拟探照灯。

Area Light:区域光,由一个面向一个方向发射光线,只照射该区域内物体,仅烘焙时有效,用在光线较为集中的区域。

Shadow:阴影

Light组件中可以设置全局的阴影类型(Soft Shadows,Hard Shadows, No Shadows)

Strength:硬度,阴影的黑暗程度

Resolution:分辨率,设置阴影的细节程度

Bias:偏移,物体与阴影的偏移

通过Mesh Renderer组件可以启用禁用具体物体的阴影

cast/ receive Shadows:当前物体是否投射/接收阴影

Off 不投射阴影,On投射阴影,Two Sided双面阴影,Shadow Only只投射阴影

阴影剔除:设置显示阴影的距离

Edit-Project Settings-Quality-Shadows Distance

间接光照

物体表面在接受光照后发射出来的光

通过Light组件Bounce Intensity反射强度控制

可以通过Scene面板Irradiance模式查看间接光照

只有标记Lightmaping Static的物体才能产生间接反弹光照

环境光照

作用于场景内所有物体的光照,通过Environment Lighting面板控制

Source环境光源

Skybox通过天空盒颜色设置环境光照

Gradient梯度颜色,Sky天空颜色,Equator地平线颜色,Ground地面颜色

Color纯色

Intensity Multiplier:光强度

Ambient Mode环境光GI模式

Realtime实时更新,环境光源会改变选择此项

Backed烘焙,环境光源不会改变此项选择

反射光照

根据天空盒或立方体贴图计算的作用于所有物体的反射效果,通过Environment Lighting中Reflenctions控制。

Source:反射源

Skybox天空盒

Resolution分辨率

Compression是否压缩

Intensity Multiplier:光强度

Bounces  使用Reflection Probe后允许不同游戏对象间来回反弹的次数

Realtime GI:实时全局光照,运行期间任意修改光源,所有变化都可以立即更新

Lightmap:烘焙

当场景包含大量物体时,实时光照和阴影对游戏性能有很大影响。使用烘焙技术,可以降光线效果预渲染成贴图在作用到物体上模拟光影,从而提高性能。适用于在性能较低的设备上运行

Light Probes:光源侦测

由于LightMapping只能作用于static物体,所以导致运动的物体在场景中的光线无法融合在一起,显得非常不真实。而Light Probes组件可以挺过Probe收集光源信息,然后对运动物体邻近的几个Probe进行插值运算,最后将光照作用到物体身上。

声音:

Unity支持的音频格式mp3,ogg,wav,aif,mod,it,s3m,xm

2D声音:适合背景音乐

3D声音:有空间感,近大远小

Audio Listener:音频监测器,接收场景中音频源Audio Source发出的声音,通过计算机的扬声器播放声音。

Audio Source:音频源

Audio Clip音频剪辑,需要播放的音频资源

Mute静音

Play On Awake 唤醒播放,场景启动时自动播放

Loop 循环播放

Volume 音量大小

Pitch 音调,调节播放速度

Stero Pan:2D声音设置左右声道

Spatial Blend:2D与3D声音切换

 

总算看完基础的东西,很多基础概念,服务端开服是完全没接触到的。

目前看到的东西都是相对静态的,偏向美术和可视化的东西。背后的逻辑,如何让游戏运行起来,这些还没接触到。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/94649
推荐阅读
相关标签
  

闽ICP备14008679号