BeamNG.drive是一款由BeamNG公司开发并于2013年首次发布的软体物理模拟游戏。作为模拟游戏,特别是物理模拟的粉丝,我早早就开始使用BeamNG.drive。我立即对崩溃的准确性和细节印象深刻,因为游戏拥有实时,软体动态物理结构,使用实时物理计算算法。结果是与各种物体和其他景观障碍物相互作用时惊人的车祸。

没错, 我最近对游戏的关注度越来越多了,尤其是3d物理引擎,以及gpu加速技术非常有意思,beamNG又是我见过的物理引擎做得最好的一款,非常有必要写一篇文章来评鉴一番,不过可能大多数是用户体验上的评论,技术层面上不多。。

游戏简介+基本操作

有两种主要模式可供选择 - Freeroam和Scenarios。在大多数情况下,大多数人发现自己最后都只玩freeroam,因为这是你可以自由地定制和试验游戏,地图和车辆的地方。

哈哈哈,限制自由度的主线剧情‘Scenarios’想必都被遗忘了吧。。

您首先选择12个包含的地图中的一个,其范围从简单的空网格到East Cost USA,再到Jungle Rock Island到美国犹他州。每张地图都提供了独特的景观,包括不同的障碍,山丘,环境,道路等。除了这些环境的美丽,它们每个都允许您以不同的方式与您的车辆进行实验。

一旦你选择了你的地图,你就会产生你的车辆,默认情况下,它是标准的皮卡车。如果您使用键盘+鼠标作为控制器,您会发现基本控件是用于加速,制动,转向的箭头键,并且可以使用鼠标或小键盘箭头控制相机。游戏提供两种驾驶模式 - 街机和自动/手动。当您加速,制动和倒车时,街机模式将为您提供所有换档功能,而自动/手动模式则可以像您在普通汽车中一样向您移动。

当你开始四处奔波时,你会注意到当你撞到东西时,你的车会受损。当然,这是游戏的重点!为了“重置”您的汽车,您可以按“R”键将其重置回您开始的位置。如果您已经走了一些路并且不想从初始位置重新启动,则可以使用Ctrl + R组合在当前位置重置车辆。这使您可以根据需要灵活地粉碎您想要的汽车。

要在汽车之间切换,只需使用Ctrl + E组合拉起车辆选择屏幕即可在车辆之间快速切换。在这里,您可以选择更换当前的车辆或生成新的车辆,同时保留当前的车辆。可以使用“Tab”键在多个车辆之间切换。这对于将汽车撞在一起非常有用。

从默认皮卡车到跑车到卡车的每辆车都以不同的方式处理,您可以真正感受到每辆车的重量和性能差异。这使您可以在设置场景和撞毁车辆时尝试无限数量的车辆设计和定制。其他功能,如慢速切换和改变游戏速度,让您真正看到并感受到崩溃的影响。

这包括基本控件和游戏元素,但我想提到游戏还兼容许多不同的控制器类型,包括方向盘和PlayStation / Xbox控制器。我强烈建议在这个游戏中使用一个控制器,因为只需使用一把钥匙来控制它就会对汽车的真实感觉非常敏感,你会想要利用游戏机控制器或方向盘的触发器/操纵杆来获得更好的效果游戏体验。

sandbox

当然,像这样的沙盒游戏允许许多不同的自定义。所有按钮都可以使用菜单在游戏中映射并进入控制区域。此外,大多数游戏控制器与游戏兼容,并且还可以使用游戏内菜单映射其按钮。就个人而言,我使用的是PlayStation 4的DualShock 4控制器,我的游戏在Windows 10上运行时立即被识别出来。

至于实际的游戏玩法,可以使用车辆配置菜单来定制每辆车。这包括从发动机一直到灯和保险杠添加和移除各种部件。此外,每种车辆都有调整选项,包括轮胎压力,前束和外倾角调整。

通过按F11键可以在附带的世界编辑器中打开每个地图,这样您就可以在地图上自定义任何想要的内容。这包括对象的移动和在地图上放置新对象。这非常适合在空栅格地图中设置场景或向现有地图添加其他对象。还可以从车辆菜单中快速添加一些更常见的对象,以便在游戏过程中快速放置,而无需打开World Editor。

最后,游戏现在包括mods,允许玩家下载并安装官方和非官方地图,车辆和其他mods到游戏中。

这是个彻彻底底的沙盒游戏,剧情性几乎为零,因此官方才会慷慨的提供mod接口,允许自由交换mod,当然这回牺牲dlc的机会

美丽的风景

