Pygame:提高游戏的颜值1 – 零基础入门学习Python081

Pygame:提高游戏的颜值1

 

让编程改变世界

Change the world by program


 

毋庸置疑,在这个出门靠脸的年代,高颜值的界面会给你的游戏带来更多的眼球。今天我们就来谈谈Pygame的显示。

 

我们一直是通过display模块的set_mode()方法来指定界面的大小,并返回一个Surface对象。今天我们来细讲set_mode()这个方法:

set_mode(resolution=(0,0), flags=0, depth=0) -> Surface

 

第一个参数resolution用于指定界面的大小。一般我们会指定一个具体的尺寸,如果你什么都不给它,或者使用默认的(0, 0),那么pygame会根据当前的屏幕分辨创建一个窗口(SDL版本低于1.2.10会抛出异常)。

 

第二个参数flags用于指定扩展选项。同时指定多个选项可以用管道操作符(|)隔开,下表列举了各个选项及含义:

选项 含义
FULLSCREEN 全屏模式
DOUBLEBUF 双缓冲模式
HWSURFACE 硬件加速支持(只有在全屏模式下才能使用)
OPENGL 使用OpenGL渲染
RESIZABLE 使得窗口可以调整大小
NOFRAME 使得窗口没有边框和控制按钮

 

第三个参数depth用于指定颜色位数。一般这个值我们不推荐设置,因为pygame会自动根据当前操作系统设置最合适的颜色位数。

 

大家有没有发现我们玩的很多游戏都是全屏模式,你知道为什么吗?因为全屏的好处太多了,你可以显示更多的内容,可以开启硬件加速,最重要的一点是你霸占着整个屏幕,其他的软件都一边站去。

 

开启全屏模式很简单,我们只需要设置第二个参数为FULLSCREEN即可,同时我们可以加上硬件加速HWSURFACE:

screen = pygame.display.set_mode((640, 480), FULLSCREEN | HWSURFACE)

 

等等,你先别急着运行代码,因为你这样一全屏等下就很难退出了(如果你不幸已经进入了,请用热键Ctrl-Alt-Delete退出)。我们应该添加一个快捷键使得全屏模式得到控制……

 

…… 此处省略N多内容,具体请看视频讲解 ……

 


为您推荐

报歉!评论已关闭.