1.pygame快速入门-创建游戏窗口
pip3 install pygame #验证安装
# aliens 是pygame内置的一个小游戏,可以启动成功说明pygame安装成功
python3 -m pygame.examples.aliens
- 把一些静止的游戏绘制到游戏窗口
- 根据用户的交互或其他情况,移动这些图片、产生动画效果
- 根据图像直接是否发生重叠、判断敌机是否被摧毁等其他情况
- 要使用pygame提供的所有功能之前,需要调用init方法
- 在游戏结束前需要调用一下quit方法
pygame.init() #导入并初始化所有pygame模块,使用其他模块之前必须先调用init方法
pygame.quit() #卸载所有pygame模块,在游戏结束之前调用
- 原点在左上角(0,0)
- x轴水平方向向右,逐渐增加
- y轴垂直方向向下,逐渐增加
- 在游戏中,所有可见的元素都是以矩形区域来描述位置
- 要描述一个矩形区域有四个要素:(x,y)(width,height)
- python专门提供了一个类pygame.Rect用于描述矩形区域
- pygame.Rect是一个比较特殊的类,内部只是封装了一些数字计算
- 不执行pygame.init()方法同样可以使用
Rect(x,y,width,height) -> Rect
"""
定义矩形区域描述英雄的位置和大小
输出英雄的坐标原点(x和y)
输出英雄的尺寸(宽度和高度)
"""
import pygame # 参数:x点 y点 宽度 高度
rect = pygame.Rect(100,500,120,125) print(f'英雄的原点{rect.x},{rect.y}')
print(f'英雄的尺寸{rect.width},{rect.height}')
print(f'英雄的尺寸{rect.size}') # Rect的size会返回一个元组,第一个值是对象的宽度,第二个值是对象的高度
pygame.displat.set_mode() # 初始化游戏显示窗口
pygame.display.update() #刷新屏幕显示内容
set_mode(resolution=(0,0),flages=0,depth=0) -> Surface
# resolution指定屏幕的宽和高,默认创建的窗口大小和屏幕大小一致
# flags参数指定屏幕的附加选项,例如是否全屏等,默认不需要传递
# depth参数表示颜色的位置,默认自动匹配
pygame.init()
# 创建游戏窗口
screen = pygame.display.set_mode()
# 游戏主循环
# 为了做到游戏程序启动后,不会立即退出,通常会在程序中增加一个游戏循环
#所谓游戏循环就是一个无限循环,可以做一些对应的操作
# pygame.event.get() 是获取当前窗口的事件 .type是获取事件的类型,如果类型是QUIT,就结束执行
runing = True
while runing:
for event in pygame.event.get():
if event.type == pygame.QUIT:
runing = False
pygame.quit()
1.pygame快速入门-创建游戏窗口的更多相关文章
- PyGame快速入门
pygame 快速入门 目标 项目准备 使用 pygame 创建图形窗口 理解 图像 并实现图像绘制 理解 游戏循环 和 游戏时钟 理解 精灵 和 精灵组 项目准备 新建 飞机大战 项目 新建一个 h ...
- 2.pygame快速入门-绘制图像
介绍 在游戏中能够看到的游戏元素大都是图像 图像文件初始是保存在磁盘上的,如果需要使用,第一步就需要被加载到内存 要在屏幕上看到某一个图像的内容,需要按照三个步骤 使用pygame.image.loa ...
- 5.pygame快速入门-精灵和精灵组
在之前案例中,图像加载.位置变化.绘制图像都需要编写代码分别处理 pygame提供了两个类简化开发步骤 pygame.sprite.Sprite #精灵,存储图像数据image和位置rect的对象 p ...
- 3.pygame快速入门-游戏循环及动画实现
游戏循环的开始,意味着游戏的正式开始,游戏循环的作用如下 1.保证游戏不会直接退出 2.变化图像的位置--动画效果 3.检测用户交互--按键.鼠标等 游戏时钟 pyagame提供了一个pyga ...
- Springboot快速入门创建
maven构建项目 1.访问http://start.spring.io/,进入快速创建工程的主页 可参考下图所示: 2.选择构建工具Maven Project.Spring Boot版本1.3.6以 ...
- SpringBoot学习之快速入门创建
maven构建项目 1.访问http://start.spring.io/,进入快速创建工程的主页 可参考下图所示: 2.选择构建工具Maven Project.Spring Boot版本1.3.6以 ...
- 4.pygame快速入门-事件监听
事件event:游戏启动后,用户针对游戏的所有操作 监听:在游戏循环中,判断用户的具体操作 pygame中通过pygame.event.get()可以获得当前用户所做动作的事件列表 事件监听 wh ...
- Gradle学习系列之一——Gradle快速入门
这是一个关于Gradle的学习系列,其中包含以下文章: Gradle快速入门 创建Task的多种方法 读懂Gradle语法 增量式构建 自定义Property 使用java Plugin 依赖管理 构 ...
- Gradle学习系列之一——Gradle快速入门(转)
这是一个关于Gradle的学习系列,其中包含以下文章: Gradle快速入门 创建Task的多种方法 读懂Gradle语法 增量式构建 自定义Property 使用java Plugin 依赖管理 构 ...
随机推荐
- Apache DolphinScheduler&ShenYu(Incubating) 联合 Meetup,暖春 3 月与你相约!
云霞出海曙,梅柳渡江春. 2022 年的早春在疫情中显得格外生机勃勃,虽然接下来寒流仍有可能造访国内部分地区,但开源的世界,早已热闹非凡! 2022 年 3 月 26 日(星期六), Apache D ...
- PlayCover for mac-Mac 上全屏运行 iOS 应用程序
前言 如何在Mac电脑运行ios应用呢?PlayCover for Mac一款彻底解放苹果电脑的iOS软件安装工具,无需付费,操作简单,可以安装ipa文件,可以通过鼠标.键盘和控制器 在Mac上全屏运 ...
- 微软Azure配置中心 App Configuration (三):配置的动态更新
写在前面 我在前文: <微软Azure配置中心 App Configuration (一):轻松集成到Asp.Net Core>已经介绍了Asp.net Core怎么轻易的接入azure ...
- 【PostgreSQL】PostgreSQL 15移除了Stats Collector
试用即将发行的PostgreSQL 15的人会发现少了一个后台进程: postgres 1710 1 0 04:03 ? 00:00:00 /usr/pgsql-15/bin/postmaster ...
- 【读书笔记】C#高级编程 第三章 对象和类型
(一)类和结构 类和结构实际上都是创建对象的模板,每个对象都包含数据,并提供了处理和访问数据的方法. 类和结构的区别:内存中的存储方式.访问方式(类是存储在堆上的引用类型,结构是存储在栈的值类型)和它 ...
- Fast.Framework ORM 于中秋节后 正式开源
Fast Framework 作者 Mr-zhong 开源项目地址 https://github.com/China-Mr-zhong/Fast.Framework QQ交流群 954866406 欢 ...
- harbor高可用部署
文章转载自:https://blog.csdn.net/networken/article/details/119704025 harbor高可用简介 harbor目前有两种主流的高可用方案: 多ha ...
- 18个一线工作中常用的Shell脚本
1.检测两台服务器指定目录下的文件一致性 #!/bin/bash ###################################### 检测两台服务器指定目录下的文件一致性 ######### ...
- Redis从入门到高级笔记【涵盖重点面试题】
NoSQL数据库 DBEngines网站中会统计目前数据库在全世界的排名 1.1 什么是NoSQL 最常见的解释是"non-relational",很多人说它是"Not ...
- Go设计模式学习准备——下载bilibili合集视频
需求 前段时间面试,被问到设计模式.说实话虽然了解面向对象.多态,但突然被问到设计模式,还要说清解决什么问题,自己是有些懵的,毕竟实习主要工作是在原项目基础进行CRUD,自己还是没有深度思考,所以只能 ...