[原]Unity3D深入浅出 - 光源组件(Light)

Unity中提供了四种光源:

  • Directional light: 方向光,类似太阳的日照效果。
  • Point light: 点光源,类似蜡烛。
  • Spotlight: 聚光灯,类似手电筒。
  • Area Light:区域光,无法用作实时光照,一般用于光照贴图烘培。

接下来介绍光源的参数:如下图

  • Type:可以选择以上介绍的四种光源类型
  • Range:设置光源范围的大小,从光源对象的中心发射的距离。只有Point和Spotlight有该参数。
  • Color:光源的颜色
  • Instensity:光源的强度
  • Cookie:用于为光源设置拥有alpha通道的纹理,时光线在不同地方有不同的亮度,如果是聚光灯(Spotlight)和方向光(DirectionalLight),可以指定一个2D纹理。如果是一个点光源(Point light),必须指定一个Cubemap(立方体纹理)。
  • Cookie Size:用于控制缩放Cookie投影,只有方向光(DirectionalLight)有该参数。
  • Shadow Type:阴影类型
    • No Shadows 关闭阴影
    • Hard Shadows 硬阴影
    • Soft Shadows 软阴影
    • 个人理解:与现实世界对比,硬阴影就好比太阳光特别的强烈,照出来的影子有棱有角;软阴影就好比阴天的时候,但是有有那么一丝丝阳光,影子相比没那么明显,需要注意的是软阴影会消耗系统更多的资源。
    • 注意:默认设置下,只有Directional light光源才可以开启阴影,Pointlight、Spotlight光源开启阴影的话会弹出提示(Only directionallight have shadows in forward redering),意思就是说只有Directionallight光源在Forward模式下才可以开启阴影(只有发不成web版或单机版才支持)
    • Strength:强度,就是晴天跟阴天的效果吧
    • Resolution:控制阴影分辨率的质量
    • Bias:设置灯光控件的像素位置与阴影贴图值比较的偏移量,取值范围0~0.5,当值过小,对象表面会产生self-shadow,就是物体的表面会有来自于自身阴影的错误显示;当值过大,阴影就会较大程度的偏离投影的对象。
    • Softness:控制阴影模糊采样去的偏移量,只有方向光设置为软阴影的情况才会启用。
    • Softness Fade:控制阴影模糊采样区的偏移量,有有方向光设置为软投影的情况下才会启用。
  • Draw Halo:勾选此项,光源会开启光晕效果。
  • Flare:耀斑/炫光,镜头光晕效果。
  • RenderModel 渲染模式
    • Auto:自动,根据光源的亮度以及运行时Quality Settings的设置来确定光源的渲染模式。
    • Important:重要,逐像素进行渲染,一般用于非常重要的光源渲染
    • Not Important:光源总是以最快的速度进行渲染。
  • Culling Mask :剔除遮蔽图,选中层所关联的对象将收到光源照射的影响。
  • Lightmapping:光照贴图,用于控制光源对光照贴图的影响模式
    • RealtimeOnly:实时灯光计算,不参与光照贴图的烘培计算。
    • Auto:自动
    • BakedOnly:用于光照贴图的烘培,不进行实时灯光计算。

需要注意的是,如果场景中对光源要求不高的话,就尽量选用Directional Light光源,另外两个光源(PointLight,Spotlight)会比较消耗内存资源。

对光源参数的介绍就到这里下一章介绍 摄像机(Camera)的参数 

[原]Unity3D深入浅出 - 光源组件(Light),布布扣,bubuko.com

时间: 2024-12-06 02:48:42

[原]Unity3D深入浅出 - 光源组件(Light)的相关文章

[原]Unity3D深入浅出 - 摄像机组件(Camera)

在Unity中创建一个Caaera后,除了默认带一个Transform组件外,还会附带Flare Layer.GUI Layer.Audio Listener等4个组件,如下图. ClearFlags:清除标记:决定屏幕中哪部分被清除.一般用于多台摄像机来描绘不同对象的情况,有一下三种模式. Skybox:天空盒(默认项).在屏幕空白处显示当前摄像机的天空盒,如果没有指定天空盒,则会显示默认背景色. Solid Color:如果没有设置天空盒,将默认显示此处设置的背景色. Depth only:

[原]Unity3D深入浅出 - 认识开发环境中的Component(组件)菜单

