Unity Lighting -- 向场景中添加光源

news2025/1/16 13:42:30

        本节笔记来实践向场景中添加光源。

        除了平行光源外,还有两种常用的光源:

        点光源(Point Lights):点光源所发出的光是朝四面八方发散的,我们可以用点光源来模拟灯泡之类的发光物体。

        聚光灯源(Spot Lights):聚光灯所发出的光是锥形的,我们可以用它来模拟手电筒,车灯,射灯等发光物体。

        面光源(Area Light):面灯,仅用于Light baking,我们可以用它来模拟平板LED灯板,或者灯管的照射效果。

向场景中添加一个光源

        我们以一个会发光的金属苹果为例,首先我们将这个游戏物体拖入场景中

         在这个Apple的Hierarchy窗口中,右键选择这个苹果,选择Light -> Point Light

         接下里观察一下这个Point Light的Inspector

         其中Type表示光源类型,即便是我们之前选择的是Point Light,在这里也还是可以修改成其他类型的光源。不同类型的光源属性稍微有些差别。

         我们还是先来看Point Light的属性,调整一下Range,这个属性值越大,表示光源正中心发出的光最远能照到的距离,可以理解为时一个球体的半径。下面两张图是Range为2和Range为5时的对比

        Color的意思很明显,灯光颜色

        Mode是模式,可以选择为烘焙模式,混合模式或实时模式

        Intensity表示光源的光照强度,值越大光源越亮,调整它为100看看

       Indirect Multiplier,这个属性会影响这个光源提供出的间接光的强度:

                如果小于1,表示间接光在每次从一个物体反射后,强度会变小,和真实的光行为一致。

                如果大于1,表示间接光在每次从一个物体反射后,间接光会变得更加明亮,可以用来达到一些特殊效果。

        Shadow Type配置阴影类型,这个在后面笔记再看

        关于Rendoer Mode,可以参考下面这篇文章:

unity的forward rendering 中光源的使用和light的render mode_light render mode_leonwei的博客-CSDN博客在Unity中的light都有一个属性RenderMode,可以设置light的渲染模式为impotant还是非important,以前只是肤浅的认为important对应的就是像素光,非important就是顶点光,而auto就按照graphic quality里面的设置。后来看了一下unity的文档,其实不是这样,它完全的规则非常复杂:最亮的几个光源会被实现为完全的逐像素光https://blog.csdn.net/leonwei/article/details/48549075        Culling  Mask可以设置场景中哪些Layer会受到这个灯光的影响,默认是所有layer,如果选择nothing,则可以认为这个灯光不起作用。

关于Spot Light的属性

        我们将上面例子的Type修改为Spot Light来看看,可以看到,Spot Light是一个锥形的光源。大部分属性都和Point Light一致,除了一个Inner/Outer Spot Angle属性

         这个属性设置的是这个椎体内外展开角度,拖动一下,看看效果,直观感受一下就很清楚了

 光线和颜色

        本小节笔记从科学的角度简单了解下光线和颜色的关系。

        我们是如何感知到颜色的?现实世界中,白光实际上是多种颜色的光谱组合出来的。通过三棱镜可以将白光的各色光谱分出来。

        物体的颜色会影响它吸收和反射光的行为。比如当光找到一颗橙子上时,橙色的光被反射出来,其它的光被橙子所吸收掉了。

         当光线到达一个黑色物体时,几乎所有的光都被吸收了。目前人们造出了能够吸收大量光的黑色材料用于技术和美术领域,但就算是普通的黑色物体也能够做得非常好了。

        最后,推荐一些免费的介绍光和颜色知识的在线资源:
Color science | Pixar in a Box | Computing | Khan AcademyJust as dialog, acting, and music are tools filmmakers use to convey meaning and emotion, color can be used to the same effect. But determining “color” is not as simple as saying “red” or “brown” because there are endless shades of color in the visible spectrum. In this lesson, you will learn how color is determined partly by the physics of light and partly by how our brains perceive it.https://www.khanacademy.org/computing/pixar/colorA Comprehensive Guide to Color Theory for Artists - Draw Paint AcademyUnderstanding color theory is essential for creating great art. In this post, you’ll learn what it means and how to use it effectively.https://drawpaintacademy.com/a-comprehensive-guide-to-color-theory-for-artists/Books & Other Resources - Color Theory - Research Guides at Massachusetts College of Art and Designhttps://massart.libguides.com/colorPART 2 - General Design Methods, by Bill Williams'Stage Lighting Design' - by Bill Williamsicon-default.png?t=N176https://billwilliams.ca/resources/sld/sld-200.htm

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/387471.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python每日学9 : windows上配置gitee的远程仓库,git的初步使用

在开发中,如果遇到复杂的项目,使用版本控制是非常有必要的,如果涉及到多端开发,那么还需要使用远程仓库。本文作个简单记录,记录下git初步使用。 1 下载与安装 git还有几个ui版本,但是开始使用的话&#…

【LeetCode】带环链表两道题

第一题:环形链表 问题介绍 给你一个链表的头节点head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos 来表示链表…

【Storm】【三】Storm 核心概念详解

Storm 核心概念详解 一、Storm核心概念1.1 Topologies(拓扑)1.2 Streams(流)1.3 Spouts1.4 Bolts1.5 Stream groupings(分组策略)二、Storm架构详解2.1 nimbus进程2.2 supervisor进程2.3 zookeeper的作用2.…

【蒸滴C】C语言结构体入门?看这一篇就够了

