游戏开发引擎__游戏场景(灯光,摄像机)

1.灯光

重要参数介绍

类型: 控制灯光的类型,有“定向”“点”“区域”和“聚光”4种模式。
颜色: 控制灯光的颜色。
模式: 控制灯光的光照模式,有“实时”“混合”和“烘焙”3种模式。
强度: 控制灯光的明亮程度。
间接乘数: 改变间接光的强度。
阴影类型: 改变灯光照射后产生的阴影,有“硬阴影”“软阴念“无阴影”3种模式。“软阴影”的效果最好,但是也更耗费资源。
剪影: 灯光照明的纹理遮罩。
绘制光晕: 是否显示光晕效果。
眩光: 指定灯光的光晕对象。
剔除遮罩: 设定受灯光照射的图层。

1.1 定向光(Directional Light)

(1)没有固定光线起始坐标

(2)只要游一个定向光,场景所有物体都会游一个从远处照射来的光,产生阴影。

1.2.点光源

1.3.聚光灯

就如同现实中的聚光灯一样,光线从一点发出,并向灯外照射,照射范围如同一个锥形,其光线示意如图。生活中的壁灯、照射灯和手电筒等也均为聚光灯,可以把聚光灯理解为带了灯罩的点光源。

效果

1.4.区域光(要烘焙)


区域光是从面发射出光线,区域光提供了一个短形平面,这个平面已经设置好了大小和方向,会向z轴面一起均匀地发射光线。区域光类似照相馆中的柔光灯,所以发射出的光线十分柔和。

烘焙

选中需要烘焙的物体

效果

1.5 灯光烘焙

设置环境光

重要参数介绍

天空盒材质: 设置场景中的天空盒材质。该材质既可以在资源商店中加载外部资源,又可以在“项目”面板中创建材质球。将材质球的Shader设置为Skybox类型,即可创建自己的天空盒材质,
太阳源: 设置一个定向灯光作为太阳源使用。
环境照明: 设置环境光。环境光有“天空盒”“渐变”和“颜色”3种光源,可对其进行强度和模式的设置。
环境反射:设置环境光的反射效果,可以进行反射源和质量等的设置。
在“照明”面板中,除了可以设置烘焙,还可以在“环境”一栏中对环境光进行设置。环境光是一种较为特殊的光源,它并不属于灯光,但是会对整个场景进行照明,如图:

2.场景摄像机

RPG相机在脑袋上,FPS相机眼睛上

2.1 副摄像机的使用

实现

再建一个摄像机,把清除标致改为仅深度,这样就把这个摄像机变成了副摄像机

游戏界面效果

映射

把副摄像机照出来的东西照在平面上

1.

2.

3.然后把纹理拖到平面上

映射效果(做镜子用)

(异空间的联动)

3.多媒体

声音,视频,图片,数据

3.1 声音

3.1.1 Audio Listener

如果要"戏听到音,么就要为我的角色"加Audio Listener(音频监听)

3.1.2 为场景添加音频—Audio Source(音频源)

Audio Source(音频源):音频源用于在游戏中播放声音,在希望发出声音的物体上添加Audio Source(音频源)组件,待设定好播放的音频后,该物体就可以发出声音了。我们可以想象音频源就是一个音箱,希望哪个游戏物体发出声音,就为这个游戏物体装备上音箱,再选择播放的内容即可。下面尝试在立方体中添加Audio Source组件,其“检查器”面板

参数

静音: 当前音频源是否静音.
唤醒时播放:勾选该选项后,只要该物体为激活状态即会开始播放。
循环:该音频播放结束后是否循环播放。
音量:音频播放的声音大小。
音调: 声音频率,可以将声音加速或减速
空间混合: 设置音频源为3D音频源还是2D音频源,3D音频源会随着距离的增加而减小音量。
3D Sound Settings(3D声音设置):当音频源为3D时,可对音频的扩张、衰减距离等进行设置。

