当前位置: 首页 > news >正文

汽车3D HMI图形引擎选型指南【2023】

在这里插入图片描述

推荐:用 NSDT编辑器 快速搭建可编程3D场景

2002年,电影《少数派报告》让观众深入了解未来。 除了情节的核心道德困境之外,大多数人都对它的技术着迷。 我们看到了自动驾驶汽车、个性化广告和用户可以无缝交互的 3D 计算机界面。 令人惊讶的是,虽然故事发生在 2054 年,但许多科幻想象的作品已经成为现实。 对于汽车和移动制造商和消费者来说,最令人兴奋的是 3D HMI 的快速崛起。

本文列举了汽车3D HMI可用的4中图形引擎:QT、Kanzi、Unity和Unreal Engine,并给出了图形引擎选择的一般性原则。

如果需要将你的3D模型转换成适合图形引擎的格式,可以使用NSDT 3DConvert这个在线3D格式转换工具:
https://3dconvert.nsdt.cloud

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中进行增删改&#xff08;SQL&#xff09;&#xff0c;完成消息发送 3. 在hotel-demo中完成消息监听&#xff0c;并更新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电脑的密码&#xff0c;可以看到成功。 3.测试 同理&#xff1a;如果B->A也需要免密登录&#xff0c;统一的操作。 大功告…...

HTTP/1.1协议中的请求报文

2023年8月30日&#xff0c;周三上午 目录 概述请求报文示例详述 概述 HTTP/1.1协议的请求报文由以下几个部分组成&#xff1a; 请求行&#xff08;Request Line&#xff09;请求头部&#xff08;Request Headers&#xff09;空行&#xff08;Blank Line&#xff09;请求体&a…...

攻防世界-Hear-with-your-Eyes

原题 解题思路 是一个没有后缀的文件&#xff0c;题目提示要用眼睛看这段音频&#xff0c;notepad打开文件&#xff0c;没什么东西。 加后缀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的第四天

目录 表格 基础表格 实例 条纹表格 实例 带边框表格 实例 有悬停效果的行 实例 黑色/深色表格 实例 黑色/深色条纹表格 实例 可悬停的黑色/深色表格 实例 无边框表格 实例 上下文类 可用的上下文类&#xff1a; 实例 表头颜色 实例 小型表格 实例 响应…...

喜报 | 再度中标南网项目!AR 开启电力远程运维新智慧

近日&#xff0c;中国南方电网官网发布《2023年南方电网数字平台科技 (广东)有限公司物资品控远程协助软件采购项目中标公告》&#xff0c;ALVA Systems 凭借 ALVA Rainbow 创新应用竞得此标。 随着相关技术的逐步成熟&#xff0c;基础问题远程化解决已经在工业领域广泛应用。 …...

3.使用IDE的优点

IDE是集成开发环境&#xff1a;Integrated Development Environment的缩写。 1、优点 使用IDE的好处在于&#xff0c;可以把编写代码、组织项目、编译、运行、调试等放到一个环境中运行&#xff0c;能极大地提高开发效率。 IDE提升开发效率主要靠以下几点&#xff1a; 编辑器…...

ShopXO商城系统文件上传0Day代审历程

Git仓库&#xff1a; https://github.com/gongfuxiang/shopxo简介&#xff1a; 两天攻防中&#xff0c;某政局内网横向发现多网段服务器&#xff0c;该服务器搭建了ShopXO商城系统(后来发现是开发临时搭建的&#xff0c;准备做二开用的)。结果花了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: 将元素会按照默认的布局方式进行显示&#xff0c;不会分为块状或行内元素。 overflow: vi…...

论文解读 | KPConv——点云上的可形变卷积网络

原创 | 文 BFT机器人 《KPConv: Flexible and Deformable Convolution for Point Clouds》是一篇发表于2019年的研究论文&#xff0c;作者为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制造业轻量级数据中台解决方案

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

解决外接显示器后Edge浏览器地址栏等变得很大的问题

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

k8s 启动和删除pod

k8s创建pod pod的启动流程 流程图 运维人员向kube-apiserver发出指令&#xff08;我想干什么&#xff0c;我期望事情是什么状态&#xff09; api响应命令,通过一系列认证授权,把pod数据存储到etcd,创建deployment资源并初始化。(期望状态&#xff09; 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 地址就可以访问了…...

