• 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()判断

PYGAME学习笔记_01的更多相关文章

  1. pygame学习笔记(3)——时间、事件、文字

    转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 1.运动速率    上节中,实现了一辆汽车在马路上由下到上行驶,并使用了pygame.time.delay(200 ...

  2. PyGame学习笔记之壹

    新建窗口 代码 '''PyGame学习笔记之壹''' import pygame # 引入 PyGame 库 pygame.init() # PyGame 库初始化 screen = pygame.d ...

  3. pygame学习笔记(4)——声音

    转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi pygame.mixer是一个用来处理声音的模块,其含义为“混音器”.游戏中对声音的处理一般包括制造声音和播放声音 ...

  4. pygame学习笔记(5)——精灵

    转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 据说在任天堂FC时代,精灵的作用相当巨大,可是那时候只知道怎么玩超级玛丽.魂斗罗,却对精灵一点也不知.pygame ...

  5. pygame学习笔记(1)——安装及矩形、圆型画图

    pygame是一个设计用来开发游戏的python模块,其实说白了和time.os.sys都是一样的东东.今天开始正式学习pygame,下载地址:www.pygame.org.下载后安装完成即可,在py ...

  6. pygame学习笔记

    pygame参考文档pdf版:pygame API html版 pygame API 石头剪子布的简单小游戏,待改进的地方,自适应大小.感兴趣的小伙伴可以依据get_surface()返回值(即当前窗 ...

  7. pygame学习笔记(6)——一个超级简单的游戏

    转载请注明:@小五义  http://www.cnblogs.com/xiaowuyi 学了这么长时间的Pygame,一直想写个游戏实战一下.看起来很简单的游戏,写其来怎么这么难.最初想写个俄罗斯方块 ...

  8. pygame学习笔记(2)——从画点到动画

    转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 1.单个像素(画点)利用pygame画点主要有三种方法:方法一:画长宽为1个像素的正方形 #@小五义 http:/ ...

  9. Lua的热更新学习笔记_01

    热更新的的实现方式 1.使用lua脚本编写游戏的UI或者其他的逻辑 2.使用C#的反射技术 3.使用C#Light AssetBundle是什么? 1.unity提供一个资源更新技术,就是通过Asse ...

随机推荐

  1. Dubbo近况

    刚下班看到开发者头条上一篇讲dubbo前世今生的文章,总结的不错,摘录一下. 从2012年10月23日Dubbo 2.5.3发布后,在Dubbo开源将满一周年之际,阿里基本停止了对Dubbo的主要升级 ...

  2. POJ1743 Musical Theme 最长重复子串 利用后缀数组

    POJ1743 题目意思是求不重叠的最长相同变化的子串,输出该长度 比如1 2 3 4 5 6 7 8 9 10,最长长度为5,因为子串1 2 3 4 5 和 6 7 8 9 10变化都一样的 思路: ...

  3. ibwebrtc-audio-processing-devel

    http://ftp.ussg.iu.edu/cygwin/x86_64/release/webrtc-audio-processing/libwebrtc-audio-processing-deve ...

  4. UEditor动态添加图片访问路径前缀

    在使用UEditor上传图片时发现上传图片后在编辑器中不能显示上传的图片,在这里是需要在jsp/config.json中设置图片访问路径前缀,即项目的根路径,在config.json只能填写字符串的配 ...

  5. springAOP配置XML方式配置切面报错error at ::0 formal unbound in pointcut

    [错误配置文件] <aop:config> <aop:pointcut expression="execution(* net.fifteenho.service.impl ...

  6. Tomcat优化和JVM分析工具

    Tomcat的常见优化和JVM常见分析工具 Tomcat的常用优化配置 (1) 内存空间: /etc/sysconfig/tomcat JAVA_OPTS="-server -Xms32g ...

  7. bzoj 2442: [Usaco2011 Open]修剪草坪【单调栈】

    设f[i]为i不选的最小损失,转移是f[i]=f[j]+e[i[(i-j-1<=k) 因为f是单调不降的,所以f[j]显然越靠右越好因为i-j-1<=k的限制,所以单调栈需要弹栈 #inc ...

  8. bzoj 1637: [Usaco2007 Mar]Balanced Lineup【瞎搞】

    我是怎么想出来的-- 把种族为0的都变成-1,按位置x排升序之后,s[i]表示种族前缀和,想要取(l,r)的话就要\( s[r]-s[l-1]==0 s[r]==s[l-1] \),用一个map存每个 ...

  9. 指向“”的 script 加载失败

    今天遇到了一个非常奇怪的问题:在某个同时的电脑上,所有浏览器无法打开某个页面,F12查看控制台,发现有一个黄色的 指向“xxxx.js”的 <script> 加载失败 的提示.该外部js文 ...

  10. phpAnalysis调试接口

    phpAnalysis是一款轻量级非侵入式PHP应用性能分析器,适用于开发.测试及生产环境部署使用,方便开发及测试工程师诊断性能问题: 通过tideways收集PHP程序单步运行过程中所有的函数调用时 ...