Unity光照系统

1、Unity引擎中提供的光照系统叫EnLighten,作为引擎渲染的一部分,负责构建场景中的灯光。

(1)Light组件简介

  Unity的灯光组件大致分为:光源组件和烘焙组件

  光源:自己能发光,分为Directional Light,Point Lignt,Spot Light。

(2)常见光源类型

  a、Directional Light

  平行光,模仿太阳光,没有真正的“源”,整个场景中任何一个角落的光照强度是相等的。

  b、Point Lignt

  点光源,从中心呈球形向四周扩散,例如火把,室内灯具。Point Light的效果受到范围(Range)和强度(Intensity)的影响。和Directional Light不同,点光源的效果受到位置的影响。

  c、Spot Light

  聚光灯,从中心呈扇形向某一个方向发出,受扇形角度(Angle)和范围(Range)的影响。一般模拟手电筒和车灯。

  d、Area Light

  区域光,与上面3个最大的不同在于只能在烘焙的情况下使用。而Directional Light,Point Lignt,Spot Light能在实时(RealTime)和烘焙(Bake)两种情况下使用。

2、全局光照

实际开发中,大多数情况下灯光都是相互作用的,如灯光照射到物体A上,A反射的光会照射到物体B,这种关联关系是通过全局光照(Global Illumination,GI)系统来进行处理的。

全局光照简介:

  全局光照极大提升了场景中光照的真实性,但是这种程度的实时计算是非常消耗资源的。但从另外一个方面说,我们只需要对场景中的动态物体进行实时计算,保证光照效果,但是对于固定的物体,不应该浪费太多资源。

  这种技术在Unity中称为烘焙。当对场景进行灯光烘焙后,场景中的光照信息就会存储在Lightmap中,当场景运行时,Unity就会读取Lightmap中的数据,无需再次进行计算,避免了不必要的性能消耗。

原文地址:https://www.cnblogs.com/jiaxinli/p/11725005.html

时间: 2024-10-31 18:27:56

Unity光照系统的相关文章

UNITY光照系统简介

UNITY_光照系统 光照系统又称照明系统: 从字面意思理解,光照系统的作用就是给我们的场景带来光源,用于照亮场景.一个五彩缤纷的游戏场景肯定要比一个漆黑一片的游戏场景更具吸引力,想让游戏场景变的更漂亮,光照系统是必不可缺的. 在 Unity5.x 中光照系统主要组成部分有两个: 灯光组件(4 个灯光组件,2 个特殊功能组件)以及 Lighting 面板. 两种类型: 实时光照:PC,主机端运行,照明效果好,但是消耗资源较大. 烘焙光照:移动端运行,照明效果也不错,消耗资源较少. 光照系统之实时

Unity 5:光照系统

原文链接 Unity在一些有理想的游戏开发者当中变得越来越流行.这应该归功于Unity对多平台(像手机.台式机以及主机环境等)的直接支持.此外,对于低收入开发者和工作室来说,它还可以免费使用. Unity支持多种技术及组件,其中一些关键组件就是光照和照明技术.在Unity中,你可以通过模拟灯光的复杂行为或者使用一个简单的光照模型来照亮一个场景. 这篇教程将会着重解释Unity 5中光照系统的工作原理,光照类型和特性,以及如何使用它们来创造丰富的光照效果. 预备工作 首先,确保你使用的是最新一版的

全面理解 Unity UI 系统

[狗刨学习网] 随着 Unity 4.6 发布,新 UI 系统终于与大家见面了. RectTransform Unity UI 系统使用 RectTransform 实现基本的布局和层次控制.RectTransform 继承于 Transform,所以 Transform 的所有特征 RectTransform 同样拥有.在 Transform 基础上,RectTransform 增加了 轴心(pivot).锚点(实际上是用 anchorMin.anchorMax 两个点定义的矩形区域).和 尺

Unity光照

广义地说,Unity有2种光源.1.动态光源  2.Backed Lighting 1.动态光源 就是实时计算的.只要摆光源就可以了 2.Backed Lighting 提前处理好光照贴图.贴在物体上. Point: 角度无关紧要 Directional: 位置无关紧要 Spot: 角度和位置都有影响 Area (Baked Only): 区域光源..暂不知 Ambient Light 环境光(不是光源):在这里设置:Edit -> Rendering Settings (建议把环境光使用黑色,

【Unity编程】Unity动画系统(一)

Unity动画系统 Unity动画系统,也称为"Mecanim",提供了以下功能: 简单的工作流程,设置动画的所有元素,包括对象,角色和属性. 支持导入外部创建的动画片段和使用内置动画编辑器制作的动画片段. 人型动画重新定位,动画角色的运动控制可以被所有的角色模型共享,即角色的外观(SkinedMesh)和运动(Animator)是分离的,它们互相组合之后形成最终的动画. 用于编辑动画状态的的简化工作流程,即动画控制器. 方便预览动画片段,以及片段之间的插值过渡. 这使得动画师可以独立

Unity光照图UV显示

美术的同学觉得 Unity 光照图烘焙的不够美丽,需要在 ps 里修一修,但是不知道每个物体对应的光照图在哪个区域,UV 是如何分布的,于是要求写一个工具显示,于是有了下面这个: 打开场景自动读取当前烘焙的光照图,在场景中点选物体,会以绿色方框的形式显示出光照图 UV 分布在这张光照图上的位置,如果位置不在可见区域,那么自动滚动到可见区域方便查看.

Unity脚本系统

什么是脚本?脚本是一个 MonoBehavior, 继承关系是 MonoBehavior -> Behavior -> Component -> Object GameObject 的行为是由附加到他们身上的组件控制的. 游戏事件 MonoBehavior 类名和脚本名必须要一样 public class MainPlayer : MonoBehaviour { public string myName; // Use this for initialization void Start

Unity 动画系统 Animation 和 Animator的小实例

本文结合一个很简单的动画demo,分别采用2种方法,来对比Animation和Animator的使用方式: 方法1:单独使用Animation 方法2:Animation结合Animator 动画Demo 两个动画.一个是移动,一个是缩放. 实现方式的对比 一.单独Animation来实现 空场景,找到一张Sprite图片,拖到面板中,右键添加Animation组件.如下: 点中这张pig猪的图片,点击Unity的 Window->Animation->Animation.出现如下: 这个时候

unity shader序列帧动画代码,顺便吐槽一下unity shader系统

http://www.cnblogs.com/hellohuan/archive/2014/01/10/3512784.html 一.看到UNITY论坛里有些人求unity shader序列帧动画,写shader我擅长啊,就顺势写了个CG的shader.代码很简单,就是变换UV采样序列帧贴图,美术配置行数列数以及变换速度. Shader "HELLOHUAN/Hello_Sequence" { Properties { _Color ("Main Color", C