当前位置: 首页 > 编程日记 > 正文

2097352GB地图数据,AI技术酷炫渲染,《微软飞行模拟器》游戏即将上线

整理 | 若名

出品 | AI科技大本营(ID:rgznai100)

“只要是真实存在的地方,你都能抵达。”
作为即将成为第一款将整个地球化作虚拟世界来供玩家玩的游戏,微软的《微软飞行模拟器》(Microsoft Flight Simulator)游戏地图利用卫星和无人机系统对整个地球进行了扫描,只要在现实当中真实存在,玩家就能在游戏中去到想去的目的地。
据称,游戏地图的数据大小将是 2PB(1PB=1048576GB),允许玩家通过在线模式、离线模式以及预载模式体验。
最近,《微软飞行模拟器》最新新的X019版预告视频放出,很多网友都被画面吸引,表示要迫不及待想体验一番。微软也宣布将与多家航空航天企业进行合作,首批宣布的合作伙伴包括空客、波音、CubCrafters、Diamond Aircraft Industries、、ICON Aircraft、Daher、Robin Aircraft、Textron Aviation等。2020年,《微软飞行模拟器》游戏将正式面世。
在此之前,先来一波观感怡人的 2D 平面图过过眼瘾。
开发人员用了各种策略来创建一个虚拟星球。为了更精细地重现全球 400 个城市的 3D 外观,《微软飞行模拟器》利用高分辨率的镜头进行测量扫描。
值得一提的是,开发人员使用 AI 渲染工具来微调 3D 图像并填补其空白,范围包括偏远的地形到 Bing 图片中被遮盖的建筑物。
除了静态地景外,天气的模拟也很逼真。在 PC 单机上模拟天气,能够把云、雨、闪电、气流逼真呈现。
他们还深入研究了阴天如何散射光,如何通过多层水分构建有云的天气,以及这些云如何反射和折射光。比如当你恰好触发了飞行模拟器的设置,在虚拟的西雅图上空飞行时,就会看到一个双彩虹在阵雨中发亮。
除了光线效果,游戏世界中的硬件物体,如驾驶舱、飞行摇杆、踏板、操作面板、眼球追踪仪都有着非常逼真的呈现。
很多玩家可能担心游戏时遇到带宽方面的挑战。别担心,《微软飞行模拟器》可以最大限度地利用可用的连接,甚至通过基于真实数据的离线模拟模式,以及在硬盘上预先缓存数据的功能来让玩家继续享受游戏。
对了,这款游戏不光可以自己玩,也会提供多人游戏的选项。
别看这项游戏很新潮,实际上追溯其历史渊源,微软模拟飞行是微软公司历史最悠久的项目,甚至比 Windows 操作系统的历史还要早三年。
《微软模拟飞行》从发行到现代已经经过了历代的游戏版本。《微软模拟飞行1.0》里内设一架飞机及一个机场;《微软模拟飞行5.0》是 3D 世界,增加了建筑物;《微软模拟飞行2000》增加了 GPS 功能,方便玩家定位;《微软模拟飞行10》大幅度改善了游戏图象质素,首度增加 CRJ 和 A320 民航机,在豪华版加设大量小型飞机,内设超过 24 个任务,和过 30 个高精细度机场和城市......
作为微软经典飞行模拟器游戏重启之作,《微软飞行模拟器》由Xbox Game工作室与《瘟疫传说:无罪》的开发商Asobo工作室联合开发。
根据官方所提供的数据,游戏中包含全球 400 座城市与其余 200 万座聚落的完整道路与建筑,超过 48000 座大小机场都可以起降,有15亿栋建筑物,最高海拔至65000英尺的气象信息,云层参数多达 32 项,而每架飞机的受风物理计算点高达 1000 多处。据称,在这款游戏的开发过程中,使用到的地表数据总量高达 70PB。