BeamNG.drive物理引擎评鉴的更多相关文章

  1. Unity3D游戏开发初探—3.初步了解U3D物理引擎

    一.什么是物理引擎? 四个世纪前,物理学家牛顿发现了万有引力,并延伸出三大牛顿定理,为之后的物理学界的发展奠定了强大的理论基础.牛顿有句话是这么说的:“如果说我看得比较远的话,那是因为我站在巨人的肩膀 ...

  2. Verlet-js JavaScript 物理引擎

    subprotocol最近在Github上开源了verlet-js.地址为https://github.com/subprotocol/verlet-js.verlet-js是一个集成Verlet的物 ...

  3. 制作简单的2D物理引擎(一)——动力学基础

    一切的基础 点 在二维平面中,点$P$就是坐标$(x,y)$,点集就是一系列坐标的集合$\{P_1,P_2,...,P_n\}$,不过这个集合是有序的(顺时针). 向量 加减运算 $$\vec{P}\ ...

  4. 制作简单的2D物理引擎(零)

    最近发现了Github上的开源物理引擎项目Matter.js,对它很感兴趣,发现源码并不算长,算上注释大约1万行左右,值得剖析一番.Matter.js实现一个最小化的2D物理引擎,性能不错,故打算用C ...

  5. [原创]cocos2d-x研习录-第三阶 特性之物理引擎

    游戏物理引擎是指在游戏中涉及物理现象的逻辑处理,它用于模拟现实世界的各种物理规律(如赛车碰撞.子弹飞行.物体掉落等),让玩家能够在游戏中有真实的体验. Cocos2D-x中支持Box2D和Chipmu ...

  6. Bullet物理引擎在OpenGL中的应用

    Bullet物理引擎在OpenGL中的应用 在开发OpenGL的应用之时, 难免要遇到使用物理来模拟OpenGL中的场景内容. 由于OpenGL仅仅是一个关于图形的开发接口, 因此需要通过第三方库来实 ...

  7. 基于HTML5的WebGL结合Box2DJS物理引擎应用

    上篇我们基于HT for Web呈现了A* Search Algorithm的3D寻路效果,这篇我们将采用HT for Web 3D来呈现Box2DJS物理引擎的碰撞效果,同上篇其实Box2DJS只是 ...

  8. 基于HT for Web 3D呈现Box2DJS物理引擎

    上篇我们基于HT for Web呈现了A* Search Algorithm的3D寻路效果,这篇我们将采用HT for Web 3D来呈现Box2DJS物理引擎的碰撞效果,同上篇其实Box2DJS只是 ...

  9. Matter.js – 你不能错过的 2D 物理引擎

    Matter.js 是一个 JavaScript 2D 刚体物理引擎的网页.Matter.Engine 模块包含用于创建和操作引擎的方法.这个引擎是一个管理更新和渲染世界的模拟控制器. Matter. ...

随机推荐

  1. PHP5.3新特性

    1.首先对之前滥用的语法进行了规范 众所周知PHP在语言开发过程中有一个很好的容错性,导致在数组或全局变量中包含字符串不使用引号是可以不报错的,很多业余的开发者因为懒惰而产生的安全问题十分严重,之所以 ...

  2. 个人网站不输入www.直接domain.com访问不了,输入www.domain.com能访问

      网站访问跳转到/cgi-sys/defaultwebpage.cgi页面原因之一ip地址不对解决后,www.domain.com是可以访问了.但是直接domain.com去不能?   我记得刚开始 ...

  3. Android Fragment之间传递List数据

    要说的是在两个Fragment之间传递List数据,比如有个List<User>,以及传递字符串数据,比如testId,该如何从FragmentA传递到FragmentB呢? 下面这个例子 ...

  4. 工作总结 ModelState.AddModelError("ShiYiObject", "对象不能为空!"); 小知识

    // // 摘要: // 获取包含模型状态和模型绑定验证状态的模型状态字典对象. // // 返回结果: // 模型状态字典. public ModelStateDictionary ModelSta ...

  5. pythonl练习笔记——threading创建进程锁Lock()

    1 基本概述 采用threading.Lock()对象创建锁lock,即 lock = threading.Lock() 其相关方法主要有 lock.acquire() # lock the lock ...

  6. Python学习笔记014——生成器Generator

    1 生成器定义 在Python中,一边循环一边计算的机制,称之为生成器(generator). 生成器是一个迭代器. 含有yield语句的函数是生成器函数,该函数被调用时返回一个生成器对象(yield ...

  7. OGG_GoldenGate复杂参数定义(案例)

    2014-03-10 Created By BaoXinjian

  8. 信号的捕捉与sigaction函数

    一.内核如何实现信号的捕捉 如果信号的处理动作是用户自定义函数,在信号递达时就调用这个函数,这称为捕捉信号.由于信号处理函数的代码是在用户空间的,处理过程比较复杂,举例如下: 1. 用户程序注册了SI ...

  9. mysql 监控qps脚本

    mysqladmin -h172.16.200.43 -uroot -p status -i 1 #!/bin/bash mysqladmin -uroot -h172.16.200.43 -p'00 ...

  10. Python abs() 函数

    描述 abs() 函数返回数字的绝对值. 语法 以下是 abs() 方法的语法: abs( x ) 参数 x -- 数值表达式,可以是整数,浮点数,复数. 返回值 函数返回 x(数字)的绝对值,如果参 ...