2014网络游戏复习大纲
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 什么是游戏?举例说明其构成要素。
游戏是按照一定规则进行的交互式娱乐行为。
游戏是具有特定的行为模式,规则条件,身心娱乐及输赢胜负的一种行为表现。
要素:* 行为模式:游戏执行时的构成因素及特定的流程模式。
*规则条件:参与游戏者必须遵守的行为准则。
有些明文规定,有些是潜在的规则。
*身心娱乐:产生新鲜,愉快的感觉,让人愿意玩。
*输赢胜负:游戏的目的。
2 游戏的运行平台有哪几种?网络游戏的类型有哪些?你对哪种类型的游戏感兴趣?
(1)动作类:ACT(Action game),包括格斗类,射击类,跳舞类游
戏
(2)角色扮演类:RPG(role play game),游戏由多个玩家配合,每
个玩家有自己的角色,特性,职业。
(3)冒险类:AVG(adventure game),游戏中含有相当多的解迷和冒
险成份,主角属性固定,游戏的目的是让玩家不断思考获得解决问题的
方法。
(4)策略类:STA(adventure game),融玩家的思考于游戏中,包括棋牌类游戏,即时战略类。
(5)运动类:SPG(Sport game),将现实中的运动在计算机中进行模拟,如球类运动。
(6)益智类:PUZ(puzzle game)着重于玩家的思考与逻辑判断。
挖雷,俄罗斯方块等等。
目前国内运营的网络游戏来讲,市面上流行的网络游戏大致可分为三类:
第一种:MMORPG,即多人在线角色扮演游戏。
这类游戏以《传奇》系列、《魔兽世界》等为代表,具有很高的人气和相当的粘着力。
第二种:是休闲对战游戏,以《泡泡堂》、《疯狂坦克》等为代表。
第三种:棋牌游戏平台,以《联众游戏》、《QQ游戏》等为代表。
常见的有斗地主、拖拉机、麻将、象棋、围棋等等。
3 网络游戏开发大致有哪些环节?每个环节的主要工作是什么?
4 什么是游戏引擎?游戏引擎有哪些主要功能?
游戏引擎是控制游戏功能的主程序。
游戏引擎的功能:逻辑运算,物体成像,玩家角色的操
练,物理演算,特效处理,网络管理,数据管理等等。
5 地图有哪几种构建方式?分别有什么优缺点?
A:2D地图构成的游戏空间:优点是地形本身就可以表
达成数组的形式,大部分游戏都采用这种方式。
B:斜角地图构成的游戏空间:斜角地图的空间感较强C:
三维地图构成的游戏空间:真实感
6什么是游戏协议?举例说明在在程序中如何定义游戏协议?
在建立游戏流程时,需要对游戏元素及游戏规则进行定义,还需要对玩家的请求及应答进行定义,这样才能控制游戏的状态和走向。
以上要素的定义统称为游戏协议,或操作码。
比如对于牌类游戏:牌类型的操作码:1,2,3,4,5,6,7,8,9,10,11,12 打牌的操作码:出牌:PopCard 叫牌:CallCard 重新玩:Replay
表示状态操作码:开始:BegingPlay 结束:EndPlay 退出:GameEnd
7.网络游戏与单机游戏何区别?
8..解释套接字的概念?并描述利用套接字进行通信的流程。
解释什么是阻塞通信模式?什么是非阻塞通信模式?举例说明。
Socket是实现网络端点之间通信的管道,提供数据发送和接收的机制。
其最先在Unix系统下开发,后移植到windows系统,称
winsocket 流程:使用winsock2 API编程,
必须包含头文件winsock2.h (链接环境
WS2_32.LIB),头文件winsock.h
(WSOCK32.LIB)是为了兼容winsock1程序时
使用的,另外mswsock.h(MSWSOCK.DLL)是微软的扩展类,用于开发高性能的winsock程序。
Winsock编程需要经过的步骤:获得Winsock版本——加载Winsock库——初始化——创建套接字——设置套接字——关闭套接字——卸载Winsock库
阻塞模式:由于网络拥挤可一次收发数据量较大,经常会发生
Socket函数调用后不能立即返回。
非阻塞模式:socket函数调用后会立即返回,返回结果可能有成
功,也可能有失败的,也可能什么也没返回。
此模式下需要特定
的机制对函数进行定期调用以及错误监控。
道,提供数据发送和接收的机制。
其最先在Unix系统下开发,后
移植到windows系统,称
9 熟悉widows平台的同学描述windows的异步I/O模型。
WSAsynSelect,WSAEventSelect,重叠模型,完成端口
(1)WSAsynSelect :利用windows的消息机制,接收网络事件并
通知应用程序。
FD_ACCEPT事件:由客户端的connect()触发
FD_ACCEPT事件消息由Accept()激活。
10 多线程编程是在什么情况下产生的?有何优缺点?
11 线程间通讯有几种方式?解释线程同步的概念,并说明同步有哪几种方法,举例说明你所熟悉的一种通信方法。
全局变量,用户定义的消息,事件对象同步:一个线程的执行依赖另一个线程的消息,当它没有得到另一个线程的消息时应等待,直到消息到达时才被唤醒。
同步方法:用户模式和内核模式用户模式下的方法有:原子操作(例如一个单一的全局变量),临界区内核模式下的方法有:事件,信号量,互斥量
原子操作(全局变量)实现同步
12什么是线程池?它的作用是什么?线程池一般都有哪些功能?
线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务。
线程池目的:利用已有线程提供服务,提高系统效率。
线程池中的线程由系统管理,程序员不需要费力于线程管理,可以集中精力处理应用程序任务。
13.一款游戏系统的功能结构有哪些?网游的体系结构有哪些类型?
C/S架构,B/s架构,P2P架构。