【真题解析】系统集成项目管理工程师 2023 年上半年真题卷(综合知识)

本文为系统集成项目管理工程师考试(软考) 2023 年上半年真题(全国卷),包含答案与详细解析。考试共分为两科,成绩均 ≥45 即可通过考试: 综合知识(选择题 75 道,75分)案例分析(问答题 4 道,75分)综合知识(选择题*75)1-10 题11-20 题21-30 题31-40 题41-50 题51-60 …...

开始MySQL之路——MySQL存储引擎概念

一、存储引擎概念 MySQL数据库和大多数的数据库不同, MySQL数据库中有一个存储引擎的概念, 针对不同的存储需求可以选择最优的存储引擎。 ​ 存储引擎就是存储数据&#xff0c;建立索引&#xff0c;更新查询数据等等技术的实现方式 。存储引擎是基于表的&#xff0c;而不是基…...

ant-design 设置Form.Item中的input框的值的方法

ant-design 设置Form.Item中的input中的value值是不知道什么原因是无效的&#xff0c;所以有以下两种方法设置&#xff1a; 1.可以通过 initialValues 属性来为表单设置默认值。具体使用方法如下&#xff1a; 在表单最外层的 Form 组件上加入 initialValues 属性&#xff0c;…...

CS420 课程笔记 P6 - 游戏逆向中的虚拟内存

文章目录 IntroVirtual memoryExample!Static example Intro 在上个视频中&#xff0c;我们知道有些地址在你重进游戏时就会无效&#xff0c;有的有时有效&#xff0c;我们需要了解称为虚拟内存的东西 记住这些信息&#xff1a;当你双击打开 Squally.exe 游戏时&#xff0c;系…...

公信力不是儿戏:政府与非营利组织如何利用爱校对提升信息质量

公信力是政府和非营利组织成功的基础&#xff0c;而这种公信力大多来源于对外发布的信息的准确性和可靠性。在这个方面&#xff0c;“爱校对”展现了它的强大能力和实用性。以下我们将具体探讨这两种组织如何通过使用爱校对来提升他们的信息质量。 政府&#xff1a;公开与透明&…...

Linux内核源码分析 (B.1)内核内存布局和堆管理

Linux内核源码分析 (B.1)内核内存布局和堆管理 文章目录 Linux内核源码分析 (B.1)内核内存布局和堆管理一、Linux内核内存布局二、堆管理 一、Linux内核内存布局 64位Linux一般使用48位来表示虚拟地址空间&#xff0c;45位表示物理地址。通过命令&#xff1a;cat/proc/cpuinfo。…...

Python---函数

函数定义&#xff1a; """ def 函数名(传入参数):函数体return 返回值 """ 函数调用&#xff1a; """ 函数名(传入参数) """ 例子&#xff1a; # 不带参 def check():print("欢迎光临\n请进") che…...

Myvatis关联关系映射与表对象之间的关系

目录 一、关联关系映射 1.1 一对一 1.2 一对多 1.3 多对多 二、处理关联关系的方式 2.1 嵌套查询 2.2 嵌套结果 三、一对一关联映射 3.1 建表 ​编辑 3.2 配置文件 3.3 代码生成 3.4 编写测试 四、一对多关联映射 五、多对多关联映射 六、小结 一、关联关系映射 …...

算法通关村第十四关:黄金挑战-数据流的中位数

黄金挑战-数据流的中位数 1.数据流中中位数的问题 LeetCode295 https://leetcode.cn/problems/find-median-from-data-stream/ 思路分析 中位数的问题&#xff0c;我们一般都可以用 大顶堆小顶堆 来求解 小顶堆&#xff08;minHeap&#xff09;&#xff1a;存储所有元素中…...

【2023集创赛】国家集创中心杯三等奖:不对称轻失配运算放大器

本文为2023年第七届全国大学生集成电路创新创业大赛&#xff08;“集创赛”&#xff09;国家集创中心杯三等奖作品分享&#xff0c;参加极术社区的【有奖征集】分享你的2023集创赛作品&#xff0c;秀出作品风采&#xff0c;分享2023集创赛作品扩大影响力&#xff0c;更有丰富电…...