3d开车模拟游戏
萧箫 发自 凹非寺
量子位 | 公众号 QbitAI
一位小哥耗时16个月打造的3D版赛车游戏,这两天忽然火了起来。
只需一个浏览器,就能驾车从森林、海滩,“无缝切换”到广袤的沙漠甚至平原:
![](https://p0.ssl.img.360kuai.com/t01d0cd016ed1dcb0c6.gif)
无论春夏秋冬还是白天黑夜,也无论你用的是电动汽车、自行车(?)还是公共汽车:
甚至不想开的时候,还可以开启自动驾驶模式,感受一波“AI飙车”的快乐。
![](https://p0.ssl.img.360kuai.com/t01bb8038f882f8b154.gif)
△甚至有“自”行车&自动驾驶小巴
据小哥表示,这个名叫Slow Road的3D赛车游戏没有用到任何传统引擎,而是基于JavaScript编写的,无需登录就能直接在浏览器上运行。
要是电脑发出了吃力的声音,稍微更改一下渲染配置就能搞定。
网友们也是嗨得不行:此情此景怎能少得了经典BGM逮虾户(Deja Vu)
![](https://p0.ssl.img.360kuai.com/t012f8cf76204549ddc.jpg)
△作者回复:我写代码时听的是10小时沉浸版
还有网友回忆起了自己几十年前做过的3D赛车游戏,这波属实“爷青回”了:
![](https://p0.ssl.img.360kuai.com/t0133e96b392c792c32.jpg)
来看看它究竟是怎么实现的。
基于Javascript而非传统引擎搭建
与大多数3D赛车游戏采用Unity3D、UE等传统引擎不同,Slow Roads是基于JavaScript编写的。
具体来说,它采用了一个名叫Three.js的开源框架,相当于一个能实现3D效果的JavaScript库,基于原生WebGL运行,可以在大部分网页浏览器中搞定交互式2D/3D图形。
除了开头提到的随意切换地点、季节和天气以外,这个赛车游戏也可以随意切换各种车型和视角。
![](https://p0.ssl.img.360kuai.com/t010110915be4f04747.gif)
此外,考虑到不同电脑对浏览器的适配,这款赛车游戏还给出了不同级别的渲染设置,从“粗糙大色块”到更精细的树木和围栏都能生成。
要是有电脑显卡的话,还可以更改一下浏览器设置,给图形渲染加加速。
所以,这个赛车游戏中“任意变幻”的环境是如何生成的?
首先是生成环境地形。
小哥采用了类似柏林噪声(Perlin noise)的自定义算法,来生成环境高度图(Heightmap,用于生成三维地形的图像),随后进行简单修改让山景看起来更逼真。
柏林噪声,Ken Perlin发明的自然噪声生成算法,经常用于在游戏和特效中生成随机内容,包括火焰、云彩、奇形怪状的岩石以及树木和大理石表面等。
![](https://p0.ssl.img.360kuai.com/t01eda4a4a430ea9f29.jpg)
△高度图,图源维基百科
随后是制作赛道。
选择地图上一个不太陡峭/凹陷的地方作为起点后,选择一个方向并测量周围高度图,以坡度最缓的路线作为道路中线,并给每个点注释上元数据,包括道路宽度、曲率等。
值得注意的是,如果赛道铺到一半出现“打结”的情况,也就是铺到一半撞到了一起,一定要想办法解决。这也是道路铺设最难的地方之一:
![](https://p0.ssl.img.360kuai.com/t0165d3911e3dcb0f4a.jpg)
△车在岛上狂转
接下来就是渲染环境了。
从图中来看,整体环境被分成了很多个分辨率10m的大型网格,最大视距1km²;靠近道路时,每个网格又会被分成5×5的较小网格。
越接近道路中线,渲染越精细,最终道路高度和底层环境高度之间会进行插值,尽量让它保持“无缝衔接”。
当然小哥表示,这种衔接并不是“真·无缝”的,但通常看不出来。
![](https://p0.ssl.img.360kuai.com/t01b5a1c497b6f8753c.jpg)
最后就是整个环境的渲染了,这里面也有一些小细节:
包括地面和悬崖纹理、基于柏林噪音做草色变化,以及给树木等植被加上简单阴影、在湖泊周围渲染更多树等。
![](https://p0.ssl.img.360kuai.com/t01dbd775e9f4b76e24.jpg)
除了环境之外,就是一些基础物理学的配置了,包括重力、表面摩擦力和动力学计算等。
不过为了节省性能,小哥忽略了提示牌和树木的碰撞。
此外,他也采用了更“平和”的电动汽车作为核心赛车手,因为这样一来就不需要考虑齿轮或RPM等部件,而音频和物理特性也更容易编写了。(小哥称:内燃机正逐渐过时!)
当然,随着这款游戏的关注度上升,他表示后续还会进行更多优化。
未来支持手柄和汽车模拟器
随着人们对这款游戏的好奇度提升,小哥也着重解答了几个热点问题。
例如,采用JavaScript编写游戏的原因,是因为小哥想改变人们对浏览器的“刻板印象”,它可以做到比查资料更广泛的事情,甚至还能更好地对游戏性能进行优化。
不过,目前这款游戏还没有开源。小哥表示,后续可能会开源部分子系统,如图形MOD接口等。
![](https://p0.ssl.img.360kuai.com/t018b1427a04bd6967a.jpg)
对于这款游戏的未来,小哥也立下了几个flag,包括在环境上,开发更多的越野地点、加入更多环境细节,包括建筑、动物、植物阴影、灯光效果等;
赛车上,加入更多的赛车皮肤和车辆类型;天气上,细化天气类型(下雨、下雪、刮风等),也进一步改善已有天气的效果;
功能上,将来会加入竞争模式和全球排行榜(包括限时竞速、比拼距离等),同时对系统进一步进行优化,未来适配手柄、赛车模拟器等。
你做好上班摸鱼的准备了吗?(手动狗头)
玩耍地址:
https://slowroads.io/参考链接:
[1]https://twitter.com/anslogen[2]https://news.ycombinator.com/item?id=33305234[3]https://anslo.medium.com/slow-roads-tl-dr-a664ac6bce40[4]10小时版逮虾户:https://www.youtube.com/watch?v=9ILQNSgE7mw— 完 —
量子位 QbitAI · 头条号签约
","force_purephv":"0","gnid":"986adc8d9ee65c391","img_data":[{"flag":2,"img":[{"desc":"","height":"396","s_url":"https://p0.ssl.img.360kuai.com/t01d0cd016ed1dcb0c6_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t01d0cd016ed1dcb0c6.gif","width":"480"},{"desc":"","height":"196","s_url":"https://p0.ssl.img.360kuai.com/t01bb8038f882f8b154_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t01bb8038f882f8b154.gif","width":"480"},{"desc":"","height":"463","title":"","url":"https://p0.ssl.img.360kuai.com/t012f8cf76204549ddc.jpg","width":"1080"},{"desc":"","height":"255","title":"","url":"https://p0.ssl.img.360kuai.com/t0133e96b392c792c32.jpg","width":"1080"},{"desc":"","height":"273","s_url":"https://p0.ssl.img.360kuai.com/t010110915be4f04747_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t010110915be4f04747.gif","width":"640"},{"desc":"","height":"619","title":"","url":"https://p0.ssl.img.360kuai.com/t01eda4a4a430ea9f29.jpg","width":"1080"},{"desc":"","height":"608","title":"","url":"https://p0.ssl.img.360kuai.com/t0165d3911e3dcb0f4a.jpg","width":"1080"},{"desc":"","height":"551","title":"","url":"https://p0.ssl.img.360kuai.com/t01b5a1c497b6f8753c.jpg","width":"1080"},{"desc":"","height":"683","title":"","url":"https://p0.ssl.img.360kuai.com/t01dbd775e9f4b76e24.jpg","width":"1080"},{"desc":"","height":"604","title":"","url":"https://p0.ssl.img.360kuai.com/t018b1427a04bd6967a.jpg","width":"1080"}]}],"original":0,"pat":"art_src_3,fts0,sts0","powerby":"hbase","pub_time":1667642460000,"pure":"","rawurl":"http://zm.news.so.com/2118d106554e067078aa6846b381b03b","redirect":0,"rptid":"e9782af71e833784","s":"t","src":"量子位","tag":[{"clk":"kdigital_1:java","k":"java","u":""}],"title":"无缝切地图的3D赛车游戏火了,小哥花16个月打造,浏览器免费就能玩
和鲍竖4438有什么在高速公路上模拟驾驶的游戏? -
荆很晓19493621145 ______ 1. 高速驾驶模拟无限金币破解版,是一款在高速公路上驾驶车辆的模拟游戏,高速驾驶模拟 无限金币破解版拥有逼真的写实风格,非常惹人喜欢,丰富的关卡等你挑战,你需要驾驶着跑车完成一系列的任务,赚取更多的金钱; 2. 高速公路骑手...
和鲍竖4438有什么3D的赛车游戏玩啊? -
荆很晓19493621145 ______ 大众赛车 http://ol.2u.com.cn/1_73274.html 赛车:侠盗飞车 http://www.43-99.com/53/16763/跑跑卡丁车 http://www.7k7w.com/31/9629/越野车 http://www.43-99.com/53/9364/头文字D http://www.7k7w.com/53/9559/3D赛车 http://www.43-99.com/53/...
和鲍竖4438谁有学车换档真一点的3D游戏? -
荆很晓19493621145 ______ 《飚车》(CTRacer)是日本电子游戏产业巨头世嘉(SEGA)全力策划,由韩国新兴网络游戏开发商韩国现代数码娱乐公司(Hyundai Digital)开发制造的一款真正意义上的大型网络赛车游戏. 除了对于赛车竞速的追求,飚车还将城市生活、赛场风云融汇其中.完全模拟真实城市风光的游戏世界,完全模拟真实数据的车辆改装系统,完善的赛道竞技模式,令玩家感受游戏快感的同时,不由自主地游离于现实和游戏之间.
和鲍竖4438求用方向盘玩的模拟驾驶游戏 -
荆很晓19493621145 ______ 看了你的要求,感觉你是希望找一款模拟真实些的驾驶汽车游戏是吗.向你推荐: 《模拟驾驶2009》 【游戏介绍】 发动你的汽车,穿过一个虚拟的城市开始一段振奋人心的旅程.在《Driving Simulator 2009》游戏中,你需要掌握各种真实的...
和鲍竖4438想考驾照,有没有在路上模拟开车的游戏? -
荆很晓19493621145 ______ 电脑上可以模拟开车的但是要付款的哦,你不如到驾校去亲自驾驶学得实在,毕竟是人生安全重要.
和鲍竖4438模拟驾驶类游戏有哪些? -
荆很晓19493621145 ______ 像你所说的第一人称视角模拟驾驶类的游戏很少有带故事情节的,驾驶仿真度和体验度很高的倒是有几款,推荐给你 一、欧洲卡车模拟2,《Euro Truck Simulator》注重各个方面的真实性.在本游戏中,玩家甚至可以自定义卡车的排气效果;72个...
和鲍竖4438寻找一款好玩的模拟类驾驶游戏 -
荆很晓19493621145 ______ 无限驾驶 下不了里可以装盘 或者尝试无限驾驶二
和鲍竖4438帮忙介绍几个好玩的赛车游戏!!! -
荆很晓19493621145 ______ 你是pc端吧? 《模拟试驾》挺有平民感……就是在路上开车. 【游戏封面】 中文名称:模拟驾驶 2009 英文名称:Driving Simulator 2009 发行时间:2009年8月1日 游戏类型:竞速 游戏语言:英文 开发厂商:Astragon Software GmbH...
和鲍竖4438推荐几个好玩的地铁模拟驾驶类游戏 -
荆很晓19493621145 ______ 只玩过 世界地铁 系列,出了三辑, 纽约(和拓补包) 按键设置好还是能玩的,不过网上没有,要自己弄了 柏林U7 40座左右车站,全程要开一个小时左右,太累 伦敦 据说有了很大改进,ai更丰富,不过很耗cpu、显卡,我这里很卡,没怎么玩 如果遇到开不动车什么的主要是按键没设置好,或流程不对,制动后tab解锁才能启动 u7和伦敦verycd上都有,玩的人较多,有问题可以去参考参考, 下载的话硬盘版比较快,不知道质量有没有压缩掉,iso基本没速度
和鲍竖4438怎么样才能开车呀,我是个新手,希望大家详细的回答!...
荆很晓19493621145 ______ 我在这里发一些文字性的东西,你看完以后就可以学会开车????? 我相信,爱因斯坦要是还在世,他那200多的智商也没有办法做到... 我找了一个软件,看看能不能起一点小作用吧,学车还得去架较,起码都找人教吧. 最近发现一款...