要达到真实的飞行体验,拥有令人惊叹的游戏画面与环境,除了要有庞大的数据资源,还需要强大技术的加持。除了全球城市的建模数据库,《微软飞行模拟器》游戏主要使用了 Bing Maps 的全球卫星画面以及微软的 Azure AI 引擎。
在游戏当中,每像素的分辨率等同 30~5 公分的真实卫星画面,以此为基础成为贴图材质;接着通过 3D 建模补齐了所有地貌与建筑物的外观,而树木、草地、砂土等细节则由 AI 运算补齐。
微软宣称,前两项技术的云端数据量就超过 2PB,一般玩家的计算机容量根本无法负荷。因此,他们使用了动态串流技术,使得网络带宽越大、细节就越完整。当然,通过 AI 运算与串流技术,制作团队将贴图材质等容量降到最低,最终实现了游戏的脱机预载模式。
如此来看,《微软飞行模拟器》游戏将让很多人足不出户就能环游世界的梦想成为现实,未来如果结合 VR,它还将使人们获得更好的沉浸式体验。更重要的是,或许我们也能期待这款游戏能为灾后重建、文物建筑修复提供帮助,也能记录这个星球的历史变迁。
最后,献上为这款游戏制作的非常燃的预告片。


很多网友都说要攒钱买 Xbox 或者高硬件配置的 PC,还担心 2080 的显卡都扛不住......

