
Windows游戏开发
文章平均质量分 55
leogray
这个作者很懒,什么都没留下…
展开
-
游戏编程基础(一)GDI位图透明效果
GDI实现透明位图还是相当简单的位图的透明原理:1.位图白色位置的RGB值为{255,255,255}2.位图黑色位置的RGB值为{0,0,0,}3.准备两张图,要显示的图片背景设置为黑色(左图),用于屏蔽掉背景的图片背景设置为白色,显示图像部位设置为黑色(右图)4.先用屏蔽图(右图)与背景图做“AND”运算,后将前景图(左图)于背景图做“OR”运算,即可实现透明效果关原创 2012-05-03 23:26:28 · 1808 阅读 · 2 评论 -
游戏编程基础(五)背景地图滚动显示
在游戏过程中,背景地图需要跟着人物的移动而动态的滚动变换。C++游戏编程基础中介绍了2D游戏中常用的3种动态背景表现手法。其原理和实现技巧分析如下:方法一:单一背景滚动 原理是:利用一张大的背景图,在游戏的进行过程中,随着人物的移动,计算应该显示背景区域的坐标,在每次背景更新时改变显示的区域即可。关键代码:消息循环部分沿用GDI“游戏循环”的方式//add by原创 2012-05-06 14:31:19 · 4580 阅读 · 0 评论 -
游戏编程基础(三)GDI游戏动画基础
游戏中播放动画,简单来看可以分为:1.直接播放影音文件;2.利用连续贴图的方式,模拟动画效果。Windows中可以使用定时器来实现连续贴图,定时器的使用固然简单和方便,如果稍微对windows系统及消息机制有些了解的话。就会发现,定时器其实是有很大限制。因此定时器只适用与小游戏或简单动画中。但是了解基本的东西,对于扩展和学习高级的技巧会有很大的帮助,因此我们要把最简单的原理搞懂。千里之行始于足原创 2012-05-05 13:54:01 · 2718 阅读 · 0 评论 -
游戏编程基础(二)GDI透明半透明效果
半透明在游戏中通常用于若隐若现的特殊效果,如雾,隐形单位。半透明的原理是通过前景图片与背景图片像素的混合来实现的。用公式表示即为:半透明色 = 前景色X不透明度 + 背景色X(1-不透明度)为了制作半透明效果,需要先了解一些基本的知识:windows 位图结构typedef struct tagBITMAP{ LONG bmType; //位图类型,必须为0原创 2012-05-05 01:40:41 · 3405 阅读 · 0 评论 -
游戏编程基础(四)GDI游戏循环
前面在制作GDI游戏动画基础的时候就谈过定时器这种消息驱动的方式并不能达到显示顺畅游戏画面的要求。因此各种编程书籍都会提及一个所谓“游戏循环”的概念。而在windows 游戏编程中,这个概念主要是通过PeekMessage这个API来实现的。回忆此前Windows 默认的消息循环,是通过GetMessage来实现的,那么理清楚这两个APi之间的区别,就能理解Windows游戏循环的概念了。原创 2012-05-05 15:49:59 · 1509 阅读 · 0 评论 -
C++ 飞行射击游戏设计全程实录
一、 目的和原因前段时间有点空闲,看了几本关于windows游戏编程的书籍。尤其看过云风的《游戏之旅-我的编程感悟》之后,小有感触,学习是需要检验的。因此想动手写个小游戏。选择做这个简单的打飞机游戏的原因:在小米手机上玩过一个打飞机的游戏。就用这个题材好了,可以检验学习的成果。主要是C++ Windows API相关的游戏编程,用GDI绘图。 二、 过程①一原创 2012-05-13 19:55:58 · 8490 阅读 · 1 评论