游戏引擎简单的说就是独立于外部资源,具有一定完整功能的底层函数集。
网络游戏引擎主要由图形引擎、网络引擎、物理引擎、人工智能引擎、声效引擎等组成。以下为几种较流行的图形与网络引擎
1、图形引擎
(1)OGRE图形引擎:一款开源的图形渲染引擎,只有图形部分。
(2)RenderWare图形引擎:国际著名的商业游戏引擎。功能全面,全部用C写成。
该引擎较成功,涉及了游戏开发各个方面(除了网络),图形模块最大,为了适应跨平台特性,采用了组件化的插件式结构。
2、网络引擎
网络引擎封装了操作系统本身的并发和进程间通信机制,国外常用的引擎有:
(1)DirectPlay网络引擎:是微软的DirectX软件开发工具包中的多玩家组件。
采用抽象化通信方式,高度封装了底层的网络通信,由于大规模的工程需要多个服务器,并且需要对通信流进行级别较低的控制。而DirectPlay隐藏了太多的功能,所以可能不太适合MMORPG游戏的开发。
(2)TNL网络引擎:主要为了解决计算机网络中的三大不利因素:延迟、有限带宽和丢包。有着很好的稳定性。
(3)RakNet网络引擎:提供一组免费的网络API,可实现可靠的UDP通信和基于windows、Linux、unix系统的高层次网络编程。它不光解决了网络游戏一般的需求,还为网络游戏编程提供了一些额外的功能。
RakNet提供了两种类型的网络结构:P2P和C/S。并采用可靠方式的UDP方式通信。