1 / 12
文档名称:

网络游戏制作技术.doc

格式:doc   大小:71KB   页数:12页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

网络游戏制作技术.doc

上传人:phljianjian 2017/7/26 文件大小:71 KB

下载得到文件列表

网络游戏制作技术.doc

相关文档

文档介绍

文档介绍:网络游戏制作技术
[b]网络游戏制作技术(一)[/b]
当今网络游戏在中国大陆已经在大范围的蔓延,暂且不论这样的一种趋势会带来什么样的游戏产业趋势。这里只就网络游戏的制作和大家进行交流,同时将自己的制作经验写处理,希望为中国的游戏业的发展做出一点点的贡献。。
网络游戏的程序开发从某种意义上来看,最重要的应该在于游戏服务器端的设计和制作。对于服务器端的制作。将分为以下几个模块进行:






现在就网络中的通信模块处理谈一下自己的看法!!
在网络游戏客户端和服务器端进行交互的双向I/O模型中分别有以下几种模型:
1. Select模型
2. 事件驱动模型
3. 消息驱动模型
4. 重叠模型
5. 完成端口重叠模型。
在这样的几种模型中,能够通过硬件性能的提高而提高软件性能,并且能够同时处理成千上百个I/O请求的模型。服务器端应该采用的最佳模型是:完成端口模型。然而在众多的模型之中完成端口的处理是最复杂的,而它的复杂之处就在于多服务器工作线程并行处理客户端的I/O请求和理解完成端口的请求处理过程。
对于服务器端完成端口的处理过程总结以下一些步骤:
1. 建立服务器端SOCKET套接字描述符,这一点比较简单。
例如:
SOCKET server_socket;
Server_socket = socket(,SOCK_STREAM,0);

Const int SERV_TCP_PORT = 5555;
struct sockaddr_in server_address.
memset(&server_address, 0, sizeof(struct sockaddr_in));
= ;
= htonl(INADDR_ANY);
= htons(SERV_TCP_PORT);
//绑定
Bind(serve_socket,( struct sockaddr *)&server_address, sizeof(server_address));
2. 对于建立的服务器套接字描述符侦听。
Listen(server_socket ,5);
3. 初始化我们的完成端口,开始的时候是产生一个新的完成端口。
HANDLE hCompletionPort;
HCompletionPort = pletionPort(NULL,NULL,NULL,0);
4. 在我们已经产生出来新的完成端口之后,我们就需要进行系统的侦测来得到系统的硬件信息。从而来定出我们的服务器完成端口工作线程的数量。
SYSTEM_INFO system_info;
GetSystemInfo(&system_info);
在我们知道我们系统的信息之后,我们就需要做这样的一个决定,那就是我们的服务器系统该有多少个线程进行工作,我一般会选择当前处理器的2倍来生成我们的工作线程数量(原因考虑线程的阻塞,所以就必须有后备的线程来占有处理器进行运行,这样就可以充分的提高处理器的利用率)。
代码:
WORD threadNum = system_info. DwNumberOfProcessors*2+2;
for(int i=0;I<threadNum;i++)
{
    HANDLE hThread;
    DWORD dwthreadId;
    hThread = _beginthreadex(NULL,ServerWorkThrea,  (LPVOID)hCompletePort,0,&dwthreadId);
    CloseHandle(hThread);
}
CloseHandle(hThread)在程序代码中的作用是在工作线程在结束后,能够自动销毁对象作用。
6. 产生服务器检测客户端连接并且处理线程。
HANDLE eptThread;
DWORD dwThreadId;
eptThread= _beginthreadex(NULL,AcceptWorkThread,NULL, &dwThreadId);
CloseHandle(eptThread);
,在线程处理之前我们必须定义一些属于自己的数据结构体来进行网络I/O交互过程中的数据记录和保存。
首先我要将如下几个函数来向大家进行解析:
1.
HANDLE

最近更新

生产工人个人工作总结范文与生产工作个人总结.. 9页

基础设施施工合同范3篇 57页

基础工程分包协议书3篇 50页

疾病预防控制中心安全生产工作推进计划与百乡.. 10页

监督委在制度推行工作会讲话与监督局环境执法.. 27页

督导部工作的自我总结与督查科上半年工作总结.. 5页

社区10月工作计划范文五篇与社区2018健康教育.. 9页

轮胎橡胶深加工-洞察阐释 36页

城市基础设施建设2025年度建筑脚手架租赁合作.. 54页

(新版)导游资格证考试题库附答案(模拟题) 29页

2025年一级注册建筑师之建筑材料与构造题库(.. 132页

2025年一级注册建筑师之建筑设计考试题库(达.. 135页

2025年全国保密教育线上培训考试题库【名师推.. 5页

2025年教师资格之中学教育知识与能力考试题库.. 136页

2025年证券从业之金融市场基础知识题库500道及.. 140页

2025年高校教师资格证之高等教育心理学考试题.. 48页

二零二五年度办公楼外立面钢结构防火涂料施工.. 14页

二零二五年度医院改造EPC总承包项目合同协议 13页

二零二五年度厨房电器采购与安装服务合同 13页

二零二五年度商务中心场地租赁协议书 15页

二零二五年度场部信息保密与信息安全管理制度.. 16页

二零二五年度基础设施建设项目施工合同范本 14页

二零二五年度存量房买卖合同配套设备安装验收.. 15页

二零二五年度安置房买卖与配套设施租赁及维护.. 13页

二零二五年度家居装修售后服务与质量保障协议.. 17页

二零二五年度工业设备拆除及回收合同范本免费.. 16页

二零二五年度建筑工程爆破施工合同范本 17页

二零二五年度成都二手房买卖合同(含交易风险.. 13页

二零二五年度承包工地食堂食品安全责任合同范.. 15页

二零二五年度撤资退股股权回购专项协议 17页