0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

为什么说3D引擎是下一代互联网的“CAD”?

jf_00255370 来源:jf_00255370 作者:jf_00255370 2023-06-25 11:10 次阅读

3D引擎是什么?

听到“引擎”两个字,你可能首先会想到汽车引擎,为汽车提供动力的核心部件。如果没有引擎,汽车就只能是一个模型,它就无法跑起来。

3D模型也一样,我们用3DMax软件制作了一个非常逼真、精美的3D模型,还有光影和动画效果,甚至每一根发丝都是那么真实,但它是“死”的,不能与人互动。

pYYBAGSXrt-AGjL2AAhmprBYopA018.png

而3D引擎是让模型“活”起来。假设我们把3D应用或者3D游戏看作一辆正在奔跑的汽车,那3D引擎就是隐藏在内部驱动它去运行的底层技术。

这就是3D引擎的能力,它为3D模型赋予了“交互方法、物理定律、剧情脚本、AI智能”,让开发者不需要编写很多代码,就能让3D模型在“体”、“相”、“用”三方面逼近现实世界真实的人和物。

而且与汽车引擎不同,汽车没引擎不能跑,3D应用和游戏没引擎也可以运行,3D引擎更像“汽车工厂”,本质上是一种开发游戏和应用的软件。

实时渲染与离线渲染

讲到这里,需要给大家澄清一个概念,刚才说我们引擎是驱动3D应用和3D游戏在不断的运行,那有伙伴问了:电影院里我们也经常看到一些3D渲染的非常精美画面,那是不是也跟3D引擎有关系?

实际上电影画面大多数都是离线渲染出来的,跟我们今天聊的3D引擎不是一回事儿,3D引擎的渲染方式是实时的。

那离线渲染引擎和实时渲染引擎有什么本质上的区别呢?

实时渲染(Real-time Rendering)从字面的意思非常容易理解,就是我们要实时看到渲染之后的3D效果。

3D应用和3D游戏这种必须要满足与用户之间强交互,比如最常见的3D游戏《英雄联盟》,或者是一些带有交互的3D应用,比如智慧城市、智慧工厂等数字孪生项目,一般来说保证流畅运行至少24FPS:只有达到或者超过1秒钟播放24张连贯图像,才能人眼观看时没有卡顿的感觉。

离线渲染(Offline Rendering)是跟实时渲染相对应的,简单来说就是我们不需要实时的看到渲染效果的场景。最早电影每帧都要花上几天的时间来渲染,渲染完成后输出的一个完整的电影视频,给到院线去放映就可以了。

即使到今天硬件发展如此迅速,现在电影渲染依然是很慢的。比如电影《阿凡达》如果说在一个普通电脑上渲染,可能还要几百年的时间,随着云渲染技术的愈加成熟,直接在渲染农场也能很快完成电影渲染任务。

3D引擎与集成电路很像,都是内部复杂,使用起来反而没那么复杂。下面这个架构图就是实时渲染的游戏引擎架构示例,我们可以看到里面包括很多功能模块,实时渲染是一部分,还有声音模块、渲染模块、图形系统、UI 系统和内存管理。我们常用的数字孪生引擎里边也有相应的一些逻辑,比如数据储户、孪生体互相控制,还有物理仿真等等。

pYYBAGSXr92AHF3sAAb3ty-Mzhw860.png

3D引擎的发展历史

3D引擎的发展历史是3D游戏行业发展史的缩影。其实在三十多年前,电子游戏出现的早期,没有游戏引擎也能开发游戏,我们熟悉的玛丽兄弟、魂斗罗,都是程序员用简陋的代码编辑器,从零开始一行一行写代码开发出来的。

在红白机时代,游戏开发者如何既节省性能又增强游戏体验:

想必大家很熟悉超级马里奥这款游戏,下方展示两张图,我们可以看到左侧的画面中天空有白云,地上有草丛。大家有没有发现,白云和草丛长得很像,形状完全一样只是颜色发生了变化。

poYBAGSXr-yAbrtIAAaeT4v5xqU537.png

实际上,白云和草丛只用了一张图,游戏开发者为了保持游戏的性能节约内存,想尽各种办法。再比如右侧的怪物,它有一个不断左右脚不断向前踏步的动作,一会儿左边脚大,一会儿右边脚大,这样来回翻转来实现走动效果的。

那时,用户的期望很低,游戏的玩法也是很简单,所以允许使用这种作坊式的粗糙方法。后来游戏市场规模越来越大,用户要求越来越高,游戏玩法也越来越复杂,这就导致游戏的代码量变得非常巨大。

