【Python基础】Pygame游戏开发基础

本文收录于 《一起学Python趣味编程》专栏,从零基础开始,分享一些Python编程知识,欢迎关注,谢谢!

一、前言

本文介绍Pygame游戏开发编程基础知识。

  • 什么是Python?

    Python是由荷兰人吉多·范罗苏姆于1990年代初设计的一门编程语言,应用领域非常广泛,尤其在数据分析、人工智能、游戏开发等领域,已经成为最受欢迎的程序设计语言之一,比较适合新手学习。

    这门编程语言之所以叫Python,意为大蟒蛇,是因为当时有一个电视喜剧《蒙提·派森的飞行马戏团》(Monty Python’s Flying Circus)在热播,很受大家喜欢。

    Python语言标准库官方使用手册:https://docs.python.org/zh-cn/3/library/

  • 什么是Pygame?

    Pygame 是一个专门用来开发游戏的 Python 模块,是一个免费、开源的第三方软件包,主要为开发、设计 2D 电子游戏而生,比如扫雷、纸牌游戏、贪吃蛇、超级马里奥、飞机大战等等。

    Pygame官网地址:https://www.pygame.org/tags/all

二、Pygame如何安装

首先,我们需要安装Pygame模块。

打开Pycharm终端命令行窗口,输入“pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pygame”,进行安装Pygame模块。

在这里插入图片描述

如果界面输出successfully installed pygame,则说明安装成功了。

三、Pygame基础知识脑图

Pygame基础知识脑图整理如下:
在这里插入图片描述

3.1 Pygame Display显示模块

​ Pygame 使用pygame.display显示模块中的方法创建游戏的主窗口;
​ pygame.display.set_mode(size=(),flags=0),创建游戏的主窗口,并设置窗口大小;
​ pygame.display.set_caption(‘name’),设置窗口标题名称;
​ pygame.display.flip(),更新窗口屏幕内容;

示例代码如下:

# 导入所需的模块
import sys
import pygame

# 使用pygame之前必须初始化
pygame.init()

# 设置主屏窗口
screen = pygame.display.set_mode((400, 600))

# 设置窗口的标题
pygame.display.set_caption('pygame demo')

# 引入字体类型
f = pygame.font.Font('C:/Windows/Fonts/simhei.ttf', 50)

# 生成文本信息,第一个参数文本内容;第二个参数字体是否平滑;第三个参数字体颜色设置红色;第四个参数字体背景颜色设置为蓝色;
text = f.render("hello world!", True, (255, 0, 0), (0, 0, 255))

# 获得显示对象的rect区域坐标
textRect = text.get_rect()
# 设置显示对象居中
textRect.center = (200, 200)

# 将准备好的文本信息,绘制到主屏幕 Screen 上。
screen.blit(text, textRect)

# 固定代码段,实现点击"X"号退出界面的功能,几乎所有的pygame都会使用该段代码
while True:
    # 循环获取事件,监听事件状态
    for event in pygame.event.get():
        # 判断用户是否点了"X"关闭按钮,并执行if代码段
        if event.type == pygame.QUIT:
            # 卸载所有模块
            pygame.quit()
            # 终止程序,确保退出程序
            sys.exit()
    pygame.display.flip()  # 更新屏幕内容

代码运行效果图如下:
在这里插入图片描述

3.2 Pygame Surface创建图像

​ Pygame 针对文本、图像、颜色提供了不同模块来生成它们各自的 Surface 对象;
​ surface=pygame.Surface(size=(width,height),flags,depth),创建一个图像surface对象;
​ pygame.image.load(“图片路径”).convert(),从外部加载图像;
​ pygame.Surface.blit(),将一个图像(Surface 对象)绘制到另一个图像上;
​ pygame.Surface.convert(),修改图像(Surface 对象)的像素格式;
​ pygame.Surface.fill(),使用纯色填充 Surface 对象;

示例代码如下:

import pygame

# 引入pygame中所有常量,比如 QUIT
from pygame.locals import *

# 使用pygame之前必须初始化
pygame.init()

# 设置主屏窗口大小
screen = pygame.display.set_mode((400,600))

# 设置窗口的标题
pygame.display.set_caption('pygame demo')

# 加载一张图片
image_surface = pygame.image.load("C:/Users/kenny/Desktop/BLOG2024/image/back3.jpeg").convert()

# 使用纯色填充 Surface 对象,
# 其中,rect(left,top,width,height)指定图片上某个区域,special_flags功能标志位,指定颜色混合模式,默认为 0 表示用纯色填充
image_surface.fill((0,0,255),rect=(100,100,100,50),special_flags=0)

# 复制并移动 Surface 对象,其中,参数表示图像在水平、垂直方向上的偏移量,以左上角为坐标原点
image_surface.scroll(100,50)

# 无限循环,让窗口停留
while True:
    for event in pygame.event.get():
        if event
  • 19
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

姑苏老陈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值