Component(组件)是用来添加到GameObject对象上的一组相关属性,本质上每个组件都是一个实例,比如在Cube上添加一个Mesh网格,即面向对象的思维方式可以理解成Cube对象里包含了一个Mesh对象. Component主要包含以下组件:  Mesh:添加网格类型的组件 Mesh Filter:网格过滤器 Text Mesh:文本网格 Mesh Renderer:网格渲染器 Effects:添加特效类型组件 Particle System:粒子系统 Trail Renderer:拖

[原]Unity3D深入浅出 - 粒子系统(Particle System)

粒子系统是在三维控件渲染出来的二维图像,主要用于烟,火,水滴,落叶等效果.一个粒子系统由例子发射器.粒子动画器和粒子渲染器三个独立的部分组成. Unity中自带了一些粒子效果,在Assets>ImportPackage>Particles,即可将Prticles.UnityPackage导入到项目中,这些粒子效果包括:Dust(沙尘).Fire(火焰).Water(水).Smoke(烟雾).Sparkles(闪光),还有一些粒子资源 Sources.Misc(杂项),如下图 随便拖出来几个 接

[原]Unity3D深入浅出 - 认识开发环境中的RenderSettings面板

Fog:在Scene中开启雾效果 Fog Color:雾的颜色 Fog Mode:雾效果的模式,Linear(线性雾效果) Exponential(均匀分布的雾效果)  Exp2(越远越看不清楚)三种类型 Fog Density:雾效果的密度 Linear For Start:雾的起始距离 Linear For End:雾的结束距离 Ambient Light:环境光设置 Scybox Material:天空盒材质 Halo Strength:光晕的强度 Flare Strength:耀斑强度

[原]Unity3D深入浅出 - 认识开发环境中的Project面板

前面几个是用来创建脚步的,从Prefab说起: Prefab:预设物体,若一个Object在Scene中多处用到,即可选择为改对象创建一个Prefab.创建一个Prefab后,将源Object拖拽置新建的Prefab下,即可在场景中多处使用,且在修改任意一处,Apply后即可修改所有的形态. Material:材质,可自己设定贴图等. Animation:可新建一个动画剪辑 Cubemap:立方体贴图 Lens Flare:可用来模拟太阳光晕效果,可拖置光源的Flare属性下. Custom F

[原]Unity3D深入浅出 - 认识开发环境中的自带的Package资源包

Character Controller:角色控制器 Glass Refraction(pro only):玻璃反射资源包 Image Effects :图像效果资源包 Light Cookies:光效资源包 Light Flares:光晕资源包 Particles:粒子效果资源包 Physic Materials:物理材质资源包 Projectors:幻灯机效果资源包 Scripts:脚本资源包 Skyboxes:天空盒资源包 Standard Assets(Mobile):标准资源包 Ter

[原]Unity3D深入浅出 - 认识开发环境中的GameObject菜单栏

Create Empty:创建空对象 Create Other:创建其他对象 Particle System:创建粒子系统 Camera:创建相机 GUI Text:GUI文本 GUI Texture:创建GUI贴图 3D Text:创建3D文本 Directional Light 方向光(太阳光) Point Light 点光源(灯泡) Spot Light 聚光灯(手电筒) Area Light  Pro版才有 只能用来烘培Lightmap Cube:创建正方体 Sphere:创建球体 Ca

[原]Unity3D深入浅出 - 天空盒(Skyboxes)

Unity3D中自带了9中天空盒,在Assets - Import Package - Skyboxes 即可导入天空盒资源. 为Scene添加Skybox:在Edit菜单项里的Render Settings的面板中有一个 Skybox Material属性,可为其指定天空盒材质,直接将刚才导入的天空盒资源拖拽到该属性即可. 为Camera添加Skybox:选中Camera后,才菜单栏中依次选中 Component - Rendering - Skybox,然后Camera的属性面板就多了一个S

[原]Unity3D深入浅出 - 之刚体部件Rigidbody

在虚拟世界中,任何物体都是没有活力的,要想变的真实,Rigidbody是必不可少的组件,下面介绍Rigidbody的各个属性: Mass:质量 Drag:阻力,对象在运动时遇到的空气阻力,0表示没有空气阻力,好比丢一个东西出去,如果这个东西没有阻力的话,则会一直不停的向你丢的方向所运动. Angular Drag:角阻力也称扭矩力,扭矩力是使物体发生转动的一种特殊的力炬. Use Gravity:使用重力,开启后会受到重力影响. Is Kinematic:是否开启动力学,开启后不在受物理引擎的影