码迷,mamicode.com
首页 > 其他好文 > 详细

游戏开发基本概念

时间:2015-04-29 16:43:49      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:

游戏概念类

 

(frame)

一帧就是一副静止的画面,连续的帧就形成动画,如电视图象等。

 

 

帧速(FPS)

 

我们通常说帧数,简单地说,就是在1秒钟时间里传输的图片的帧数,也可以理解为图形处理器每秒钟能够刷新几次,通常用fpsFrames Per Second)表示。每一帧都是静止的图象,快速连续地显示帧便形成了运动的假象。高的帧率可以得到更流畅、更逼真的动画。每秒钟帧数 (fps) 愈多,所显示的动作就会愈流畅。 

 

 

碰撞

 

两个相对运动的物体,接触并迅速改变其运动现状的现象。

 

 

镜头 camera

 

游戏中摄像机的位置、角度等等。

 

地图的层(layer)

 

地图可以包含一个或多个图层,每个图层在每个级别都是由若干张图块组成的,它们覆盖了地球的整个表面。

 

 

图形图像类

 

色板 palette

 

用彩色底片三层乳剂能感受的红、绿、蓝、黄、品红、青等颜色,加上从白到黑的中性灰色板组合起来,有系统排列的一种彩色图板。

 

 

透明 (transparency)

 

物质透过光线的性质和情况。

 


 

像素(pixel)表示方法

 

基本原色素及其灰度的基本单位,是构成数码影像的基本单位,通常以像素每英寸(PPI)为单位表示影像分辨率的大小。像素有两种表示方法:一个数:如“0.3兆像素”数码相机,指的是他有30万像素。也可以用一对数字:“640*480显示器”表示横向640像素和纵向480像素,总数是307200像素。

 


 

行间压缩算法 RLE

 

最早出现也是最简单的无损数据压缩算法。基本思路是:把数据按照线性序列分成两种情况:连续的重复数据块和连续的不重复数据块。对连续的数据块,压缩方法就是用一个表示块数的属性加上一个数据块代表原来连续的若干块数据。对连续的不重复数据块,一种处理方法是和第一种情况一样的方法,只是表示块数的属性总是1;另一种处理方法是不对数据惊醒任何处理,直接将原始数据作为压缩后的数据。

 

 

游戏的主循环一般需要哪些要素驱动?写一段伪代码表示。

 

游戏都是由更新状态、处理数据、播放音乐、更换地图和处理动画来构成。而引起这种的更新一般是由两种行为引起的:

 

事件驱动(用户输入)

 

固定时间的FPS(每秒帧数) 

 

1 bool game_is_running = true;
2 
3 
4 while (game_is_running)
5 {
6     update_game(); //更新游戏状态
7     display_game(); //显示游戏画面
8 
9 }

 

游戏编程中的cachebuffer是什么? 有什么作用?

cache缓冲区,是高速缓存,是位于CPU和主内存之间的容量较小但速度很快的存储器,因为CPU速度远远高于内存速度,CPU从内存中读取数据需要等待很长时间,而cache保存着CPU刚用过的数据或循环使用的部分数据,这时从cache中读取数据会更快,减少了CPU等待的时间,提高了系统的性能。

buffer缓冲区,用于存储速度不同步的设备或优先级不同的设备之间传输数据;通过buffer可以减少进程间通信需要等待的时间,当存储速度快的设备与存储速度慢的设备进行通信时,存储慢的数据先把数据存放在buffer,达到一定程度存储快的设备再读取buffer的数据,在此期间存储快的设备CPU可以干其他事情。

 

 

在一个2D游戏中,如何进行碰撞检测?在3D游戏中又如何检测?

 

2D游戏:地图格子划分检测,矩形检测,圆形检测,像素检测,四叉树检测

 

3D游戏:立方体检测,球形检测,八叉树检测

 


 

 

 

 

 

游戏开发基本概念

标签:

原文地址:http://www.cnblogs.com/novor/p/4466110.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!