汽车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

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

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

相关文章

数字人创作+SadTalker+GTX1080

https://github.com/OpenTalker/SadTalker 开源项目 SadTalker模型是一个使用图片与音频文件自动合成人物说话动画的开源模型,我们自己给模型一张图片以及一段音频文件,模型会根据音频文件把传递的图片进行人脸的相应动作,比如张嘴&#xf…

02-系统篇-内存分布

一.进程中的内存分布 进程是应用程序运行的单位,进程在内存中运行时,各个部分分布的情况如图。 1.栈内存(statck) 特点:后进先出 系统一般会对栈的大小进行限制,可以用命令进行查看,如下,700是进程号,栈被…

Python学习 -- Math模块和Random模块

math 模块提供了许多数学函数,用于执行各种数学运算。以下是一些常用的 math 函数以及相应的示例代码: math.sqrt(x): 计算平方根。 import math x 25 square_root math.sqrt(x) print(f"√{x} {square_root}") math.pow(x, y): 计算 x …

机器学习(吴恩达第一课)

课程链接 文章目录 第一周1、机器学习定义2、监督学习(Supervised learning)1、回归(Regression)2、分类(Classification) 3、无监督学习(Unsupervised learning)4、线性回归模型5、代价函数6、梯度下降(Gradient descent)1、学习率2、用于线性回归的梯度下降 第二周(多维特征…

W5500-EVB-PICO进行MQTT连接订阅发布教程(十二)

前言 上一章我们用开发板通过SNTP协议获取网络协议,本章我们介绍一下开发板通过配置MQTT连接到服务器上,并且订阅和发布消息。 什么是MQTT? MQTT是一种轻量级的消息传输协议,旨在物联网(IoT)应用中实现设备…

MATLAB中mod函数转化为C语言

背景 有项目算法使用matlab中mod函数进行运算,这里需要将转化为C语言,从而模拟算法运行,将算法移植到qt。 MATLAB中mod简单介绍 语法 b mod(a,m) 说明 b mod(a,m) 返回 a 除以 m 后的余数,其中 a 是被除数,m 是…

数字孪生与GIS:智慧城市的未来之路

数字孪生和地理信息系统(GIS)是两个在现代科技中崭露头角的概念,它们的融合为智慧城市项目带来了革命性的机会。本文将解释数字孪生为何需要融合GIS,并以智慧城市项目为例进行说明。 数字孪生是一种虚拟模型,它精确地…

行军遇到各种复杂地形怎么处理?

行军遇到各种复杂地形怎么处理? 【安志强趣讲《孙子兵法》第30讲】 【原文】 凡军好高而恶下,贵阳而贱阴,养生而处实,军无百疾,是谓必胜。 【注释】 阳,太阳能照到的地方。阴,太阳照不到的地方。…

【Python】从入门到上头— IO编程(8)

文章目录 一.IO编程是什么二.文件读写1.读取文件2.file-like Object二进制文件字符编码 3.写文件file对象的常用函数常见标识符 三.StringIO和BytesIO1.StringIO2.BytesIO 四.操作文件和目录五.序列化和反序列化1.pickle.dumps()2.pickle.loads()3.JSON 一.IO编程是什么 IO在计…

vue3 搭配ElementPlus做基础表单校验 自定义表单校验

<script setup> import { ref, reactive } from vue// 表单元素 const dom ref(null) // 校验规则 const rules {name: [{ required: true, message: 请输入活动名称, trigger: blur }],//校验手机号格式phone: [{ required: true, message: "请输入电话", t…

React 中的 ref 如何操作 dom节点,使输入框获取焦点

聚焦文字输入框 .focus() 获取焦点 当用户点击按钮时&#xff0c;handleClick 函数会被调用&#xff0c;从而将焦点聚焦到文本输入框上。 // 焦文字输入框 import { useRef } from "react";const FocusForm () > {const inputRef useRef<any>(null);func…

ITIL重大事件管理综合指南

什么是ITIL中的重大事件 重大事件是一个高影响力的紧急问题&#xff0c;通常影响整个组织或其主要部分。重大事件几乎总是导致组织的服务变得不可用&#xff0c;从而导致该组织的业务受到打击&#xff0c;并最终影响其财务状况。重大事件可以通过两种方式影响组织的服务&#…

Leetcode Top 100 Liked Questions(序号198~234)

​198. House Robber ​ 题意&#xff1a;你是一个强盗&#xff0c;你要去抢劫&#xff0c;每个房子都有特定金额的钱&#xff0c;但是不能拿相邻的房子的钱 我的思路 有点像动态规划&#xff0c;但是首先把每个结点空一格的后缀和得到&#xff0c;2n 之后从(in-1;i>0;i…

macos 不支持svn安装

macos 10.13可能不支持svn命令,所以要安装 xcode-select --install 弹窗在线安装失败的话只能手动下载安装 打开:Sign In - Apple 搜索Command Line Tools (macOS 10.13) 下载9.4.1版本直接安装后即可

线性表之-单向链表(无头)

目录 什么是单向链表 顺序表和链表的区别和联系 顺序表&#xff1a; 链表&#xff1a; 链表表示(单项)和实现 1.1 链表的概念及结构 1.2单链表(无头)的实现 所用文件 将有以下功能&#xff1a; 链表定义 创建新链表元素 尾插 头插 尾删 头删 查找-给一个节点的…

快速学会git版本管理——上传gitee仓库

首先在gitee右上角有一个新建仓库 创建之后打开自己想要上传的文件 右键打开 Git Bash Here 接下来会弹出git的窗口 首先先初始化仓库 用git命令 git init 然后用git add . 上传所有文件上传到暂存区(上一篇文章说过add是单个文件&#xff0c;add . 是所有文件) 没有显示错误 …

almaLinux 8 安装 xxdiff 5.1

almaLinux 安装 xxdiff XXdiff——比较和合并工具下载安装安装qt5 XXdiff——比较和合并工具 XXdiff是一款免费、强大的文件和目录比较及合并工具&#xff0c;可以在类似Unix的操作系统上运行&#xff0c;比如Linux、Solaris、HP/UX、IRIX和DEC Tru64。XXdiff的一大局限就是不…

【枚举区间+线段树】CF Ehu 152 E

Problem - E - Codeforces 题意&#xff1a; 思路&#xff1a; 感觉是个套路题 对区间计数&#xff0c;按照CF惯用套路&#xff0c;枚举其中一个端点&#xff0c;对另一个端点计数 对于这道题&#xff0c;枚举右端点&#xff0c;对左端点计数 Code&#xff1a; #include &…

无涯教程-Android Online Test函数

Android在线测试模拟了真正的在线认证考试。您将看到基于 Android概念的多项选择题(MCQ),将为您提供四个options。您将为该问题选择最合适的答案,然后继续进行下一个问题,而不会浪费时间。完成完整的考试后,您将获得在线考试分数。 总问题数-20 最长时间-20分钟 Start Test …

楼兰图腾——树状数组

在完成了分配任务之后&#xff0c;西部 314 来到了楼兰古城的西部。 相传很久以前这片土地上(比楼兰古城还早)生活着两个部落&#xff0c;一个部落崇拜尖刀(V)&#xff0c;一个部落崇拜铁锹(∧)&#xff0c;他们分别用 V 和 ∧ 的形状来代表各自部落的图腾。 西部 314 在楼兰古…