当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : PyGame 入门小指南
帖子发表于 : 2011-04-01 7:09 
头像

注册: 2008-08-28 8:12
帖子: 288
送出感谢: 0 次
接收感谢: 1
看了很多教程,都是很理论化的。一直想找一个能手把手教人写游戏的教程,可是没有找到。所以干脆自己写了一份,目前还正在继续中,不知道有没有人对此感兴趣……

大体的目的是面向有Python基础的用户,从介绍PyGame开始一直到写成一个虽然简单但也不失水准的小游戏为止。希望大家多多支持多多围观,谢谢大家了……

最重要的是文章地址:http://bbs.indepla.net/thread.php?fid-318.html

附上一张目前教程可以达到的效果的贴图,当然目前游戏还很简单,过不了多久就会完善起来的:
图片

======= 分割线下面是节选的一段教程的内容 ========

SDL是一个2D图像库,它对平面图像进行管理(好吧我忽然发现我们学的是PyGame,但是注意PyGame是SDL的一个封装,所以有的时候我会两个名词混用)。

SDL用来管理平面图像的存储单元叫做“层(Surface)”,层之间的赋值可以利用一个叫做Blit的特性来实现。Blit的运行机制就是把一个层上的像素信息覆盖到另外一个层的特定位置。感觉上就好像从一张纸上剪下一个东西,帖到另外一张纸上。

首先呢,我们每一次在进行上面说的剪贴游戏之前,肯定要准备一张大白纸,这张白纸一般被叫做screen。在上面的Py代码中,我们有:
screen = pygame.display.set_mode((640, 480), 0, 32)
这行代码的意思就是设置一个名为screen的存储空间,然后利用pygame类的成员函数display.set_mode(),创建了一张大“黑”纸(因为屏幕的底色一般是黑色)。第一个Tuple参数设置了屏幕的分辨率,第二个参数我们以后会细细讲,第三个参数是颜色模式,32代表了32位色。

然后我们需要准备往大黑纸上帖的图片。那么我们利用:
background = pygame.image.load(background_image_filename).convert()
这行代码可以将硬盘中的图像载入到内存中去,换句话说,准备粘贴的纸张已经准备好了。这里另外说一下,PyGame支持多种图片格式,包括JPG、BMP、PNG等等,做一个简单的2D游戏我想这些格式应该差不多够用了吧~~

===================================


_________________
SLAX and Xorg(without any Window Managers)
It's fun!


页首
 用户资料  
 
2 楼 
 文章标题 : Re: PyGame 入门小指南
帖子发表于 : 2011-04-01 7:29 

注册: 2010-07-19 21:41
帖子: 22323
系统: OS X
送出感谢: 8
接收感谢: 42
占位学习……不过pygame的图标有点蛋疼…… :em06


_________________
NO DO NO DIE
http://a/%%30%30


页首
 用户资料  
 
3 楼 
 文章标题 : Re: PyGame 入门小指南
帖子发表于 : 2011-04-07 16:35 

注册: 2010-09-27 12:59
帖子: 2061
送出感谢: 0 次
接收感谢: 0 次
小白路过 围观。


_________________
生活里,有很多转瞬即逝,像在车站的告别,刚刚还相互拥抱,转眼已各自天涯。很多时候,你不懂,我也不懂,就这样,说着说着就变了,听着听着就倦了,看着看着就厌了,跟着跟着就慢了,走着走着就散了,爱着爱着就淡了,想着想着就算了。


页首
 用户资料  
 
4 楼 
 文章标题 : Re: PyGame 入门小指南
帖子发表于 : 2011-08-19 0:26 

注册: 2010-10-24 11:43
帖子: 239
送出感谢: 0 次
接收感谢: 1
学习了`!


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译