小怿学习日记(七) | Unreal引擎灯光架构

灯光的布局对于HMI场景中车模的展示效果有着举足轻重的地位。本篇内容将简单介绍ES3.1的相关知识,再深入了解Unreal引擎中车模的灯光以及灯光架构。

一、关于ES3.1

1.1 什么是ES3.1

ES3.1这个概念对于美术的同学可能比较陌生,ES3.1指的是OpenGL ES3.1,这是移动设备和嵌入式系统常用的图形API。我们可以理解为是一种渲染方式,或者是渲染算法,类似于换一个渲染器或者渲染管线。

Unreal引擎中启用ES3.1之后,由于算法不同,灯光效果会发生改变,如图1.1.1和图1.1.2所示。

图1.1.1 PC环境下的场景效果

图1.1.2 ES3.1环境下的场景效果

1.2 为什么要用ES3.1

市场上的量产车型项目中,使用Unreal引擎时都会选择OpenGL ES3.1(ES3.1)环境。主要是源于芯片算力限制、平台兼容性、开发成本与车规级稳定性需求的综合权衡,这个只需简单了解,不必深究。

我们在制作Unreal 项目的时候,需要与市场上普遍应用的开发环境相适配,所以选择ES 3.1作为开发环境进行项目制作。

1.3 怎么启用ES3.1

在界面顶部找到:设置——预览渲染级别——Android ES3.1,选择即为启用。待加载完成即可。

图1.3.1 启用ES 3.1

二、灯光的选择

从项目落地的角度出发,我们需要控制性能开销在一定的范围内,并且要保证帧率、发热量。灯光的使用会很大程度影响性能的开销,所以我们必须保证开销低的情况下去制作灯光架构。

2.1 可移动光源

一般工程里面会尽量避免使用可移动光源,可移动光源虽然效果好,但是需要以很大的性能开销为代价,满足不了性能的需求。可移动光源包括定向光源、点光源、聚光灯、矩形光源等多种光源的可移动模式,如图2.1.1所示。

图2.1.1 可移动光源

其中定向光源、点光源、聚光灯、矩形光源由于其光照的方向性或者衰减较强,如果不使用可移动性的话,只能通过静态烘焙的方式制作灯光效果。静态烘焙的灯光效果不在本篇灯光架构讨论范围内,所以本篇不会展开讨论。

2.2 Skylight

Skylight通常作为环境光的整体照亮,即可以调整默认的天空环境去使用,也可以选择HDRI之类的环境贴图来处理光照。Skylight既有360°环绕光照,又具备开销低的特性。非常适合在ES3.1的开发环境下使用。

图2.2.1 切换立方体贴图

2.3 HDRI Backdrop

HDRI Backdrop与使用HDRI贴图的skylight类似,但区别在于skylight上的HDRI贴图在环境中不可见。我们可以在设置——插件里面找到HDRI Backdrop,勾选启用并重启Unreal 引擎。

图2.3.1 启用HDRI Backdrop

启用HDRI Backdrop之后,可以在光源集合里面找到新增了一个HDRI背景,直接将其拖入到场景中,便可以完成调用。

图2.3.2 调用HDRI Backdrop

2.4 反射捕捉

反射捕捉有球体反射捕捉和盒体反射捕捉,两者在使用上并没有什么区别。反射捕捉并不属于光源的类别,属于视觉效果的类别中。所以它的性能开销也是很小的。反射捕捉与skylight相同的是:都可以切换指定的立方体贴图。所以我们可以通过HDRI贴图去控制环境中的反射效果,也可以通过修改HDRI贴图去强化类似腰线等结构的反射效果。

图2.4.1 视觉效果

三、灯光的搭配

3.1 反射捕捉+HDRI Backdrop

反射捕捉用来提供车身的高光反射。我们将反射捕捉放入场景中,调整大小到比车模稍大两三倍即可。

图3.1.1 调整反射捕捉的大小

然后在HDRI上画出和车身腰线匹配的高光弧线,以此构建车身的基础反射和腰线高光,如图3.1.2。

图3.1.2 绘制HDRI的高光

将HDRI填充进反射捕捉中,我们可以看到车身上已经有了不错的反射效果。但是车身的基础照亮还没有处理,所以看上去的效果还不是很正确。

图3.1.3 反射捕捉的照明效果

HDRI Backdrop用来提供车身的基础亮度和可视化背景,可以看到图3.1.3里面,天空背景的颜色都是黑色,和车身上的反射效果并不匹配。在我们给场景添加HDRI Backdrop,给上和反射捕捉相匹配的HDRI,车身上的基础照亮和天空的可视化背景也得到了完善。

图3.1.4 添加HDRI Backdrop

3.2 反射捕捉+Skylight+球体背景

如果我们需要将可视化背景和车身基础亮度的照射分开的话,就需要使用Skylight去提供车身的基础照明,另外通过制作背景模型去提供背景的可视化。需要注意的是,背景不能提供任何光照以及反射效果,如图3.2.1所示,仅启用背景模型时,车模上不会有任何被照亮或反射的效果。

