汽车3D HMI图形引擎选型指南【2023】
推荐:用 NSDT编辑器 快速搭建可编程3D场景
2002年,电影《少数派报告》让观众深入了解未来。 除了情节的核心道德困境之外,大多数人都对它的技术着迷。 我们看到了自动驾驶汽车、个性化广告和用户可以无缝交互的 3D 计算机界面。 令人惊讶的是,虽然故事发生在 2054 年,但许多科幻想象的作品已经成为现实。 对于汽车和移动制造商和消费者来说,最令人兴奋的是 3D HMI 的快速崛起。
本文列举了汽车3D HMI可用的4中图形引擎:QT、Kanzi、Unity和Unreal Engine,并给出了图形引擎选择的一般性原则。
如果需要将你的3D模型转换成适合图形引擎的格式,可以使用NSDT 3DConvert这个在线3D格式转换工具:
1、汽车3D HMI概述
为什么? 电气化颠覆了传统的品牌差异化因素,自动驾驶汽车也是如此。 随着驾驶体验变得越来越相似,HMI 对于提供有价值且独特的客户体验变得更加重要。 输入 3D。 计算能力的快速提高,与越来越多的针对汽车用途的图形编程工具集相匹配,使 OEM 能够利用 3D 为驾驶员创建更具吸引力、更易于访问和直观的交互。
未来几年,3D 汽车 HMI 将成为汽车制造商的关键增长杠杆。 探索该技术、它如何为更好的用户旅程提供动力、领先品牌的用例以及如何找到适合你需求的 3D 引擎。
3D HMI 有潜力提供更刺激的驾驶交互。 但 OEM 需要避免引入对体验没有任何价值的不必要的功能。 这些功能可能会分散驾驶员的注意力,并且可能在技术层面上消耗过多的资源,从而导致更高的成本。 因此,在启动任何新功能计划之前,必须为用户确定正确的用例。
首先,设计师和开发人员必须将用户体验放在首位。 他们需要了解用户的需求和愿望,并确定如何使用 3D HMI 来创建更加个性化、更具吸引力和无缝的体验,从而证明使用该技术的合理性。
关注用户痛点,并确定汽车界面或其他技术解决方案如何解决这些问题。 例如,3D HMI可以通过以更直观和易于理解的方式显示关键信息来增强安全性,帮助驾驶员做出更安全的决策。 此外,3D HMI可用于创造更加身临其境的娱乐,让乘客享受电影、游戏或其他内容。
为了使你的品牌在竞争中脱颖而出,请让你的设计师和开发人员专注于创造当前无法提供的独特且引人注目的用户体验,或者提供市场上无法提供的功能,例如基于手势的界面、个性化内容或预测性维护 。
最后,通过一致的视觉语言和风格为你的品牌进行设计。 3D HMI 成功的关键是创造一种既有意义、令人愉快又无缝地表达你的品牌的用户体验。
2、汽车3D HMI 进入高速档
OEM 已开始以新颖的方式利用 3D HMI 图形来增强车辆交互。 开始使用这些基准示例制定你的方法。
3、如何找到适合需求的 3D 引擎
在选择特定的 3D 引擎之前,你需要考虑处于产品开发生命周期的哪个阶段、硬件的功能以及你对用户和开发体验的重视。 虽然我们不会讨论太多细节,因为你的情况可能会有所不同,但在考虑 QT、Kanzi、Unity 和 Unreal Engine 时,请使用这些指南来帮助你选择合适的 3D 工程解决方案。
- QT:跨平台应用程序框架,可用于创建 2D 和 3D 用户界面。 它包括许多用于开发自定义接口的工具和 API,例如对 OpenGL ES 的支持以及与各种硬件平台的集成。
- Kanzi:专为 2D/3D 汽车应用程序设计的 HMI 工具,可开发自定义界面,包括实时渲染、高级动画和简化的工作流程。
- Unity:广泛使用的游戏引擎,可以创建 3D 界面,包括汽车,并支持实时渲染、物理模拟和高级脚本。
- 虚幻引擎:另一种流行的游戏引擎,在汽车界面中非常流行。 它提供了一系列用于开发自定义界面的功能,例如支持实时渲染、高级物理模拟和可视化脚本。
3.1 你处于产品开发周期的哪个阶段
硬件规格:如果你的硬件已经经过规格确定,并且转变为软件定义车辆的重大重新架构工作不在适用于你的 HMI 的范围内,那么你可以做的事情可能会受到限制。 你最好使用 QT 或 Kanzi,因为它们是根据嵌入式电子设备开发的。 尽管 Unity 确实为低性能系统支持提供了更大的灵活性,但在资源和处理需求方面,Unity 和 Unreal Engine 的开销要大得多,效率要低得多。
3.2 想要的用户体验或用户影响的类型
如果你的硬件尚未经过规范(欢迎,时间旅行者),或者它已经被定义为高端,并且你已经知道正在寻找尽可能流畅和最佳的照片真实/物理体验,那么虚幻引擎可能是 非常适合你。 它是目前市场上细节方面最好的 3D 引擎。 Unity 紧随其后。 两者都发挥了良好的营销作用,因为它们是该行业目前的佼佼者,为游戏社区树立了定义标准。
3.3 汽车开发准备
Unity 和虚幻引擎开发环境和社区的汽车成熟度不如传统的现有企业 QT 和 Kanzi。
Kanzi致力于汽车HMI; QT 非常关注汽车 HMI,但覆盖范围相当广泛。 Kanzi 和 QT 都以自己的形式提供 3D 功能,并且呈现得相当好。
开发者社区:
- QT/Kanzi:如果你内部已经具备这种开发专业知识,那么就可以继续这条道路,并通过额外的 3D 功能(例如适当的 3D 模型、动画和计算机图形支持)增强你的 HMI。 QT 拥有比 Kanzi 更多元化的社区,因为 Kanzi 主要专注于嵌入式汽车应用。
- Unity/虚幻引擎:这些是较新的技能组合,似乎很受欢迎,但在传统汽车 HMI 开发公司中并不流行。 但是,有一个优秀且更广泛的游戏开发社区可供利用。
3.4 汽车级工具套件
Unity 和虚幻引擎正处于汽车专用硬件和应用程序的早期支持阶段,如果你的时间安排很严格,这可能会使它们不太适合你的项目。
QT 和 Kanzi:业界成熟的工具集。 许多 OEM 厂商多年来一直在使用这些解决方案,并在性能较低的汽车级硬件上取得了巨大成功。 两者都提供动态 HMI 导入,只需最少的努力即可看到基本结果。 尽管如此,这仍然需要在幕后进行工作才能实现你特定的所需体验功能。
请记住,目前在安全关键型汽车应用/内容中还没有完美的 3D 解决方案。 因此,它应该仅次于更重要的信息,例如通过集群的遥测和错误/警告消息。
最后,最新的 Unity 渲染管道在图形真实感方面可与 Unreal 相媲美; 这两个引擎都比 QT 更容易创建和维护复杂的视觉应用程序。 有趣的是,QT 也曾用于游戏,直到被 Unreal、Unity 和自定义工作室引擎推到一边。 随着车辆硬件计算能力的增强,这种情况也可能发生在 HMI 市场。
3.5 深入探讨 3D 引擎的优缺点
虚幻引擎
优点:
- 真实感用户界面(灯光、反射、烟雾效果
- 进入优秀的开发者社区
- C++ 开发专业知识是汽车行业的普遍需求
- C++为优化提供了更多的灵活性
- 实现物体交互物理的可能性
- 大量3D图形构建工具
- 以3D为中心:起源于3D游戏开发工具集
缺点:
- 高需求的 C++ 开发人员专业知识
- 高端图形细节需要更多的时间、精力和专业知识
- 可能需要更高端的硬件和更多的开发支持
Unity:
优点:
- 游戏开发者社区的大量使用
- C#易于掌握,资源管理更安全
- 为新进入者提供更优惠的许可选择
- 可以使用低端性能硬件构建解决方案
- 比虚幻引擎更好的文档
- 与虚幻引擎相比,插件种类更多
- 最新版本显着提高了图形的真实感
- 支持Android Automotive、QNX和Yocto Linus
缺点:
- 需要开发人员不太常见的 C# 专业知识
- 不太真实感
Kanzi:
优点:
- 现有汽车 HMI 专业知识
- 专门构建的HMI环境
- 从设计到基本功能的平滑过渡
- 如果需要的话,为汽车提供更传统的支持
- 支持操作系统:Android、INTEGRITY、Linux、Nucleus、QNX
缺点/注意事项:
- 仅限于汽车界
- 不以游戏为中心,专为更实际的汽车应用而设计
- 创建自定义图形元素的灵活性有限
- 获取教育材料和文档的机会有限
QT:
优点:
- 现有的汽车HMI专业知识
- 启用安全关键的 HMI,特别是对于集群
- 多元化的社区——不仅仅限于汽车专家
- 为汽车提供传统支持
- 支持Android、嵌入式Linux、INTEGRITY、QNX和VxWorks
- 嵌入式焦点
缺点/注意事项:
- 最初并不以 3D 为中心; 在工具集的演变中添加了后期支持
- 不再以游戏为中心,专为更传统的汽车应用而设计
4、结束语
3D HMI 不再是前沿技术。 领先的汽车品牌已经部署了该技术来简化导航、增加信任、提高舒适性和便利性以及增强个性化。 此外,随着电气化使驾驶体验、3D 图形和强大的工具商品化,OEM 和其他行业参与者可以实现差异化和创新。
原文链接:汽车3D HMI图形引擎选择 — BimAnt
相关文章:

汽车3D HMI图形引擎选型指南【2023】
推荐:用 NSDT编辑器 快速搭建可编程3D场景 2002年,电影《少数派报告》让观众深入了解未来。 除了情节的核心道德困境之外,大多数人都对它的技术着迷。 我们看到了自动驾驶汽车、个性化广告和用户可以无缝交互的 3D 计算机界面。 令人惊讶的是…...

Stable Diffusion stable-diffusion-webui开发笔记
https://lexica.art/ lexica.art 该网站拥有数百万Stable Diffusion案例的文字描述和图片,可以为大家提供足够的创作灵感。可以提供promt灵感 https://civitai.com/ Civitai是一个聚集AI绘图爱好者的社区,在此网站上有许多定制化的模型,特…...

利用MQ实现mysql与elasticsearch数据同步
流程 1.声明exchange、queue、RoutingKey 2. 在hotel-admin中进行增删改(SQL),完成消息发送 3. 在hotel-demo中完成消息监听,并更新elasticsearch数据 4. 测试同步 1.引入依赖 <!--amqp--> <dependency><groupId&…...

linux免密登录最简单--图文详解
最简单的免密登录 1.A电脑生成秘钥 ssh-keygen -t rsa 2.A电脑将秘钥传给B电脑 ssh-copy-id root192.168.1.129 #将秘钥直接传给B电脑 需要输入B电脑的密码,可以看到成功。 3.测试 同理:如果B->A也需要免密登录,统一的操作。 大功告…...
HTTP/1.1协议中的请求报文
2023年8月30日,周三上午 目录 概述请求报文示例详述 概述 HTTP/1.1协议的请求报文由以下几个部分组成: 请求行(Request Line)请求头部(Request Headers)空行(Blank Line)请求体&a…...

攻防世界-Hear-with-your-Eyes
原题 解题思路 是一个没有后缀的文件,题目提示要用眼睛看这段音频,notepad打开文件,没什么东西。 加后缀zip再解压看看。 使用Audacity打开音频文件...
ZED相机获取图像python
import pyzed.sl as sl import cv2 import numpy as np import osclass CameraZed2:def __init__(self,resolutionNone,fps30,depthMode None):self.zed sl.Camera()self.input_type sl.InputType()self.init_params sl.InitParameters(input_tself.input_type)# 设置分辨率…...
Oracle系列之--Profile
Oracle系列之--Profile_oracle profile_楼兰过客的博客-CSDN博客...

学习Bootstrap 5的第四天
目录 表格 基础表格 实例 条纹表格 实例 带边框表格 实例 有悬停效果的行 实例 黑色/深色表格 实例 黑色/深色条纹表格 实例 可悬停的黑色/深色表格 实例 无边框表格 实例 上下文类 可用的上下文类: 实例 表头颜色 实例 小型表格 实例 响应…...

喜报 | 再度中标南网项目!AR 开启电力远程运维新智慧
近日,中国南方电网官网发布《2023年南方电网数字平台科技 (广东)有限公司物资品控远程协助软件采购项目中标公告》,ALVA Systems 凭借 ALVA Rainbow 创新应用竞得此标。 随着相关技术的逐步成熟,基础问题远程化解决已经在工业领域广泛应用。 …...
3.使用IDE的优点
IDE是集成开发环境:Integrated Development Environment的缩写。 1、优点 使用IDE的好处在于,可以把编写代码、组织项目、编译、运行、调试等放到一个环境中运行,能极大地提高开发效率。 IDE提升开发效率主要靠以下几点: 编辑器…...

ShopXO商城系统文件上传0Day代审历程
Git仓库: https://github.com/gongfuxiang/shopxo简介: 两天攻防中,某政局内网横向发现多网段服务器,该服务器搭建了ShopXO商城系统(后来发现是开发临时搭建的,准备做二开用的)。结果花了30来秒审了个垃圾Day拿下该服…...

【java】【项目实战】[外卖十二]【完结】项目优化(前后端分离开发)
目录 一、问题说明 二、前后端分离开发 1、介绍 2、开发流程 3、前端技术栈 三、Yapi 1、介绍 2、部署 3、使用 3.1 添加项目编辑 3.2 添加分类编辑 3.3 添加接口 3.4 运行 3.5 导出接口 3.6 导入数据 四、Swagger 1、介绍 2、使用方式 2.1 pom 2.2 导入…...

解决uniapp下拉框 内容被覆盖的问题
1. 下拉框 内容被覆盖的问题 场景: 现在是下拉框被表格覆盖了 解决办法: 在表格上添加css 样式来解决这个问题 .add-table{display: static;overflow: visible; } display: static: 将元素会按照默认的布局方式进行显示,不会分为块状或行内元素。 overflow: vi…...

论文解读 | KPConv——点云上的可形变卷积网络
原创 | 文 BFT机器人 《KPConv: Flexible and Deformable Convolution for Point Clouds》是一篇发表于2019年的研究论文,作者为Hugues Thomas、Charles R. Qi、Jean-Emmanuel Deschaud、Beatriz Marcotegui和Franois Goulette。这篇论文关注于点云数据上的卷积操作…...
STM32 物联网 4G CAT1 SIMCOM A7680C 源码
基于状态机编写4G模块驱动函数 #include "bsp.h" char LTE_TX[512],LTE_RX[512]; int LTE_TX_length,LTE_RX_length; char U1_TX_data[512],U1_RX_data[512]; char LTE_DATA_buf[512]; char LTE_COM_buf[512]; char LTE_SEND_buf[512];unsigned char U1_TX_flag,U1…...

ETLCloud制造业轻量级数据中台解决方案
制造业数据处理特点 制造业在业务发展过程中产生大量的业务交易数据以及设备运行过程中的状态数据,但是制造业有别于其他互联网或零售行业,其数据处理具有以下特点: 数据量不大,大部分业务系统的数据库表在1000W以下数据结构复杂…...

解决外接显示器后Edge浏览器地址栏等变得很大的问题
解决外接显示器后Edge浏览器地址栏等变得很大的问题 edge设置里外观——触控模式,把触控模式关了...

k8s 启动和删除pod
k8s创建pod pod的启动流程 流程图 运维人员向kube-apiserver发出指令(我想干什么,我期望事情是什么状态) api响应命令,通过一系列认证授权,把pod数据存储到etcd,创建deployment资源并初始化。(期望状态) controller通过list-wa…...

Jenkins详解(三)
Jenkins详解(三) 目录 Jenkins详解(三) 1、Jenkins介绍2、Jenkins CI/CD 流程3、部署环境 3.1 环境准备3.2 安装GitLab3.3 初始化GitLab3.4 GitLab中文社区版补丁包安装3.5 修改GitLab配置文件/etc/gitlab/gitlab.rb3.6 在宿主机输入 http://192.168.200.26:88 地址就可以访问了…...

华为云AI开发平台ModelArts
华为云ModelArts:重塑AI开发流程的“智能引擎”与“创新加速器”! 在人工智能浪潮席卷全球的2025年,企业拥抱AI的意愿空前高涨,但技术门槛高、流程复杂、资源投入巨大的现实,却让许多创新构想止步于实验室。数据科学家…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...

技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...
站群服务器的应用场景都有哪些?
站群服务器主要是为了多个网站的托管和管理所设计的,可以通过集中管理和高效资源的分配,来支持多个独立的网站同时运行,让每一个网站都可以分配到独立的IP地址,避免出现IP关联的风险,用户还可以通过控制面板进行管理功…...

[大语言模型]在个人电脑上部署ollama 并进行管理,最后配置AI程序开发助手.
ollama官网: 下载 https://ollama.com/ 安装 查看可以使用的模型 https://ollama.com/search 例如 https://ollama.com/library/deepseek-r1/tags # deepseek-r1:7bollama pull deepseek-r1:7b改token数量为409622 16384 ollama命令说明 ollama serve #:…...
华为OD最新机试真题-数组组成的最小数字-OD统一考试(B卷)
题目描述 给定一个整型数组,请从该数组中选择3个元素 组成最小数字并输出 (如果数组长度小于3,则选择数组中所有元素来组成最小数字)。 输入描述 行用半角逗号分割的字符串记录的整型数组,0<数组长度<= 100,0<整数的取值范围<= 10000。 输出描述 由3个元素组成…...