服务器3D场景建模(二):Physx与PVD

建模思路

目前流行的几大物理引擎库均可以用来做服务器端的3D场景建模。

这里选择使用physx。因为untiy3d内置的物理引擎也是physx。减少学习沟通成本。

通常服务器3D场景建模的运作方式有种:

  1. 服务器通过3D物理引擎建模静态3D场景;并围绕射线检测,来检查是否碰撞、是否可行走等等。从而达到服务器直接支持3D世界的玩法

  2. 服务器通过3D物理引擎建模静态3D场景;并在场景内创建可以控制的刚体,每帧实时计算模拟场景。从而达到服务器直接支持3D世界的玩法

性能问题

服务器3D场景建模的概念,很久就有。真正用上的不多。主要原因就是性能方面的考虑。

而从另外一方面来看:

  1. 基于防外挂的需求,为了能满足某些玩法,不得不在服务器进行3D场景建模

  2. 目前的服务器架构上流行的可扩容特性,为服务器同时承载人数上提供了基础支持。

从这2方面来看,服务器3D场景建模是可以尝试的。

Physx

Physx是一个很好的3D物理引擎库,有非常好用的API接口。

它的代码是免费发放的。上官网,注册账号,加入它的git组织。即可拉取代码。

PVD

PVD, PhysX Visual Debugger 通过它可以做Physx代码调试。

在本系列1中提到的使用PyOpengl来做调试,也是可行的,不过会稍微麻烦点。目前本人遇到的主要问题是,PyOpengl性能有点低,画几百个物件就加载过程时间太久。(显然这对服务器程序来说,是个不小的坑,慎入!)

Physx封装代码实作

本人在git上实现了一个Physx封装的库,尚在继续完善中:
https://github.com/fananchong/PhysxWrap

你可能感兴趣的:(服务器3D场景建模)