(*本文为AI科技大本营整理文章,转载信联系1092722531


精彩推荐



开幕倒计时15天|2019 中国大数据技术大会(BDTC)即将震撼来袭!豪华主席阵容及百位技术专家齐聚,15 场精选专题技术和行业论坛,超强干货+技术剖析+行业实践立体解读。6.6 折票限时特惠(立减1400元),学生票仅 599 元!

推荐阅读
  • 用Go重构C语言系统,这个抗住春晚红包的百度转发引擎承接了万亿流量

  • 日均350000亿接入量,腾讯TubeMQ性能超过Kafka

  • 从基本组件到结构创新,67页论文解读深度卷积神经网络架构

  • MobileNets进化史

  • 假如有人把支付宝存储服务器炸了

  • 小米 9 年,雷军开启 AIoT 与 5G 超级互联网时代

  • 揭秘支撑双 11 买买买背后的硬核黑科技

  • 智链万源CEO董宁:企业数字化建设迫在眉睫 | 链人物

  • 他的公司1年令比特币暴跌数次,上榜福布斯捐10亿美元的跨界传奇

  • 你点的每个“在看”,我都认真当成了AI

相关文章:

开源库nothings/stb的介绍及使用(图像方面)

GitHub上有个开源的stb库,Star数已过万,地址为https://github.com/nothings/stb,为何叫stb,是用的作者名字的缩写Sean T. Barrett。此库仅包含头文件,除stretchy_buffer.h外,其它所有文件以前缀stb开头&…

git stuff

git stuff trick git bash 无法标记复制解决办法 git bash窗口左上角图标点击,选择属性->选项->快速编辑模式 确定就ok了 Usual Commands 创建分支git branch branch-namegit push origin branch-name 删除分支git branch -r -d origin/branch-name 删除远程分支git push…

swift3.0之闭包

Swift 相比原先的 Objective-C 最重要的优点之一,就是对函数式编程提供了更好的支持。 Swift 提供了更多的语法和一些新特性来增强函数式编程的能力,本文就在这方面进行一些讨论。 Swift 概览 对编程语言有了一些经验的程序员,尤其是那些对多…

Linux下gdb attach的使用(调试已在运行的进程)

在Linux上,执行有多线程的程序时,当程序执行退出操作时有时会遇到卡死现象,如果程序模块多,代码量大,很难快速定位,此时可试试gdb attach方法。 测试代码main.cpp如下,这里为了使程序退出时产生…

一行Python代码能实现这么多丧心病狂的功能?(代码可复制)

最近看知乎上有一篇名为《一行 Python 能实现什么丧心病狂的功能?》(https://www.zhihu.com/question/37046157)的帖子,点进去发现一行Python代码可以做这么多丧心病狂的功能!整理了一下知乎上这篇文章的内容&#xff…

一步一步写算法(之图结构)

原文:一步一步写算法(之图结构) 【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 图是数据结构里面的重要一章。通过图,我们可以判断两个点之间是不是具有连通性…

FFmpeg中可执行文件ffprobe用法汇总

从https://ffbinaries.com/downloads 下载最新的4.1版本的Windows 64位FFprobe,FFprobe用于从多媒体流中获取相关信息或查看文件格式信息,并以可读的方式打印,FFprobe可以作为一个命令行程序单独使用。 通过执行以下命令将FFprobe信息重定位…

CocoaPods导入的库其头文件导入的方法

尽管CocoaPods使用十分方便,但其导入的第三方框架还是要经过几步操作,才能供项目使用; 第一步:导入库 1>-在终端进入项目的根目录; 2>-输入:touch Podfile,则项目文件夹会创建一个空的Podfile,这时,你可以将你想要导入的库写在里面.如: platform :ios, 6.0 pod RESid…

Google、微软、阿里、腾讯、百度这些大公司在GitHub上开源投入排名分析 | CSDN原力计划...

扫码参与CSDN“原力计划”作者 | 村中少年来源 | CSDN原力计划获奖作品现在有越来越多的公司都参与了开源,其背后有各自的目的所在,姑且不予讨论。本文是从多个方面分析各大公司在开源上的投入情况。由于全世界绝大多数的开源项目都有发布到Github上&…

jquery源码解析:each,makeArray,merge,grep,map详解

jQuery的工具方法,其实就是静态方法,源码里面就是通过extend方法,把这些工具方法添加给jQuery构造函数的。 jQuery.extend({ ...... each: function( obj, callback, args ) { //$.each(arr , function(i,value){}),第三个参数用于…

swift实现提示框第三方库:MBProgressHUD

GitHud的下载地址是:https://github.com/jdg/MBProgressHUD/ 下载完成后,将MBProgressHUD.h和MBProgressHUD.m拖入已经新建好的Swift项目。因为使用的swift语言,所以拖入项目的时候会提示是否新建一个桥接objective-c与swift的文件&#xff…

这段Python代码让程序员赚300W,公司已确认!网友:神操作!

Python到底还能给人多少惊喜?笔者最近看到了这两天关于Python最热门的话题,关于《地产大佬潘石屹学Python的原因》,结果被这个回答惊到了:来源:知乎 https://www.zhihu.com/question/355880221笔者翻了翻那些回答&…

FFmpeg中可执行文件ffmpeg用法汇总

从https://ffbinaries.com/downloads 下载最新的4.1版本的Windows 64位FFmpeg,FFmpeg是一个快速的音频/视频转换工具,FFmpeg可以作为一个命令行程序单独使用。 通过执行以下命令将FFmpeg信息重定位到ffmpeg_help.txt文件中便于查看,其内容如…

下载Ext JS 5.1 gpl版本的方法

先进入官网:http://www.sencha.com然后在导航的Products中选择Sencha Ext JS,会看到以下页面:这时候不要单击Download按钮,而是要单击导航中的DETAILS,页面切换后,就可在底部看到GPL版本的下载按钮了&#…

对MBProgressHUD进行封装并精简使用

几个效果图: 以下源码是MBProgressHUD支持最新的iOS8的版本,没有任何的警告信息 MBProgressHUD.h 与 MBProgressHUD.m MBProgressHUD.hMBProgressHUD.m以下是本人在MBProgressHUD基础上封装的类,觉得部分的使用基于block ShowHUD.h 与 Show…

基于Hash的消息认证码HMAC简介及在OpenSSL中使用举例

HMAC(Hash-based Message Authentication Code):基于Hash的消息认证码,是一种通过特别计算方式之后产生的消息认证码(MAC),使用密码散列函数,同时结合一个加密密钥。它可以用来保证数据的完整性,同时可以用来作某个消息…

英特尔发布oneAPI软件计划及beta产品,面向异构计算提供统一可扩展的编程模型

近日,在2019年超级计算大会上,英特尔发布了一项全新软件行业计划oneAPI,助力充分释放高性能计算与人工智能技术融合时代多架构计算的潜力,同时发布了一个oneAPI beta产品。 英特尔oneAPI行业计划,为跨多种包括CPU、GP…

Mac下配置Maven

1.Java环境变量设置就不说。 但是配置Maven需要检查下Java环境变量的设置。需要检查JAVA_HOME环境变量以及Java命令 wanyakundeMacBook-Pro:Library wanyakun$ echo $JAVA_HOME /Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home wanyakundeMacBook-Pro:Librar…

UIAlertAction的用法

let alertController UIAlertController(title:"系统提示", message:"您确定要退出程序吗?", preferredStyle: .alert) let cancelAction UIAlertAction(title:"取消", style: .cancel, handler:nil) let okAction UIAlertAction(tit…

在Windows和Linux上编译gRPC源码操作步骤(C++)

gRPC最新发布版本为v1.23.0,下面以此版本为例说明在Windows和Linux下编译过程。 Windows7/10 vs2103编译gRPC源码操作步骤: 1. 需要本机已安装Git、CMake、Perl、Go、yasm; 2. 依次执行如下命令: git clone https://github.co…

这些算法工程师,他们真的是太难了!

现在的算法工程师真的是太难了!要让AI会看人眼都分辨不清的医疗影像数据又不够,还得用前沿技术好不容易学会看片,还要让AI会分析病理赋予AI诊断疾病的使命然后几十种模型,N次计算只给一张显卡Boss就问:你打算怎么做&am…

Java 汉子转拼音

1. 引入: pinyin4j-1.1.0 包; http://pan.baidu.com/s/1eQ8a874 2. 转换; private static String ChineseToPinyin(String name){String pinyinName"";char[] nameChar name.toCharArray(); HanyuPinyinOutputFormat defaultFormat new HanyuPinyinOutputFormat()…

Swift - 使用Alamofire通过HTTPS进行网络请求,及证书的使用

(本文代码已升级至Swift3) 我原来写过一篇文章介绍如何使用证书通过SSL/TLS方式进行网络请求(Swift - 使用URLSession通过HTTPS进行网络请求,及证书的使用),当时用的是 URLSession。本文介绍如何使用 Alam…

gRPC简介及简单使用(C++)

gRPC是一个现代的、开源的、高性能远程过程调用(RPC)框架,可以在任何平台运行。gRPC使客户端和服务器端应用程序能够透明地进行通信,并简化了连接系统的构建。gRPC支持的语言包括C、Ruby、Python、Java、Go等。 gRPC默认使用Google的Protocol Buffers&a…

YC中国被撤,陆奇独立运营个人新品牌「奇绩创坛」

整理 | Jane出品 | AI科技大本营(ID:rgznai100)近日,Y Combinator(以下简称 YC) 发布消息称,YC 将撤回 YC 中国业务与运营,这一品牌也将停止使用,YC的战略布局将调整重新…

shell 脚本逐行读取多个文件,并逐行对应

#!/bin/bashfor i in seq 448doaaased -n "$i"p num.txtbbbsed -n "$i"p text.txt/root/cooper/sms.pl $aaa $bbbdonenum.txt 记录了348个号码text.txt中记录了348个字段效果是取num.txt中第一行作为第一行参数 取text.txt中第一行作为第二个参数num.txt要…

iOS常用知识点1

多线程、特别是NSOperation 和 GCD 的内部原理。 运行时机制的原理和运用场景。 SDWebImage的原理。实现机制。如何解决TableView卡的问题。 block和代理的,通知的区别。block的用法需要注意些什么。 strong,weak,retain,assign&a…

美团BERT的探索和实践 | CSDN原力计划

扫码参与CSDN“原力计划”作者 | 杨扬 佳昊 金刚等来源 | CSDN原力计划作品*点击阅读原文,查看美团技术团队更多干货文章。背景2018年,自然语言处理(Natural Language Processing,NLP)领域最激动人心的进展莫过于预训练…

程序员的自我修养--链接、装载与库笔记:可执行文件的装载与进程

可执行文件只有装载到内存以后才能被CPU执行。 1. 进程虚拟地址空间 程序和进程有什么区别:程序(或者狭义上讲可执行文件)是一个静态的概念,它就是一些预先编译好的指令和数据集合的一个文件;进程则是一个动态的概念,它是程序运…

JDBC实例--工具类升级,使用Apache DBCP连接池重构DBUtility,让连接数据库更有效,更安全...

直接使用JDBC访问数据库时,需要避免以下隐患: 1. 每一次数据操作请求都需要建立数据库连接、打开连接、存取数据和关闭连接等步骤。而建立和打开数据库连接是一件既耗资源又费时的过程,如果频繁发生这种数据库操作,势必会使系统性能下降。 2.…