客户端引擎
场景支持:
支持超大无缝场景,单个场景最大允许尺寸为32平方公里;
支持超大无缝地形,支持远景地貌;
支持各种用作快速渲染大量场景内容的技术;
支持室内场景,支持室内场景Portal滤除技术;
所有场景渲染内容均提供有即时的LOD支持;
所有场景渲染内容均自动筛选后优先进行批量绘制,地形植被提供有专用的数据格式用作批量绘制;
采用四叉树对场景内容进行管理;
支持静/动态阴影;
支持动态光源和动态效果;
支持路径和地域划分;
场景中支持放置下列类型的对象:
实体对象
声音对象
光源对象
效果对象
室外背景对象
室外前景对象
屏幕对象
标记对象
用户自定义类型对象
模型支持:
分为vnm通用模型和vbm建筑物专用模型两类;
支持对象插槽和纹理插槽,可以用作支持人物换装、换特征和骑乘;
支持纹理皮肤;
支持骨骼/纹理/材质/光源/摄像机动画;
动画支持双通道播放,能够在单一模型上同时播放两个不同的动画;
支持粒子和条带系统;
支持内置光源和摄像机;
建筑物模型支持内置小摆件。
其它:
内置被改进的MyGUI界面引擎;
内置物理引擎;
内置场景内容档案包系统,所有场景内容均整合在档案包中读取;
内置支持全屏模式的中英文输入法管理器;
支持各种格式声音的播放,支持3D播放效果;
支持硬件设备的信息采集和管理;
支持客户端Lua脚本。
所需求的最低软硬件环境:
软件:WindowsXP,1GB以上内存,DirectX9.0C。
硬件:GeForce5200/ATI9550以上配置的显卡,至少256M显存,支持ShaderModel2.0。
服务器端引擎
游戏服务器由一系列的“服务”组成,支持基于多个服务建立单一游戏服务器的服务群组,群组中的服务可以位于不同的硬件设备、不同的操作系统、同一或者不同的进程中,具有位置无关性;
提供自适应网络框架及服务之间的通讯、协调及管理机制;
服务群组中的服务可以随时调整;
目前已经内置有以下基本服务:
网关服务基于动态加密算法与客户端进行通信;
路由服务支持将网络负载均衡分配到多个网关;
寻路服务支持基于世界设计器建立的场景导航图进行射线及A*寻路。
支持日志记录:
提供vdb速查表功能,用作封装游戏服务器的业务数据;
支持服务器端Lua脚本;
封装有MySql和Postgresql数据库的操作模块。
基本游戏框架
基本游戏框架用作基于Volcano引擎快速搭建一个大型MMORPG游戏,其中实现了一个MMORPG游戏所需要的绝大多数功能,具体可以参见所提供的DEMO,它目前包括以下部分:
客户端:
提供有以下游戏步骤的实现框架:
登录;
基于SRP6协议与游戏登录服务器之间进行安全验证;
选择欲登录游戏大区及服务器;
游戏人物新建/选择;
支持玩家人物特征调整;
游戏场景
支持玩家人物及NPC的水陆空三栖移动方式;
支持玩家人物及NPC的技能动作和相关动画与特效;
实现客户端“魔镜”用作与服务器端“魔镜”同步场景内容;
实现场景中的其它互动方式。
世界设计器插件:
用作将所有业务相关的数据和功能集成到世界设计器中,包括以下部分:
定义所有场景对象的游戏业务相关属性;
分离场景的客户端和服务器端数据;
提供vdb速查表的修正器,自动计算填写其中的某些数据,检查用户所填写表格的正确性。
服务器端:
登录服务
基于SRP6协议与玩家客户端之间进行账户验证,支持账户自动/手工冻结,支持各种用户权限。
世界服务
创建并管理所有场景实例,管理所有玩家人物会话。
场景服务
管理单一场景实:
管理其中的所有NPC对象,为它们建立各种状态机,提供Lua脚本接口。为场景中每个玩家人物建立一个对应的服务器端“魔镜”。
使用多线程更新技术;
使用局部活动区域更新技术,每次仅玩家所能看到的NPC得到更新。
周边工具集
世界设计器
能够完成一个大规模游戏场景的所有设计工作,包括:
地形、地形纹理、地表植被、所有类型的场景对象置入和编辑、场景路径和地域划分、对象分组等等。
支持各种后期处理,包括:
生成大规模场景地图的水陆双栖导航图和视线遮挡图等;
绝大部分编辑操作均支持撤消和重做,支持对象多选操作;
具体细节请参见相关文档和视频。
世界浏览器
用作查看所设计完毕的最终场景效果,并提供场景光照和静态阴影建立,地形纹理压缩等后期功能。
vnm通用模型、vbm建筑物模型输出插件
目前支持3dsmax 9.0到3dsmax 2012设计软件,用作从其中导出所设计模型到引擎所支持的格式,具体请参见模型设计手册。
模型浏览/修改器
查看或修改指定的模型,输出可以直接导入到世界设计器中的场景对象;
模型粒子和条带设计器;
用作设计vnm通用模型中的粒子和条带系统。