图3.2.1 可视化背景不参与光照

反射捕捉和3.1所提及的内容相同,不再赘述。图3.2.2是仅开启反射捕捉的效果,相比图3.1.3的示例去掉了湖面等环境元素,但车身上的反射效果是一致的。

图3.2.2 仅反射捕捉

Skylight可以直接拖入场景当中,填充对应的HDRI即可满足基础的底色光照。对比图3.2.2与图3.2.3,很明显可以看出车身上的轮胎,塑胶件和车漆底色的照明效果发生了改变。

图3.2.3 添加Skylight

背景模型的使用需要看具体情况来选择,如果旋转的视角限制在很小的角度,或者固定视角,那背景可以使用一个面片填充贴图,用最简单的方式即可满足开发需求。当需要360°旋转甚至俯仰角度的旋转时,就需要一个球形的模型来作为背景支撑。与球形UV相对应的,不管是制作的渐变背景还是天空背景,我们的贴图样式都需要与HDRI的展开方式一致。

首先制作一个巨大的球形,并将其材质的着色模型修改成无光照,并勾选双面选项,这样我们从内部才能看到球形的背景模型。

图3.2.4 修改材质类型

然后我们将准备好的HDRI背景贴图导入材质编辑器,右键将纹理节点转换成参数,如图3.2.5所示。

图3.2.5 贴图转化为参数

在贴图参数的前面简单链接上几个节点控制HDRI贴图的旋转即可,如图3.2.6。

图3.2.6 控制HDRI旋转

我们也可以再增加多一些参数,结合上简单的运算,比如对比度、强度、亮度等,如图3.2.7所示,可以方便在Unreal 引擎中直接调整贴图展示的最终效果。

图3.2.7 简单的参数运算

图3.2.8 加上模型背景

3.3 添加地面反射

在完成了灯光制作之后,可能最终效果还稍显瑕疵,这时候我们可以通过添加地面反射的方式,为场景添加一些层次。如图3.2.8中,模型背景的效果比较素,车模与场景拉不开空间感。这时候就可以在地面增加对车模的反射,提升车模与场景的融合度,增加层次感,如图3.3.1。

图3.3.1 增加地面反射

本篇笔记说明了Unreal 引擎中选择ES3.1环境进行项目制作的缘由,介绍了Unreal引擎中各种灯光在ES3.1环境下的适配情况,并介绍两种灯光架构制作场景的打光。如果想了解更多关于Unreal HMI 3D解决方案的信息,欢迎发送邮件至mkt@eptcom.com联系我们。

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

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

相关文章

【洛谷排序算法】P1012拼数-详细讲解

这道题本质上是通过确定数字的拼接顺序来得到最大拼接数,虽然主要思路是利用字符串及其比较规则来实现,但也可以基于数组结合一些转换操作来解决,以下是大致思路和代码示例: 【算法思路】 首先将输入的数字存储在数组中。然后自…

2025前端框架最新组件解析与实战技巧:Vue与React的革新之路

作者:飞天大河豚 引言 2025年的前端开发领域,Vue与React依然是开发者最青睐的框架。随着Vue 3的全面普及和React 18的持续优化,两大框架在组件化开发、性能优化、工程化支持等方面均有显著突破。本文将从最新组件特性、使用场景和编码技巧三…

基于YOLO11深度学习的运动鞋品牌检测与识别系统【python源码+Pyqt5界面+数据集+训练代码】

《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…

Docker 部署AnythingLLM

两个指令搞定 1.下载镜像 docker pull mintplexlabs/anythingllm 2.运行容器 export STORAGE_LOCATION$HOME/anythingllm mkdir -p $STORAGE_LOCATION chmod -R 777 $STORAGE_LOCATION touch "$STORAGE_LOCATION/.env" docker run -d -p 3001:3001 \ --cap-add SY…

java开发——为什么要使用动态代理?