AudioClip(音频剪辑):该属性用于添加一个音频剪辑。将普通的音乐文件添加到Unity后,即可变成音频剪辑,Unity中常使用的音频格式有WAV、MP3、AIF和OGG。

通过脚本控制音频效果

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

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

相关文章

亚信电子于IAS 2024展出最新IO-Link主站设备软件协议栈解决方案

亚信电子即将于IAS 2024展示最新的亚信IO-Link主站/设备软件协议栈、集成亚信IO-Link主站软件协议栈的AX58400 EtherCAT转IO-Link网关,以及AXM57104A TSN PCIe千兆以太网卡解决方案。 [台湾新竹讯, 2024年9月18日] 亚信电子(ASIX Electronics Corporat…

Golang | Leetcode Golang题解之第415题字符串相加

题目: 题解: func addStrings(num1 string, num2 string) string {add : 0ans : ""for i, j : len(num1) - 1, len(num2) - 1; i > 0 || j > 0 || add ! 0; i, j i - 1, j - 1 {var x, y intif i > 0 {x int(num1[i] - 0)}if j &g…

二叉树的层序遍历(含十道leetcode相关题目)

文章目录 二叉树层序遍历模板102. 二叉树的层序遍历 二叉树层序遍历模板 我们之前讲过了关于二叉树的深度优先遍历的文章:前中后序遍历的递归法和迭代法。 接下来我们再来介绍二叉树的另一种遍历方式:层序遍历。 层序遍历一个二叉树。就是从左到右一层…

1.1 软件测试 + AI

欢迎大家订阅【软件测试】学习专栏,开启你的软件测试学习之旅! 文章目录 前言一、软件测试二、人工智能的引入 前言 人工智能的引入为软件测试带来了巨大的变革,不仅提升了测试效率和准确性,也为软件质量的保障提供了新的手段。通…

微信小程序开发自带的自定义Navigation-bar避坑

最近新开了一个小程序项目,用了新版本的微信小程序开发工具。在模拟器上开发一直都很顺利,开发完成之后,要上到真机上进行测试,发现在华为的鸿蒙上,样式有点不对了。 居然NavigationBar被遮住了一半,发现在…

Spark-ShuffleWriter-UnsafeShuffleWriter-钨丝内存分配

一、上下文 《Spark-ShuffleWriter-UnsafeShuffleWriter》中提到在进行Page内存分配时,调用了一行代码 MemoryBlock page memoryManager.tungstenMemoryAllocator().allocate(acquired); 这里就会走MemoryManager的钨丝内存分配,下面我们来详细看下 …

MySQL高阶1831-每天的最大交易

题目 编写一个解决方案,报告每天交易金额 amount 最大 的交易 ID 。如果一天中有多个这样的交易,返回这些交易的 ID 。 返回结果根据 transaction_id 升序排列。 准备数据 Create table If Not Exists Transactions (transaction_id int, day date, …

python筛选出不合格密码的用户

有如下数据:筛选出不合格密码的用户,对出现至少四个连续数值为不合格密码,例如"1234"、"8765"为不合格密码 用户名密码X12345678Y87654321O10293847P39485726Q28475639R19283746S91827364T56473829U83746592V28374659W7…

新手教学系列——基于统一页面的管理后台设计(一)

在现代企业级应用中,后台管理系统往往是核心组成部分,特别是随着业务规模的扩展,如何在多个后端服务模块的基础上实现统一的登录验证、权限控制和页面管理,成为许多开发者面对的挑战。本文将以实际项目为例,详细讲解如何设计一个多模块的后台管理系统,满足不同服务模块的…

superset 解决在 mac 电脑上发送 slack 通知的问题

参考文档: https://superset.apache.org/docs/configuration/alerts-reports/ 核心配置: FROM apache/superset:3.1.0USER rootRUN apt-get update && \apt-get install --no-install-recommends -y firefox-esrENV GECKODRIVER_VERSION0.29.0 RUN wget -q https://g…

leetcode:字符串中的第一个唯一字符

#include <unordered_map> class Solution { public:int firstUniqChar(string s) {unordered_map<char, int> HashMap;string::iterator it s.begin();int i 0;//标记元素下标while (it ! s.end())//初始化哈希表{if (HashMap.count(*it) > 0)//原先hash表中…

saltstack远程执行

一、saltstack远程执行 一、saltstack远程执行&#xff1a;目标-targeting 详解见&#xff1a;https://www.cnblogs.com/phennry/p/5416408.html 1、查看认证主机情况 2、具体匹配 Globing :   *, 正则:      指定-E参数&#xff0c;正则表达式匹配多个 List&#xff1a…

我的AI工具箱Tauri版-FasterWhisper音频转文本

本教程基于自研的AI工具箱Tauri版进行FasterWhisper音频转文本服务。 进入软件后可以直接搜索 FasterWhisper 或者依次点击 Python音频技术/音频tools 进入该模块。 进入目录后需要进行一些基础配置&#xff0c;参数是默认的可以根据自己的机器进行一些简单的参数操作。 使用方…

新的 MathWorks 硬件支持包支持从 MATLAB 和 Simulink 模型到高通 Hexagon 神经处理单元架构的自动化代码生成

MathWorks 今天宣布&#xff0c;推出针对 Qualcomm Hexagon™ 神经处理单元&#xff08;NPU&#xff09;的硬件支持包。该处理单元嵌入在 Snapdragon 系列处理器中。MathWorks 硬件支持包&#xff0c;则专门针对 Qualcomm Technologies 的 Hexagon NPU 架构进行优化&#xff0c…

NISP 一级 | 7.2 信息安全风险管理

关注这个证书的其他相关笔记&#xff1a;NISP 一级 —— 考证笔记合集-CSDN博客 0x01&#xff1a;信息安全风险 信息系统不可能达到绝对安全&#xff0c;但可以通过安全风险&#xff08;以下简称“风险”&#xff09;控制来实现符合个人或单位目标的一定程度的安全。信息安全管…

Axure PR 9 标签 设计交互

大家好&#xff0c;我是大明同学。 这期内容&#xff0c;我们将深入探讨Axure中可编辑标签元件设计与交互技巧。 可移除标签元件 创建可移除标签所需的元件 1.打开一个新的 RP 文件并在画布上打开 Page 1。 2.在元件库中拖出一个文本框元件。 3.选中文本框元件&#xff0c…

Java安全(加密+HTTPS+WEB安全)

Java加密 单向加密 接收一段明文&#xff0c;然后以一种不可逆的方式将它转换成一段密文 ①、MD5&#xff0c;将无论多长的数据最后编码128位数据&#xff0c;常用文件校验、密码加密、散列数据 byte[] data ...;//明文数据 MessageDigest md5 MessageDigest.getInstance…

构建未来教育:智慧校园的功能与特色

智慧校园是一种利用先进科技手段将传统学校建设与管理进行智能化升级的教育发展模式。其主要功能和特点旨在提供更高效、便捷、安全的教育环境&#xff0c;致力于推动教育教学质量和校园管理水平向更智能化方向发展。 主要功能 1.智能安防系统: 监控摄像头、门禁系统等安防设…

【技术文章】ArcGIS Pro如何批量导出符号和工程样式?

目录 1.确定Pro软件版本 2.共享工程样式 3.管理和调用项目样式 制作好的地图&#xff0c;如何快速分享地图中的符号样式用于其它地图的制作&#xff1f; 在ArcMap软件中&#xff0c;可以通过命令一键批量导出所有符号。ArcGIS Pro软件是否也可以批量导出符号用于其它地图…

OceanBase 中 schema 的定义与应用

背景 经常在OceanBase 的问答社区 里看到一些关于 “schema 是什么” 的提问。 先纠正一些同学的误解&#xff0c; OceanBase 中的 Schema 并不简单的等同于 Database&#xff0c;本次分享将探讨 OceanBase 中的Schema是什么&#xff0c;及一些大家经常遇到的问题。 具体而…