[开发者心得] [相关介绍]物理模拟为何是在服务端进行?

[复制链接]
762 |0
本帖最后由 长大后我要当太空人 于 2023-4-26 10:28 编辑

一、什么是物理模拟
    物理模拟是指在计算机程序中模拟真实世界中物体的运动、力学特性和相互作用的过程。物理模拟通常用于游戏开发、动画制作、工程仿真等领域。比如想要做一个从空中向下落的球并弹起,就需要开启物理模拟。编辑器里想要开启物理模拟,在一个游戏物体里勾选物理模拟即可。
image.png


二、物理模拟为何是在服务端进行
    从性能方面来说,当游戏中需要处理大量的物理对象和物理效果时,物理模拟会变得非常耗费计算资源。在客户端进行物理模拟,会导致客户端的计算负载过重,甚至会导致客户端卡顿或崩溃,从而影响游戏的稳定性和流畅性。而服务端在数据中心或服务器房等专门的机房内部署运行,可以使用更高配置的硬件设备,例如更强大的CPU、GPU、内存、硬盘等,并且服务端通常是在数据中心内部署运行,这些数据中心具备更好的环境条件,例如更稳定的电力供应、更强的网络带宽和更好的数据安全措施等,加上很多服务器具备专用的运算能力,例如FPGA(现场可编程门阵列)和ASIC(专用集成电路)等。这些因素造就了服务器的计算能力强于客户端,所以从性能上来说,物理模拟应该放在服务端。
    从公平游戏方面来说,在不同的客户端设备上进行物理模拟,由于硬件配置的不同,可能会导致不同的游戏体验,从而影响游戏的公平性。并且客户端的数据容易被篡改,导致一些玩家使用外挂或作弊程序获得不正当的优势。而在服务端进行物理模拟,可以有效避免这种情况的发生,提高游戏的公平性和安全性。当然,这一点对于我们来说,还不是很关键。
    不过需要注意的一点是,如果开启了单机模式的话,物理模拟是在客户端进行的。
image.png

三、总结
    随着编辑器的成长,物理模拟会被更多的开发者所使用,到时候性能方面就需要大伙好好的监管监管。分享一个有趣的网站PhET:免费的在线物理、化学、生物、地理及数学仿真程序 (colorado.edu)








回复

使用道具 举报

热门版块
快速回复 返回顶部 返回列表