举个例子:假如有一个杀手专杀男的,不杀女的。代码如下: public interface Killer {void kill(String name, String sex);void watch(String name); }public class ManKiller implements Killer {Overridepublic void kill(String name, Stri…

Moonshot AI 新突破:MoBA 为大语言模型长文本处理提效论文速读

前言 在自然语言处理领域,随着大语言模型(LLMs)不断拓展其阅读、理解和生成文本的能力,如何高效处理长文本成为一项关键挑战。近日,Moonshot AI Research 联合清华大学、浙江大学的研究人员提出了一种创新方法 —— 混…

Linux中的查看命令

路径分为相对路径(行相对当前工作目录开始的路径)和绝对路径(不管是)#:命令提示符,从这个位置可以开始输入命令,另一个提示符为$,如果是root,则提示为#;如果是…

如何用校园内网远程连接服务器

注:本机家庭版windows11,要连接校园网,windows10/11一般都内置openssh,找到后安装,被连服务器是linux 一、先查看是否安装openssh,没有的话安装 方法一: -> 1.1 按下winR按键,…

AI客服-接入deepseek大模型到微信(本地部署deepseek集成微信自动收发消息)

1.本地部署 1.1 ollama Ollama软件通过其高度优化的推理引擎和先进的内存管理机制,显著提升了大型语言模型在本地设备上的运行效率。其核心采用了量化技术(Quantization)以降低模型的计算复杂度和存储需求,同时结合张量并行计算&…

使用 Docker-compose 部署 MySQL

使用 Docker Compose 部署 MySQL 本文将详细指导如何使用 docker-compose 部署 MySQL,包括基本配置、启动步骤、数据持久化以及一些高级选项。通过容器化部署 MySQL,你可以快速搭建一个隔离的数据库环境,适用于开发、测试或小型生产场景。 关…

HTML 中的 Canvas 样式设置全解

在 HTML5 中&#xff0c;<canvas> 元素提供了一个强大的绘图接口&#xff0c;允许开发者通过 JavaScript 实现各种图形和动画效果。为了充分利用 <canvas> 的功能&#xff0c;理解其样式设置是至关重要的。本文将详细介绍如何在 HTML 中设置 <canvas> 的各种…

【论文解析】Fast prediction mode selection and CU partition for HEVC intra coding

级别:IET Image Processing(2020)CCF CSCI 4区时间:2020年机构:苏州大学下载地址:Fast prediction mode selection and CU partition for HEVC intra coding摘要 HEVC确实是一个很大的进步,编码效率翻倍,但计算复杂度也增加了不少。为了解决这个问题,提出了两种算法:…

大数据组件(四)快速入门实时数据湖存储系统Apache Paimon(2)

Paimon的下载及安装&#xff0c;并且了解了主键表的引擎以及changelog-producer的含义参考&#xff1a; 大数据组件(四)快速入门实时数据湖存储系统Apache Paimon(1) 利用Paimon表做lookup join&#xff0c;集成mysql cdc等参考&#xff1a; 大数据组件(四)快速入门实时数据…

智慧校园系统在学生学习与生活中的应用

随着科技的快速发展&#xff0c;智慧校园系统逐渐成为现代教育不可或缺的一部分。它整合了先进的信息技术、物联网技术以及人工智能等&#xff0c;旨在构建一个全面、智能、个性化的学习与生活环境。对于学生而言&#xff0c;这一系统不仅能够极大地提高学习效率&#xff0c;还…

基于Flask的京东商品信息可视化分析系统的设计与实现

【Flask】基于Flask的京东商品信息可视化分析系统的设计与实现&#xff08;完整系统源码开发笔记详细部署教程&#xff09;✅ 目录 一、项目简介二、项目界面展示三、项目视频展示 一、项目简介 系统能够灵活地执行SQL查询&#xff0c;提取出用于分析的关键数据指标。为了将这…

Electron通过ffi-napi调用dll导出接口

electron使用ffi-napi环境搭建 附打包好的ffi-napi可以直接放到项目目录下使用&#xff0c;避免以后麻烦 一、安装node.js Node.js官网&#xff1a;https://nodejs.org/zh-cn/download&#xff0c;选择LTS长期稳定版本即可 需要注意Node.js 区分32和64位&#xff0c;32位版…

25工程管理研究生复试面试问题汇总 工程管理专业知识问题很全! 工程管理复试全流程攻略 工程管理考研复试真题汇总

工程管理复试面试心里没底&#xff1f;别慌&#xff01;学姐手把手教你怎么应对复试&#xff01; 很多同学面对复试总担心踩坑&#xff0c;其实只要避开雷区掌握核心技巧&#xff0c;逆袭上岸完全有可能&#xff01;这份保姆级指南帮你快速锁定重点&#xff0c;时间紧迫优先背…

深蓝学院自主泊车第3次作业-IPM

目录 1 题目介绍2 求解 1 题目介绍 已知鱼眼相机的参数&#xff0c; image_width&#xff0c;表示图像的宽度image_height&#xff0c;表示图像的高度 ξ \xi ξ&#xff0c;表示鱼眼相机参数 k 1 k_1 k1​、 k 2 k_2 k2​&#xff0c;表示径向相机参数 p 1 p_1 p1​、 p 2 p…

核货宝助力连锁门店订货数字化转型升级

在竞争激烈的连锁零售行业&#xff0c;传统订货模式弊端日益凸显&#xff0c;严重制约着企业的发展。核货宝订货系统以其卓越的数字化解决方案&#xff0c;为连锁门店订货带来了全方位的变革&#xff0c;助力企业实现数字化转型升级&#xff0c;在市场中抢占先机。 一、增强总部…

2.最多提取子串数目(100分)-附带Java逐行解析

题目 给定 [a-z]&#xff0c;26个英文字母小写字符串组成的字符串 A 和 B&#xff0c;其中 A 可能存在重复字母&#xff0c;B 不会存在重复字母&#xff0c;现从字符串 A 中按规则挑选一些字母&#xff0c;可以组成字符串B。 挑选规则如下&#xff1a; 同一个位置的字母只能挑…