开发者们发现每次做游戏都一行行敲代码很耗时费力,所以能不能设计一套代码库?把最基础、最常用的功能都封装好,这样下次做新游戏就不用重新写代码了。

一开始,这种想法只是在一些游戏公司中的一小部分程序员中做尝试,程序员在开发某个功能时多留一个心眼,把未来可能重用的部分单独剥离出来。这种尝试就像荒野中微微闪现的星火,但这些零散的可重复利用的代码块还远远称不上“引擎”。

终于,1993年一个改变时代的大神出现了,他就是约翰·卡马克,ID Software的创始人。他设计了人类第一款3D引擎,带领团队在短短几年内就创造了《DOOM》《德军总部》《雷神之锤》《狂怒》等如雷贯耳的游戏大作。今天,卡马克被誉为FPS之父、3D游戏之父。

卡马克和其他程序员不同,他在动手开发游戏之前就先设计了一整套基础代码的框架和开发规范,并将所有的基础代码写好,还留下了方便调用的接口,比如图像渲染接口、3D加速接口、轨迹控制接口等,这样其他程序员在开发游戏时就可以像拼乐高积木一样,快速搭建出各种游戏应用,也使得游戏的规划更合理,功能更稳定,并且游戏开发者只需要将精力聚焦游戏规则本身,提升了游戏开发效率。而这个基础代码库就是最早的3D游戏引擎。

卡马克开发的世界上第一款3D游戏《德军总部3D》让人们看到了一个全新的游戏世界、感受到极为震撼的游戏体验。这款游戏一出现,一下子引爆了大量的3D游戏需求。后来有一家叫“乌鸦”的游戏开发公司找到卡马克,买下了这个游戏引擎的授权,于是乌鸦公司就用这款引擎快速开发了不少畅销游戏。游戏行业就此诞生了一个新的细分市场:3D游戏引擎。

直到今天,3D引擎行业发展进程中,伴随互联网时代变迁、软硬件技术更迭,行业本身出现了不同专业领域的发展方向,逐渐进化出不同领域的专用引擎。

3D引擎赋能创新应用

从2021年开始,元宇宙逐渐进入人们的视野,将成为下一代互联网的科技革命浪潮。而ChatGPT的爆火,让元宇宙的热度逐渐退去,人们开始冷静下来思考,元宇宙概念变得更加真实,与之相关的数字孪生、XR等产业也展现出更为实用的商业价值。

元宇宙造就了一种全新的、身临其境的数字世界,想要构建一个与现实世界高度贴合甚至是超越现实世界的“元宇宙”,前提需要创造一个与现实世界1:1还原的虚拟世界,关键核心点则是数字孪生,而数字孪生也是构建元宇宙的核心技术之一。

3D引擎所提供的渲染能力和实时交互是数字孪生所需的必要能力之一。开发数字孪生的引擎模拟现实世界自然法则越丰富越强大,就能越好地让数字孪生体身上的信息发挥作用,数字孪生体被3D引擎驱动,就如同现实物体被自然法则驱动。


因此3D引擎能力决定着数字孪生技术的成熟度,也决定了元宇宙在虚实映射与虚实交互中所能支撑的完整性。

可以预见到,3D引擎将成为下一代互联网的“CAD”。

如果说数字孪生开发离不开“3D引擎”

那该如何选择最合适的3D引擎?

3D游戏引擎能否开发数字孪生?

B/S架构和C/S架构如何比较?

常见的WebGL与WebGPU又有什么关系?

......

下一期我们再为大家详细讲解。

审核编辑黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • CAD
    CAD
    +关注

    关注

    17

    文章

    1038

    浏览量

    71551
  • 3D引擎
    +关注

    关注

    0

    文章

    6

    浏览量

    8116
