计算机游戏复习要点

  • 格式:doc
  • 大小:1.17 MB
  • 文档页数:12

第一章、第二章

理解:什么是游戏?游戏的本质,游戏的特点,游戏循环,游戏的基本流程

1、游戏:就是按照一定规则进行的由人主动参与有明确目标以娱乐为目的的交互式行为”

2、游戏的本质:本身具有特定行为模式、规则条件、身心娱乐和 输赢胜负的一种行为表示

3、游戏的两个最基本的特性:

(1)以直接获得快感(包括生理和心理的愉悦)为主要目的。(2)主体参与互动

交互性、娱乐性、规则性、平衡性、自发性

4、游戏循环

(1)初始化

(2)进入游戏循环

(3)查询用户输入状态

(4)执行游戏逻辑和AI判断

(5)绘制图像

(6)循环

(7)退出

5、游戏的基本流程

从软件设计的角度来看,游戏的基本流程只是一个连续的循环,它不断地按照某种逻辑来绘制新的图像,并播放音乐

从系统实现的角度来看,游戏就是一个不断按照某种逻辑更新各种数据(画面、声音等)的过程

初始化 主菜单

载入

保存

Play

画面更新:

 背景动画

 音乐,声效

输出到buffer

退出/循环 键盘

鼠标

游戏杆

执行Game play逻辑

游戏逻辑:

 AI

 碰撞检测

 运动

 获得用户输入

1.内存分配

2.构建表格

3.载入文件

绘制到屏幕 内存

显示器

同步至大约以每秒30帧

是 主循环

6、主循环在游戏里干嘛:它不断地按照某种逻辑来绘制新的图像,并播放音乐 第三章 游戏发展(了解:游戏平台发展史,游戏发展史,三维游戏重要人物)

1、世界上第一个电子游戏程序:麻省理工学院的格拉茨、拉塞尔等的《太空大战》

2、电子游戏的始祖--Atari(雅达利)。

3、游戏平台发展史

(1)硬件:专有游戏设备

街机 (Arcade):电脑空间

家用机 (Console):“Pong”,成为Atari的第一个家庭电视游戏产品

手掌机 (Handheld):GB,为Game Boy的缩写,它是任天堂8位掌上型游戏机

电脑 (Personal Computer):苹果公司制作的第一种普及的微电脑:Apple II

手机 (Mobile Phone)

(2)软件:著名的电子游戏:《太空大战》

4、游戏发展史:

计算机游戏的历史最早可追溯到,1961年运行于PDP-1上的“太空大战”,1978年TRS-80上的冒险岛(最早的PC游戏 )

5、约翰·卡马克,开发了世界上第一款3D射击游戏并以此开启了3D游戏时代

第四章 游戏分类

掌握:计算机游戏的流派和类型、计算机游戏的分类要素

了解:几种常见的游戏类型:RPG、FPS、实时策略游戏、回合制策略游戏、动作游戏等

1、流派类型(面向开发人员):

(1)角色扮演类:RPG;

(2)动作类游戏ACT;

1)第一视角射击游戏:FPS

2)格斗游戏(Fighting Game)FTG

(3)回合制策略游戏TBS;

(4)实时策略游戏RTS;

(5)模拟游戏SLG(日式)或者SIM(美式);

(6)冒险游戏AVG;

(7)体育类游戏SPT;

(8)赛车游戏RAC;

(9)益智类

2、分类要素:主题、故事情节、视觉风格和游戏机制 *

3、几种常见的游戏类型:

(1)角色扮演类RPG:游戏中,一般是以某一名人物作为主人公,以这名人物的生平为主线,所有故事都围绕这名主角展开,有相当明确的游戏主线索和非常充实的故事内容。

特点:RPG游戏最主要就是在强调人物的特性描写与它的背景故事表现,以达到角色扮演的目的。

(2)第一视角射击游戏FPS:融合了迷宫游戏和动作游戏的特点后,引入第一视角和三维图形,使得游戏的表现力得到了极大的提高。

(3)回合制策略游戏TBS :早期计算机的计算能力无法在游戏中实现真正的实时对抗,于是回合制策略游戏就作为一种妥协方案被推出。

(4)动作类游戏(Action Game)ACT:乐趣就在于玩家通过不断的训练达到某种技巧上的娴熟,并培养出一定的条件反射。

第五章 二维图像游戏基础

掌握:四种二维地图的基本思想、镂空图技术、精灵动画的算法步骤 理解:颜色混合与半透明原理、二维的碰撞检测(三种方法能区别开)

1、二维地图的基本思想:*

(1)固定地图:使用固定的背景作为地图,并将屏幕切割成棋盘状的一系列小块。应用程序在内存中保持一个二维数组,保存每个小块对应的编号。绘制时根据数组所提供的信息,在每个小块中画上正确的图块,即可拼接成所需要的地图。

(2)滚屏地图:滚屏地图是固定地图的进一步扩展,可以显示远大于固定地图的图像。每屏只显示部分图像,当游戏中人物角色行进时,根据玩家所在位置,确定显示的地图部分。

(3)多层次地图:在滚屏地图的基础上设置多个层次的地图可。再把地图数组改为三维地图。

(4)菱形地图:在二维画面上表现三维场景的技术

