Tag Archives: 游戏开发

用Python和Pygame写游戏-从入门到精通(9)

上次我们说到了向量,不得不说向量是一个伟大的发明,在单纯的数字运算之中,居然就把方向也包含其中。对于如今的我们来看,非常普通的事情,几百年前的人们能够考虑到这个,实在是非常的不容易。不过同时我们也要有这样的意识——我们现在所使用的数学,未必就是最完美的。时代发展科技进步,或许我们会有更好的方式来诠释我们的世界。想想一片叶子飘落,有它独特的轨迹,如果要人类计算出来那个轨迹,即便可能,也是无比繁杂的。… Read More »

用Python和Pygame写游戏-从入门到精通(8)

是时候让我们的游戏活泼起来了。电脑游戏和桌面游戏的一个巨大差别,想来就是这个“动”。伟大的哲学家们告诉我们,“运动是绝对的,静止时相对的”,同样的在游戏中,只有活动起来,游戏才会拥有生命,否则和看连环画有什么差别呢? 这几章讲述的东西需要一些线性代数的知识,好吧有些夸张,如果你不明白,完全没关系,高中物理的知识就绝对足够了(或者说嫌多了)!

用Python和Pygame写游戏-从入门到精通(7)

我们上一个章节使用了pygame.draw中的一些函数,这个模块的作用是在屏幕上绘制各种图形。事实上,你可以不加载任何图片,只是要这些图形来制作一个游戏(经典游戏Asteroids便是,这里有一个HTML5写就的例子。好像访问不了?搜个Flash版吧,多得很)。 pygame.draw中函数的第一个参数总是一个surface,然后是颜色,再后会是一系列的坐标等。稍有些计算机绘图经验的人就会知道,计… Read More »

用Python和Pygame写游戏-从入门到精通(6)

掌握了小小的像素,我们可以使用更加复杂一点的东西了,对,就是图像,无数的像素的集合~还记得上次我们为了生成的一张图片,花了无数时间,还好一般游戏不会在游戏的过程中动态生成图像,都是将画好的作为资源封装到游戏中。对2D游戏,图像可能就是一些背景、角色等,而3D游戏则往往是大量的贴图。 虽然是基础,这里还是要罗嗦一下,之前说的RBG图像,在游戏中我们往往使用RGBA图像,这个A是alpha,也就是表示… Read More »

用Python和Pygame写游戏-从入门到精通(5)

这次开始是真正的游戏编程,以前都是基础的基础啊。 电脑游戏总是倾向于图像化的,尽量的要看得到听得到(现在的技术基本还局限于这两个感官),游戏开发者会花无数的力气在图像上,提升图像效果是游戏开发永恒的话题。这几次主要讲述游戏中的视觉。 像素的威力 凑近显示器,你能看到图像是由一个一个点构成,这就是像素。至于屏幕分辨率的意义,也就不用多说了吧,一个1280×1024的显示器,有着131072… Read More »

浏览器上的60FPS愤怒的小鸟

小鸟就不用我说了吧,有名到要命。到底有多少盗版,谁也说不清楚,想来用Flash实现这样一个游戏并不是什么困难的事情。不过我这里说的是使用WebGL,使用WebGL和本地存储,无论在线或者离线,你都可以很快的在你的浏览器里玩愤怒的小鸟了,据说这个游戏在运行的时候可以达到60FPS,可能比本地运行游戏都要快一点,手机上更不用说(愤怒的小鸟在我的G2基本运行不起来,难得启动成功也是幻灯片)。 讲讲什么是… Read More »

用Python和Pygame写游戏-从入门到精通(4)

不过5月上旬,气温居然就到了33℃,这日子真是不让人活了…… 另外今天是母亲节啊,不知道上什么图片就上这张吧~~ 今天说明字体模块和一些错误处理。 使用字体模块 就像上一次说的,一个游戏,再怎么寒碜也得有文字,俄罗斯方块还有个记分数的呢;印象中没有文字的电子游戏只有电脑刚刚诞生的那种打乒乓的了。Pygame可以直接调用系统字体,或者也可以使用TTF字体,稍有点电脑知识的都知道这是什么。为了使用字体… Read More »

用Python和Pygame写游戏-从入门到精通(3)

OK,到该讲显示的时候了。没人可以否定好的画面是一款游戏吸引人最直接最诱人的因素,虽说滥画面高游戏度的作品也有,但优秀的画面无疑是一张过硬的通行证,可以让你争取到更多的机会。 其实上两回也已经打开过显示了,不过没有特别说明而已,pygame.display.set_mode(xxx)就是创建一个游戏窗口,也就是显示的意思。 全屏显示 我们在第一个程序里使用了如下的语句 screen = pygam… Read More »

用Python和Pygame写游戏-从入门到精通(2)

上次我们试着写了一个最简单的Pygame程序并且解释了一个大概的框架,这次就Pygame中也是游戏中最关键(……好吧,也许并不是最关键,但绝对是至关重要的一项)的事件来展开。 理解事件 事件是什么,其实从名称来看我们就能想到些什么,而且你所想到的基本就是事件的真正意思了。我们上一个程序,会一直运行下去,直到你关闭窗口而产生了一个QUIT事件,Pygame会接受用户的各种操作(比如按键盘,移动鼠标等… Read More »

用Python和Pygame写游戏-从入门到精通(1)

博客刚开,打算做一个Pygame的系列,翻译自Will McGugan的《Beginning Game Development with Python and Pygame –From Novice to Professional》,有兴趣的朋友可以搜一下,有英文版的PDF可以下载。其实也不是翻译,把精华摘出来,共同学习。 看这个系列需要有Python的基础知识,虽然一开始想写一篇Py… Read More »