zoukankan      html  css  js  c++  java
  • PYGAME学习笔记_01

    • 01_使用PYGAME创建图形窗口
      • 1.1_游戏的初始化和退出
        • pygame.init() 写入并初始化所有PYGAME模块,使用其他模块之前,必须先调用init方法
        • pygame.quit() 卸载所有pyfame模块,游戏结束之前调用
      • 1.2_游戏中的坐标系
        • 远点在左上角
        • x轴水平方向向右
        • y轴垂直方向向下
        • 游戏中所有可见元素都是以矩形区域来描述位置:(x,y) (width,height)
        • pygame.Rect类用与描述矩形区域:Rect(x,y,width,height)
      • 1.3_创建游戏主窗口
        • pygame.display.set_mode() 初始化游戏显示窗口
        • pygame.display.update() 刷新屏幕内容显示,稍后使用
        • set_mode(resolution=(0,0),flags=0,depth=0)
          • resolution:指定屏幕的“宽”和“高”,默认创建的窗口大小和屏幕大小一样
          • flags:参数指定屏幕的附加选项,例如是否全屏,默认不需要传递
          • depth:参数表示颜色的位数,默认自动分配
          • 返回值:必须要记录,因为后续图像绘制都基于这个返回结果
      • 1.4_简单的游戏循环
        • 为了维持游戏程序不退出,通常会在游戏程序中增加一个游戏循环,即一个无限循环
        • while True: pass
    • 02_理解图像并实现图像绘制
      • 使用pygame.image.load()加载图像的数据
        • “.”表示当前路径:“./Image/background.png”
      • 使用游戏屏幕对象,调用blit方法将图像绘制到指定位置
      • 调用pygame.display.update()方法更新整个屏幕的显示
        • 可以在screen对象完成所有blit方法后,统一调用一次display.update方法
    • 03_理解游戏循环和游戏时钟
      • 3.1_游戏中的动画实现原理
        • 类似电影,快速在屏幕上绘制图像,每秒绘制若干帧(frame)
      • 3.2_游戏循环
        • 设置刷新帧率
        • 检测用户交互
        • 更新所有图像位置
        • 更新屏幕显示
      • 3.3_游戏时钟
        • pygame.time.Clock
          • 在游戏初始化创建一个时钟对象
          • 在游戏循环中让时钟对象调用tick(帧率) 方法
            • tick方法会根据上次被调用的时间,自动设置游戏循环中的延时
      • 3.4_英雄的简单动画实现
        • 修改飞机位置,先重新绘制背景,再绘制飞机,最后update更新显示
      • 3.5_在游戏循环中监听事件
        • pygame.event.get()
          • 捕获事件“列表”,可以利用len()判断
  • 相关阅读:
    61. 最长不含重复字符的子字符串
    60. 礼物的最大价值 (未理解)
    59. 把数字翻译成字符串
    58. 把数组排成最小的数
    57. 数字序列中某一位的数字 (不懂)
    spring data jpa 官方文档
    idea 编译报错 源发行版 1.8 需要目标发行版 1.8
    idea maven 依赖报错 invalid classes root
    solr
    spring boot 官方文档
  • 原文地址:https://www.cnblogs.com/chriswong/p/10338863.html
Copyright © 2011-2022 走看看