2、镂空图技术:

(1)镂空图技术在算法实现上就是将源图像的一部分(可以是不规则图形)贴到背景上,忽略源图像上的其他部分,其表现出来的视觉效果就像把源图像挖去一部分,然后贴在背景图上。

(2)实现步骤:首先将掩码图和背景图案按位与,将原始图像的主体对应位置挖空 然后将原始图像和上一步处理结果按位或,则原始图像的主体部分贴到背景上并遮盖背景,其余部分(掩码图中白色对应的部分)没有贴到背景上。

3、精灵动画:

(1)定义:采用连续贴图的方式来产生动画,即精灵动画

(2)算法:

1)键盘处理部分(在OnKeyDown)

step=4; //角色的步长

switch( nChar ){

case VK_UP: //分别处理四个方向

posy-=step; break;

case VK_RIGHT:

posx+=step; break;

case VK_DOWN:

posy+=step; break;

case VK_LEFT:

posx-=step; break; }

2)精灵的绘制部分

BitBlt(hcdMem,0,0,WindowWidth,WindowHeight,hdcBack,0,0, SRCCOPY); //背景

BitBlt(hcdMem,posx,posy,TankWidth,TankHeight,hdcTank,MaskPosX+Col*TankWidth,Row*TankHeight, SRCAND); //按位与

BitBlt(hcdMem,posx,posy,TankWidth,TankHeight,hdcTank,Col*TankWidth,Row*TankHeight,

SRCPAINT); //按位或

BitBlt(hdc,0,0,WindowWidth,WindowHeight,hdcMem,0,0,SRCCOPY);//把内存DC内容复制到窗口DC上

4、碰撞检测(理解大概是什么)

(1)区域检测:被检测物体置于某种规则形状之中进行判断

(2)碰撞点检测:在两个运动物体中的一个物体上设置碰撞点,在另一个物体上设置检测区域,运行时逐个判断碰撞点是否在检测区域中

(3)颜色检测:较为精确但也相对耗时 第六章 三维数学和变换

理解:三种变换矩阵、图形流水线中的坐标轴系统、

1、变换矩阵

(1)平移:

利用平移矩阵,将点V=(x,y,z)T平移至V’=(x+Tx,y+Ty,z+Tz)T处,表示为V’=V+T

(2)缩放:

将点V=(x,y,z)T缩放(d1,d2,d3)倍

(3)旋转:

X轴逆时针: y轴逆时针 : z轴逆时针:

2、图形流水线中的坐标轴系统

(1)物体坐标系:选取物体上或靠近物体的某一点作为原点,物体上的其他点相对于该点的坐标进行表示

(2)世界坐标系:全局坐标系,所有物体组成一个场景,场景坐标系称为世界坐标系

(3)照相机坐标系统:照相机坐标系统决定照相机参数和可见域

第七章 游戏引擎概述

理解:游戏引擎的概念、游戏引擎的常见功能

1、游戏引擎实际是一个面向游戏开发的通用内核,是把游戏中的最常见、最核心的功能进行集成,形成通用的框架平台(游戏开发平台和集成环境)

2、常见功能:

光影效果、动画生成、物理模拟、渲染(Render)、交互控制

第八章 计算机动画

理解:人物动画中骨架的作用、动作获取的三种主要方式

了解:前向动力学、逆向动力学的区别

1、人物动画中骨架的作用:

(1)方便运动的指定

(2)模型和运动都可以重用

2、动作获取的三种主要方式:

(1)关键帧:指定每一关键时刻的物体的运动位置和方向

(2)动态(过程)模拟 (物理建模) :根据物理规律和指定的目标,使用算法或者过程来模拟产生运动或者动作序列

(3)基于动作捕捉设备:将表演者的现场表演的运动数据实时纪录下来,并映射到计算机的动画人物中 3、前向动力学、逆向动力学的区别(理解即可)

(1)前向: (2)逆向:

A为效应的距离(end effector space x),为距离关节的角度(joint space )。

第九章 场景管理1和2(重点章)

掌握:层次细节技术、室内场景的可见性判断(Cell-to-cell等三种)、BSP场景管理、基于BSP树的场景绘制

理解:景物包围体和场景剖分技术比较、可见性判断中的平衡(速度和准确性)

1、层次细节(LOD)技术(几何优化):

经典的简化算法:顶点删除,边删除,面删除。

2、室内场景的可见性判断(速度越来越慢,准确性越来越高)

(1)Cell-to-Cell 可见性

告知在一个cell中的某点处是否可以看到其他的房间。但是无法知道每个房间的那个部分可能是可见的,也无法知道观察者在这个房间的哪个地方可以见到另外的房间

(2)Cell-to-Region 可见性

可以知道某点处,其他房间的哪些部分是可见的。Cell-To-Object: 对于某给定的房间,告知哪些物体是可见的。

(3)Eye-To-Region 可见性

记录当前视点处的哪些房间的哪些部分是可见的

3、PVS,可能可见集: 对于某个特定的房间,可能可以看到的房间/区域/物体/多边形

(1)Cell-to-cell的pvs:

IPVS 包括:B, C, E, F, H, J

(2)Cell-To-Region 可见性:

I J

H

G A C B E F

D