目录 一、结构体的定义 二、结构的声明 例子 三、 结构成员的类型 结构体变量的定义和初始化 1.声明类型的同时定义变量p1 2.直接定义结构体变量p2 3.初始化:定义变量的同时赋初值。 4.结构体变量的定义放在结构体的声明之后 5.结构体嵌套初始化 6.结构体…

24节气-惊蛰 // 诗句、海报分享,春风至,惊雷动。

惊蛰,古称"启蛰",是二十四节气中的第3个节气,更是干支历卯月的起始;时间点在公历3月5-6日之间,太阳到达黄经345时。《月令七十二候集解》:"二月节……万物出乎震,震为雷,故曰惊蛰&#xff0…

【ONE·C || 动态内存管理】

总言 C语言:动态内存管理介绍。 文章目录总言1、为什么存在动态内存管理2、动态内存函数介绍2.1、malloc、free2.1.1、malloc函数2.1.2、free函数2.2、calloc、realloc2.2.1、calloc函数2.2.2、realloc函数3、常见的动态内存错误3.1、对NULL指针的解引用操作3.2、对…

TEX:显示文本

文章目录字体选择字体fontspec宏包根据字体形状控制字体为不同的字体形状选择不同的特征为不同的字体大小状选择不同的特征中文字体选择xeCJK宏包字体选择与设置XELATEX字体名查找字体集与符号居中与缩进居中单边调整两边缩进诗歌缩进列表itemize样例enumerate样例description样…

Java多线程(三)——线程池及定时器

线程池就是一个可以复用线程的技术。前面三种多线程方法就是在用户发起一个线程请求就创建一个新线程来处理,下次新任务来了又要创建新线程,而创建新线程的开销是很大的,这样会严重影响系统的性能。线程池就相当于预先创建好几个线程&#xf…

concrt140.dll丢失四种方法解决丨提示游戏里找不到concrt140.dll?

电脑提示concrt140.dll文件丢失怎么办?由于找不到concrt140.dll,无法继续执行代码? 我们平时在打开 Adobe 应用程序、Halo、Forza Horizon 5 地平线5 等时,可能会遇到找不到 concrt140.dll。因此,这不是特定于某个应用…

基频的后处理

基频归一化 基频为什么要归一化?为了消除人际随机差异,提取恒定参数,在语际变异中找到共性。 引言 声调的主要载体就是基频。但是对声调的感知会因人而异,例如某个听感上的高升调,不同的调查人员可能会分别描写成 […

Nginx的负载均衡

Nginx不仅可以作为一个web服务器或反向代理服务器,还可以按照权重、轮询、ip_hash、URL_hash等多种方式实现对后端服务器的负载均衡。 负载均衡的概念: 负载均衡就是将负载分摊到多个操作单元上执行,从而提高服务的可用性和相应速度&#xf…

数据仓库、数据中台、数据湖都是什么?

相信很多人都在最近的招聘市场上看到过招聘要求里提到了数据仓库、数据中台,甚至还有数据湖,这些层出不穷的概念让人困扰。今天我就来跟大家讲一讲数据仓库、数据中台以及数据湖的概念及区别。 数据库 在了解数据仓库、数据中台以及数据湖之前&#xff…

JDBC

JDBC核心技术 讲师:宋红康 微博:尚硅谷-宋红康 第1章:JDBC概述 1.1 数据的持久化 持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数据持久化意味着将内…

【java web篇】Tomcat的基本使用

📋 个人简介 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜📝 个人主页:馆主阿牛🔥🎉 支持我:点赞👍收藏⭐️留言&#x1f4d…

ceph介绍、原理、架构、算法...个人学习记录

前言 之前公司安排出差支援非结构化项目,采用springcloud(redismysql数据冷热处理)s3escephkafka还涉及一些区块链技术等等…,在与大佬的沟通交流下对ceph产生了兴趣,私下学习记录一下;后续工作之余会采用上面相关技术栈手动实现不…

Python模块化编程_Python编程之路

之前跟大家讲的是一些python的数据基础,从这篇文章开始,我们开始正式学习python的模块化编程 下面我们解释一下什么叫做模块 之前已经讲过怎么去定义一个方法,如果你是用python交互器(自带交互器,或者是ipython)来学习定义方法的…

4 通道 3.2GSPS(2 通道 6.4GSPS) 12 位 AD 采集子卡模块

FMC134 是一款 4 通道 3.2GSPS(或者配置成 2 通道 6.4GSPS) 采样率的 12 位 AD 采集 FMC子卡模块,该板卡为 FMC标准,符 合 VITA57.4 规范,可以作为一个理想的 IO 模块耦合至 FPGA 前端, 射频模拟信号数字化…

c语言经典例题-循环结构程序设计

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 求各位数字之积: 本关任务:计算正整数num的各位上的数字之积。 例如: 输入&am…

Elasticsearch:构建自动补全功能 - Autocomplete

什么是自动补全(autocomplete)功能呢?我们举一个很常见的例子。 每当你去谷歌并开始打字时,就会出现一个下拉列表,其中列出了建议。 这些建议与查询相关并帮助用户完成查询。 Autocomplete 正如维基百科所说的&#xf…

vulnhub raven2复现

1.扫描全网段,找出了存活主机ip为192.168.85.144 nmap 192.168.85.0/24 2.nmap扫描端口 nmap -p1-65535 192.168.85.144 3.访问此网站,没找到什么地方可以利用漏洞 ,查看中间件为wordpress 4.使用dirb对该网站进行目录扫描 dirb http://1…