[58.游戏开发框架(1):pygame简介] 零基础学python,简单粗暴

概述

  • pygame是基于Python语言的游戏开发框架;
  • 其底层核心算法来自C语言库的支持;
  • 官方文档地址:http://www.pygame.org/docs/

安装pygame

pip install pygame
  • 几个重要概念
  • Surface:表面,pygame框架中的一切绘制,都是在某个表面上进行的;
  • Sprite:精灵,拥有独立属性和行为的动画“角色”,一切自定义的游戏角色都必须以Sprite为父类;
  • 时钟与帧率:游戏界面动画的形成,本质上每秒几十次的重绘,帧率即每秒重绘的次数,时钟对象负责掐表和重绘;

常用API简介

  • init() #全局初始化
  • quit() #退出

Surface类

  • get_rect() #获得当前免表的矩形区域
  • aSurface.blit(bSurface,position) #在A表面上绘制B表面

Rect类

  • left / right #左右边界的x坐标
  • top / bottom #上下边界的x坐标
  • midtop #上边界正中央的坐标
  • width / height #宽高
  • collidepoint(event.pos) #检测事件是否发生在当前矩形区域内

mixer

  • init() #混音器初始化
  • pause() / unpause() #暂停和恢复声音
  • stop() #停止播放声音

mixer.music

  • load(“sound/game_music.ogg”) #加载背景音乐
  • set_volume(0.2) #设置音乐音量
  • play(-1) #无限循环播放
  • pause() / unpause() #暂停和恢复音乐
  • stop() #停止音乐播放

mixer.Sound

  • Sound(“sound/bullet.wav”) #创建音效对象
  • set_volume(0.2) #设置音效音量
  • play() #播放音效

display

  • set_mode(bg_size) #设置分辨率
  • set_caption(“飞机大战”) #设置标题
  • flip() #刷新界面

image

  • load(“images/background.png”).convert() #加载图片为表面对象
  • load(“images/me1.png”).convert_alpha() ##加载带透区域的图片为表面对象

time.Clock

  • Clock() #创建时钟对象
  • tick(60) #停留1/60秒

sprite.Group类

  • Group() #创建精灵容器
  • add(self, *sprites) #向容器中添加精灵

sprite.Sprite类

  • hitList = pygame.sprite.spritecollide(hero, enemyGroup, False, pygame.sprite.collide_mask)#检测hero是否与enemyGroup中的任意对象发生碰撞,返回enemyGroup中的碰撞对象列表, # False代表这些对象不会从enemyGroup中移除 # 最后一个参数为碰撞检测函数,此处使用系统提供的碰撞检测函数,其算法为检测非透明区域是否发生重叠 其作用必须配合精灵的非透明区域声明,如:msprite.mask = pygame.mask.from_surface(msurface)

font.Font类

  • Font(“font/font.ttf”, 30) #创建字体对象
  • render(self, text, antialias, color, background=None) #将text绘制在bg上

event类

  • get() #获得当前帧的所有事件
  • get_pressed() #获得当前帧按下的所有按键
  • type #事件类型
  • key #按下的按键
  • pos #事件发生的位置

key

  • get_pressed() ##获得当前帧按下的所有按键

draw

  • line(Surface, color, start_pos, end_pos, width=1) #在表面上绘制一条线段

mask

  • from_surface(surface) #从表面中加载碰撞遮罩

常量

—–事件类型—–

  • QUIT #退出事件
  • MOUSEBUTTONDOWN #鼠标按下事件
  • MOUSEBUTTONUP #鼠标松开事件
  • MOUSEMOTION #鼠标移动事件
  • KEYDOWN #键盘按下事件
  • K_SPACE #空格键

—–方向键—–

  • K_UP
  • K_DOWN
  • K_LEFT
  • K_RIGHT

—–字符键—–

  • K_w
  • K_s
  • K_a
  • K_d
版权声明:本文为博主原创文章,未经博主允许不得转载。https://my.csdn.net/pangzhaowen
阅读更多
个人分类: python语法
想对作者说点什么? 我来说一句

零基础学Python》PPT

2015年10月12日 2.61MB 下载

1.python简介

2015年10月12日 356KB 下载

零基础学Python

2018年03月03日 91.83MB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