目录
前言
一、安装pygame库
1、pygame库简介
2、在windows系统安装pygame库
二 、搭建游戏框架
1、创建游戏窗口
2、改变窗口颜色
总结
前言
大家应该都看过或者都听说过python神书“大蟒蛇”,上面有一个案例是《外星人入侵》,游戏介绍让我想起了上学时候玩过的星际争霸,又让我想起小时候玩的小霸王游戏小蜜蜂,下面我们就按照书籍步骤,看能否实现游戏功能,然后再升级。
一、安装pygame库
1、pygame库简介
Pygame库是一个用于编写2D游戏的Python库。它提供了许多用于处理图像、声音等方面的功能,使得开发者能够快速、轻松地创建自己的游戏。Pygame在跨平台兼容性方面表现良好,可以在多个操作系统下使用。
Pygame的核心是Surface(表面)对象,它代表了一个可绘制的区域。Pygame可以通过在Surface上绘制图形和文本来创建游戏元素。Pygame还提供了事件处理、碰撞检测、时钟控制等常用功能,使得开发者可以轻松地实现游戏逻辑。
除了基本功能之外,Pygame还有大量的扩展模块可供使用,如Pygame.mixer(用于播放音频)、Pygame.font(用于处理字体)等。开发者可以根据自己的需求选择性的引入这些模块。
总之,Pygame为开发者提供了大量的工具和函数库,使得开发游戏变得更加容易和愉快。
2、在windows系统安装pygame库
有过简单基础的小伙伴都知道,安装库是最简单的,只要输入代码就行
pip install pygame
我们在命令行下输入命令,如图
这就开始安装了,出现成功的单词就表示安装成功了
二 、搭建游戏框架
1、创建游戏窗口
我们按照书上步骤,先创建一个空的窗口试试看能否成功
为避免后续调用发生错乱,我们建立的python文件也命名为alien_invasion.py,alien的意思是外星人,invasion的意思是进攻。
先放代码,后续再详解
import sys import pygame def run_game(): pygame.init() screen = pygame.display.set_mode((800,600)) pygame.display.set_caption("Alien Invasion") while True: for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() pygame.display.flip() run_game()
下面我们来一一介绍:
❶sys模块是Python标准库中的一个模块,提供了与Python解释器和运行时环境有关的功能,使用sys库可以获取Python解释器的信息,控制程序的退出、标准输入输出和错误流,以及操作模块搜索路径等。所以这里导入sys模块的目的是控制程序的退出
❷pygame.init()是初始化游戏对象,这个操作是必须的,规定动作一定要做。这个函数将初始化 Pygame 库并为其提供必要的资源和支持。初始化后,才能正常使用 Pygame 库中的功能。
❸display模块是Pygame中用于管理屏幕和窗口的模块。它包含了一些用于初始化pygame显示模块、设置屏幕分辨率、创建游戏窗口、更新窗口内容、处理事件等功能的函数。可以很好理解,pygame.display.set_mode((800,600))是设置窗口大小,pygame.display.set_caption("Alien Invasion")是设置窗口的名称
❹循环语句就是一直监听鼠标和键盘的操作,这个后面有键盘和鼠标输入的时候我们再详细讲。这个代码很好理解,判断如果游戏退出,那么就关闭程序。循环的最后一个语句pygame.display.flip(),我个人理解就是刷新,不断的刷新屏幕,保持动态效果。
我们来运行下看看效果怎么样。
效果非常的棒,和我们想的一样,下一步就是要改变窗口的颜色了。
2、改变窗口颜色
我们知道,很多软件包括Python都是用RGB值来控制颜色,RGB是红、绿、蓝三个颜色分量的缩写,每个分量的值可以在0到255之间取整数值,因此RGB可以表示256256256=16777216种不同的颜色。其中一些常用的颜色和它们所对应的RGB值如下:
- 红色:(255, 0, 0)
- 黄色:(255, 255, 0)
- 绿色:(0, 255, 0)
- 青色:(0, 255, 255)
- 蓝色:(0, 0, 255)
- 紫色:(255, 0, 255)
- 白色:(255, 255, 255)
- 黑色:(0, 0, 0)
我们只需要加一行代码,在每次绘制屏幕之前,也就是我上面说的刷新之前,给窗口定义一个颜色就行,我们来试下青色的背景。
import sys import pygame def run_game(): pygame.init() screen = pygame.display.set_mode((800,600)) pygame.display.set_caption("Alien Invasion") while True: for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() screen.fill((0,255,255)) pygame.display.flip() run_game()
加上代码screen.fill((0,255,255))之后,效果立马显现,看图片
总结
万事开头难,今天将游戏的屏幕设置好了,后面我们将各种小虫子添加上去就行。
猜你喜欢
- 1月前(从“见世面”到“内在需要”:在海南,追问旅行的意义)从“见世面”到“内在需要”:在海南,追问旅行的意义
- 1月前(七尚酒店百度百科)Lohkah七尚酒店首度开创充满新知的闽地研学旅程
- 1月前(云南南博会展馆)旅居云南馆亮相第9届南博会
- 1月前(澳涞坞是什么)从最美山庄到世界舞台:澳涞山庄见证世界十佳旅居城市评选
- 1月前(辽宁新增6个国家4a级旅游景区有哪些)辽宁新增6个国家4A级旅游景区
- 1月前(大连aaaaa景区)辽宁大连A级旅游景区应急救护水平整体跃升
- 1月前(“三天跨两城”催生租车新需求,神州租车清明跨城订单同比增长416%)“三天跨两城”催生租车新需求,神州租车清明跨城订单同比增长416%
- 1月前(新西兰旅游局×时差岛:黄觉的“长白云之乡”奇遇)新西兰旅游局×时差岛:黄觉的“长白云之乡”奇遇
- 1月前(筑格集团有限公司)洲际酒店集团旗下筑格酒店品牌正式亮相大中华区
- 1月前(北京香港航班动态查询)香港快运航空北京大兴新航线今日首航
网友评论
- 搜索
- 最新文章
- (2020广州车展哈弗)你的猛龙 独一无二 哈弗猛龙广州车展闪耀登场
- (哈弗新能源suv2019款)智能科技颠覆出行体验 哈弗重塑新能源越野SUV价值认知
- (2021款全新哈弗h5自动四驱报价)新哈弗H5再赴保障之旅,无惧冰雪护航哈弗全民电四驱挑战赛
- (海南航空现况怎样)用一场直播找到市场扩张新渠道,海南航空做对了什么?
- (visa jcb 日本)优惠面面俱到 JCB信用卡邀您畅玩日本冰雪季
- (第三届“堡里有年味·回村过大年”民俗花灯会活动)第三届“堡里有年味·回村过大年”民俗花灯会活动
- (展示非遗魅力 长安启源助力铜梁龙舞出征)展示非遗魅力 长安启源助力铜梁龙舞出征
- (阿斯塔纳航空公司)阿斯塔纳航空机队飞机数量增至50架
- (北京香港航班动态查询)香港快运航空北京大兴新航线今日首航
- (我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉)我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉
- 热门文章