本发明涉及三维游戏的实现技术领域,特别是指一种网页版三维在线游戏的实现方法。
背景技术:
目前市场上现有的三维游戏(例如多人在线第一人称射击游戏)大都需要下载和安装大小为2g~8g的庞大客户端,才能运行,使用起来非常不方便,且推广成本高。截止到目前为止,全球市场上尚无直接能够在浏览器网页内运行的三维游戏。
在浏览器网页上直接运行三维游戏的难点如下:
1、网页是被当作内容或数据由浏览器来运行的,且浏览器并不直接支持三维运算等需要由显卡来完成的功能,然而三维游戏正是以这些三维运算工作为基础实现的。
2、虽然中央处理器也可以完成对应的三维运算等工作,但是因其工作效率低下,不能支撑实时互动型三维在线游戏。
3、可以开发浏览器的插件用以在浏览器中实现三维运算功能,但是由于插件需要运行安装,因此便丧失了打开网页就能直接运行游戏的功能。
4、虽然作为浏览器必备插件的flash插件在新版本中提供了操作显卡的通道,但是因其是浏览器软件的扩展件,所提供的接口十分初级和原始,导致可实现的功能受到大幅限制,一些基本功能的实现也由于工作效率低下问题变得十分困难。
技术实现要素:
本发明提出一种网页版三维在线游戏的实现方法,解决了现有技术中无法在浏览器网页中直接运行三维在线游戏的问题。
本发明的技术方案是这样实现的:
一种网页版三维在线游戏的实现方法,其方法步骤如下:
(1)通过浏览器从服务器中下载可运行的游戏内容到本地计算机;
(2)将下载的可运行的游戏内容交给本地计算机中运行的flash插件进行解析;
(3)flash插件将解析得到的可运行的软件代码注入到as3runtime中运行;
(4)所述可运行的软件代码加载并解析三维资源;
(5)所述可运行的软件代码将解析得到的三维资源交给cpu进行运算,运算结果即为最终渲染的中间数据;
(6)所述可运行的软件代码通过所述flash插件的显卡通道将上述中间数据组合成三维游戏内容展现在浏览器的渲染窗口中。
所述flash插件为11.0以上版本的flash插件。
所述浏览器为ie浏览器或360浏览器。
所述cpu为intel酷睿2四核中央处理器。
所述显卡的型号为hd7870。
本发明的有益效果为:通过本发明所述方法能够使三维游戏直接运行在浏览器自带的flashplayer环境下,真正实现打开网页即可玩游戏,无需下载、安装庞大的客户端,加载量小,使用方便,推广成本大大降低,用户渗透量大。
通过使用flash插件的显卡接口作为操作显卡的通道,独立开发大量的功能,为各种常用三维处理功能定制化使用这些不传统的接口来实现的方法,并进行效率优化,克服难点,使之能够满足实时互动的要求。针对一些无法完全使用上述接口实现的功能,结合cpu的处理能力,让显卡与cpu迂回配合,达到和客户端游戏类似的处理结果。
具体实施方式
下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
一种网页版三维在线游戏的实现方法,其方法步骤如下:
(1)通过浏览器从服务器中下载可运行的游戏内容到本地计算机;
(2)将下载的可运行的游戏内容交给本地计算机中运行的flash插件进行解析;
(3)flash插件将解析得到的可运行的软件代码注入到as3runtime中运行;
(4)上述可运行的软件代码加载并解析三维资源;
(5)上述可运行的软件代码将解析得到的三维资源交给cpu进行运算,运算结果即为最终渲染的中间数据;
(6)上述可运行的软件代码通过flash插件的显卡通道将上述中间数据组合成三维游戏内容展现在浏览器的渲染窗口中。
上述flash插件为11.0以上版本的flash插件。
上述浏览器为ie浏览器或360浏览器。
上述cpu为intel酷睿2四核中央处理器。
上述显卡的型号为hd7870。
上述这款游戏的引擎基于adobeactionscript3.0,它为mmo-fps游戏提供了即时渲染、地图切分、levelofdetails、状态数据包发送接收、raytracing、物理碰撞等核心功能。各个核心功能的说明如下:
即时渲染模块:提供最高60帧每秒的客户端渲染速度,支持可视范围内百万数量级多边形运算。
地图切分:将场景切分为互相独立的方形,实现运算上的优化,提供最佳的运行和渲染效率。
levelofdetails:根据物体的远近智能地改变贴图和模型的精度,可视范围内尽可能地减少cpu和显卡的负载,实现更高的运算效率。
状态数据包发送接收:基于tcp/ip协议的发包逻辑,将客户端的行为以一定频率发送向服务器端,服务器接收到各个客户端的状态包后进行游戏逻辑、物理逻辑、三维逻辑的运算,再将运算结果传递给各个客户端。为了保证客户端流畅的运行体验,客户端和服务器端能够智能调整最佳发包频率,以实现30毫秒一下的延迟。
raytracing:根据三维坐标内的某点,向目标物体进行投影。期间运算碰撞和遮挡等物理逻辑,以实现射击类游戏的子弹逻辑运算。
综上所述,通过本发明所述方法能够使三维游戏直接运行在浏览器自带的flashplayer环境下,真正实现打开网页即可玩游戏,无需下载、安装庞大的客户端,加载量小,使用方便,推广成本大大降低,用户渗透量大。
本发明通过使用flash插件的显卡接口作为操作显卡的通道,独立开发大量的功能,为各种常用三维处理功能定制化使用这些不传统的接口来实现的方法,并进行效率优化,克服难点,使之能够满足实时互动的要求。针对一些无法完全使用上述接口实现的功能,结合cpu的处理能力,让显卡与cpu迂回配合,达到和客户端游戏类似的处理结果。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
1.一种网页版三维在线游戏的实现方法,其特征在于,其方法步骤如下:
(1)通过浏览器从服务器中下载可运行的游戏内容到本地计算机;
(2)将下载的可运行的游戏内容交给本地计算机中运行的flash插件进行解析;
(3)flash插件将解析得到的可运行的软件代码注入到as3runtime中运行;
(4)所述可运行的软件代码加载并解析三维资源;
(5)所述可运行的软件代码将解析得到的三维资源交给cpu进行运算,运算结果即为最终渲染的中间数据;
(6)所述可运行的软件代码通过所述flash插件的显卡通道将上述中间数据组合成三维游戏内容展现在浏览器的渲染窗口中。
2.根据权利要求1所述的一种网页版三维在线游戏的实现方法,其特征在于,所述flash插件为11.0以上版本的flash插件。
3.根据权利要求1所述的一种网页版三维在线游戏的实现方法,其特征在于,所述浏览器为ie浏览器或360浏览器。
4.根据权利要求1所述的一种网页版三维在线游戏的实现方法,其特征在于,所述cpu为intel酷睿2四核中央处理器。
5.根据权利要求1所述的一种网页版三维在线游戏的实现方法,其特征在于,所述显卡的型号为hd7870。