收藏 人收藏

    评论

    相关推荐

    深圳工信局与华为签署战略协议,打造下一代互联网Net5.5G标杆城市

    在“全面智能化,跃升数智生产力”为主题的第21届华为全球分析师大会期间,深圳市工业和信息化局(深圳市工信局)与华为签署了战略合作协议,双方将共同推进深圳“极速宽带先锋城市”建设,打造世界先进、模式创新的下一代互联网Net5.5G标杆城市。
    的头像 发表于 04-20 09:51 553次阅读
    深圳工信局与华为签署战略协议,打造<b class='flag-5'>下一代</b><b class='flag-5'>互联网</b>Net5.5G标杆城市

    深圳工信局与华为签署打造下一代互联网Net5.5G标杆城市协议

    在“全面智能化,跃升数智生产力”为主题的第21届华为全球分析师大会期间,深圳市工业和信息化局(深圳市工信局)与华为签署了战略合作协议,双方将共同推进深圳“极速宽带先锋城市”建设,打造世界先进、模式创新的下一代互联网Net5.5G标杆城市。
    的头像 发表于 04-19 09:24 166次阅读
    深圳工信局与华为签署打造<b class='flag-5'>下一代</b><b class='flag-5'>互联网</b>Net5.5G标杆城市协议

    工业互联网实训是什么?工业互联网实训包括哪些?

    工业互联网实训是一种针对工业互联网领域的培训课程,旨在帮助学员掌握工业互联网的基本概念、技术、应用和发展趋势。通过实训,学员可以了解工业互联网的体系架构、平台功能、应用场景和解决方案,
    的头像 发表于 01-17 17:00 294次阅读

    华为武云骥:打造5.5G智能分组核心网,拥抱下一代移动互联网

    ,助力运营商业务创新,使能体验变现,拥抱下一代移动互联网。 武云骥发表主题演讲 在全球5G产业加速发展、5.5G时代到来的同时,移动互联网在业务形式、内容生成方式以及互联网技术上也在
    的头像 发表于 11-16 21:55 591次阅读

    工业互联网中的标识解析技术

    工业互联网的核心是数据的价值发现问题,但由于历史原因,“信息孤岛”现象在企业内部、企业之间大量存在。标识解析技术是目前可见解决“信息孤岛”、完成工业大数据汇聚以及在此基础上形成信息融合理解的关键技术。分析了标识解析在工业互联网领域应用要解决的几个关键环节,并且给出了进行工
    发表于 09-19 06:07

    下一代互联网国家工程中心主任刘东到访深圳市共熵产业与标准创新服务中心

    2023年9月15日,下一代互联网国家工程中心主任、澳门科技大学下一代互联网国际研究院院长刘东,国际数据空间协会(IDSA)中国能力中心副主任洪延青,澳门数字化发展协会理事张汉卓,华为
    的头像 发表于 09-15 21:45 693次阅读

    使用FPGA的下一代生物识别匹配引擎解决方案

    电子发烧友网站提供《使用FPGA的下一代生物识别匹配引擎解决方案.pdf》资料免费下载
    发表于 09-13 11:10 0次下载
    使用FPGA的<b class='flag-5'>下一代</b>生物识别匹配<b class='flag-5'>引擎</b>解决方案

    ARM马里图像信号处理器(ISP)对比表

    马里的互联网服务供应商家族为商业、工业和消费设备带来了下一代图像处理能力。 这些解决方案为各种物联网、汽车和嵌入式使用案例提供完整的互联网服务提供商解决方案,包括计算机视觉应用、智能显
    发表于 08-25 07:07

    如何将模块连接到互联网和Arduino板?

    我如何将模块连接到互联网和 Arduino 板
    发表于 06-12 06:12

    求分享8MPLUS-BB的3D cad模型吗?

    以下是我的请求列表, 你能分享 8MPLUS-BB 的 3D cad 模型吗? 我可以请求共享 8MPLUS-BB 的 Altium 设计文件吗? 我们已经采购了 EVM 板,并计划设计个外壳。
    发表于 06-05 13:37

    工业互联网 互联网区别 5g工业互联网是什么

    互联网的安全要求相对工业互联网较低。一般互联网上的信息流通采取的是“传输加密,存储明文”的方式,因为互联网上的信息基本上是非机密性的。但是在工业互联
    的头像 发表于 06-02 17:48 1905次阅读

    如何通过ESP8266共享互联网

    我正在尝试通过 OTA 上传代码。但我无法将所有 ESP8266 都连接到互联网,所以我选择 hc12 进行远程传输。但我对如何通过 ESP8266 共享互联网有疑问。 有任何可能通过 hc12 与 esp8266 共享互联网
    发表于 05-31 08:17

    在数字时钟项目中使用ESP8266,ISP失去互联网连接怎么解决?

    我在数字时钟项目中使用 ESP8266。我遇到的问题是我的 ISP 偶尔会断开互联网连接。该程序发现它仍然连接到 WiFi,但是当它尝试从互联网检索时间时,它会循环直到 ISP 重新建立互联网连接
    发表于 05-30 06:19

    如何将房间的窗户连接到互联网

    看看我是如何制作个很棒的项目的,我将房间的窗户连接到互联网
    发表于 05-22 07:40

    Kindle无法连接到互联网怎么解决?

    其他所有事情,只是无法连接到互联网。这很糟糕,因为我想读些新书。 我试过关闭飞行模式然后再打开,但没有用。(可能不会,但至少它证明问题不是飞行模式。) 我尝试通过按住电源按钮 20 秒来进行重置,但没有任何效果。 有人知道怎么修这个东西吗?
    发表于 05-15 08:37