zoukankan      html  css  js  c++  java
  • 吴裕雄--天生自然python学习笔记:python 用pygame模块游戏开发

    游戏开发在软件开发领域占据了非常重要的位直。游
    戏开发需要用到的技术相当广泛,除了多媒体、图片、动
    画的处理外,程序设计更是游戏开发的核心内容。
    Py game 是为了让 Python 能够进行游戏开发而发展出
    来的包,通过它, Python 可以实现对音效、音乐、图片、
    动画的控制,可以说这是一个功能强大而完整的包。
    Pygame 是专门为游戏开发而推出的 Python 包,它是从 Simple Directmedia Layer 
    CS DL) 延伸而来的。 SDL 与 DirectX 类似,都可通过简练的方式来实现对声音、图
    片或视频的控制,井大幅简化了程序代码,使游戏开发工作更为容易 。
    Pygame 的基本架构
    在开发 Pygame 程序之前,我们首先要导入
    Pygame 包,语法为:
    import pygame
    然后对 Pygame 进行初始化(启动),语法为:
    pygame.init()
    接着再创建绘图窗口作为图形显示区域,语法为:

    例如,创建一个宽 640 、高 320 的绘图窗口,井保存至 screen 变量 :

    Py game 包的 disp lay.set_caption 方法可设置窗口标题,例如:

    通常情况下, 图形并不是直接画在绘图窗口中,而是在绘图窗口创建一块与绘图窗口同样大小的画布,然后将图形画在画布上 。 创建画布的语法为:

    Surface 方法可创建画布, screen.get_size ()方法可取得绘图窗口大小,因此画布
    会填满绘图窗口 。 画布变量的 convert 方法可为画布创建一个副本,加快画布在绘图
    窗口的显示速度。例如创建 background 画布变量 :

    画布变量的 fill 方法的功能是为画布填充指定颜色。例如设定画布为红色 :

    创建画布后井不会在绘图窗口中显示,需以窗口变量 的 bl it 方法绘制于窗口中,
    语法为:

    例如,把 background 画布从绘图窗口左上角(0,0)开始绘制,覆盖整个窗口:

    最后更新绘图窗口,才能显示绘制的图形,语法为:

     

    import pygame
    
    pygame.init()  #启动Pygame
    screen = pygame.display.set_mode((640, 320))  #建立绘图窗口
    
    pygame.display.set_caption("基本架构")  #绘图窗口标题
    background = pygame.Surface(screen.get_size())  #建立画布
    background = background.convert()
    background.fill((255,255,255))  #画布为白色
    screen.blit(background, (0,0))  #在绘图窗口绘制画布
    pygame.display.update()  #更新绘图窗口
    
    running = True
    while running:  #创建循环来侦测鼠标事件
        for event in pygame.event.get():
            if event.type == pygame.QUIT:  #用户单击关闭按钮
                running = False
    pygame.quit()  #关闭绘图窗口

  • 相关阅读:
    假期编程
    VC++ MFC Progress Control 进度条
    MFC禁止窗口最大化按钮和禁止改变窗口大小
    VC++ MFC CheckBox
    VC++ 复制整个文件夹
    VS2010 MFC 动态编译以静态编译发布
    VC++ 注册表
    VC++ 删除文件夹
    VC++ MFC 文件处理ANSI
    VC++ MFC Form界面创建和修改总结
  • 原文地址:https://www.cnblogs.com/tszr/p/12035756.html
Copyright © 2011-2022 走看看