粤教版B版八下(Python)3.3飞翔的小鸟 课件+教案+素材

资源下载
  1. 二一教育资源

粤教版B版八下(Python)3.3飞翔的小鸟 课件+教案+素材

资源简介

素材要和py文件放在一个文件夹里面
界面设计
import pygame
import random
import sys
pygame.init()# 设置背景
screen = pygame.display.set_mode((288, 512))# 屏幕大小
background = pygame.image.load("assets/background.png")# 背景图片
pygame.display.set_caption("Flappy Bird")# 标题
bgm = pygame.mixer.Sound('sound/bgm.wav')# 设置背景音乐
channel_1 = pygame.mixer.Channel(1)# 设置背景音乐
channel_1.play(bgm)# 设置背景音乐
pic = pygame.image.load('assets/0.png')# 加载小鸟图片
keep_going = True
clock = pygame.time.Clock()
# 运行
while keep_going:
for event in pygame.event.get():
if (event.type == pygame.QUIT):
keep_going = False
screen.blit(background, (0, 0))# 显示背景图片
screen.blit(pic, (100, 100))
pygame.display.update()
clock.tick(60)
pygame.quit()
控制小鸟上下飞翔
import pygame
import random
import sys
class Bird(pygame.sprite.Sprite):#定义小鸟的属性(类)
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.birdSprites = pygame.image.load("assets/0.png")
self.birdX = 50 # 初始x坐标
self.birdY = 100 # 初始y坐标
self.jumpSpeed = 7 # 跳跃速度
self.gravity = 0.3 #下坠速度
self.rect = self.birdSprites.get_rect()
self.rect.center = (self.birdX, self.birdY)
def birdUpdate(self):#计算小鸟新位置
self.jumpSpeed -= self.gravity
self.birdY -= self.jumpSpeed
self.rect.center = (self.birdX, self.birdY)
pygame.init()# 设置背景
screen = pygame.display.set_mode((288, 512))# 屏幕大小
background = pygame.image.load("assets/background.png")# 背景图片
pygame.display.set_caption("Flappy Bird")# 标题
bgm = pygame.mixer.Sound('sound/bgm.wav')# 设置背景音乐
channel_1 = pygame.mixer.Channel(1)# 设置背景音乐
channel_1.play(bgm)# 设置背景音乐
pic = pygame.image.load('assets/0.png')# 加载小鸟图片
newBird = Bird()#初始化界面,创建小鸟,文字对象
keep_going = True
clock = pygame.time.Clock()
#运行
while keep_going: # 主循环
for event in pygame.event.get():
if event.type == pygame.QUIT:
keep_going = False
if (event.type == pygame.MOUSEBUTTONDOWN):#侦听鼠标点击事件
newBird.jumpSpeed = 7
channel_2 = pygame.mixer.Channel(2)
screen.blit(background, (0, 0))
screen.blit(newBird.birdSprites, newBird.rect)
newBird.birdUpdate()
pygame.display.update()
clock.tick(60)
pygame.quit()
让小鸟拍动翅膀
import pygame
import random
import sys
class Bird(pygame.sprite.Sprite):#定义小鸟的属性(类)
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.birdSprites = [pygame.image.load("assets/0.png"),
pygame.image.load("assets/1.png"),
pygame.image.load("assets/2.png")]
self.a = 0 #初始显示动作0.png
self.rect = self.birdSprites[self.a].get_rect()
self.birdX = 50 # 初始x坐标
self.birdY = 100 # 初始y坐标
self.jumpSpeed = 7 # 跳跃速度
self.gravity = 0.3 #下坠速度
self.rect.center = (self.birdX, self.birdY)
def birdUpdate(self):#计算小鸟新位置
self.jumpSpeed -= self.gravity
self.birdY -= self.jumpSpeed
self.rect.center = (self.birdX, self.birdY)
if self.jumpSpeed < 0: # 当y向量<0时,鸟下坠,显示图片1.png
self.a = 1
if self.jumpSpeed > 0: # 当y向量>0时,鸟上升,显示图片2.png
self.a = 2
pygame.init()# 设置背景
screen = pygame.display.set_mode((288, 512))# 屏幕大小
background = pygame.image.load("assets/background.png")# 背景图片
pygame.display.set_caption("Flappy Bird")# 标题
bgm = pygame.mixer.Sound('sound/bgm.wav')# 设置背景音乐
channel_1 = pygame.mixer.Channel(1)# 设置背景音乐
channel_1.play(bgm)# 设置背景音乐
pic = pygame.image.load('assets/0.png')# 加载小鸟图片
newBird = Bird()#初始化界面,创建小鸟,文字对象
keep_going = True
clock = pygame.time.Clock()
#运行
while keep_going: # 主循环
for event in pygame.event.get():
if event.type == pygame.QUIT:
keep_going = False
if (event.type == pygame.MOUSEBUTTONDOWN):#侦听鼠标点击事件
newBird.jumpSpeed = 7
channel_2 = pygame.mixer.Channel(2)
fly = pygame.mixer.Sound('sound/fly.WAV')#设置飞行音效
channel_2.play(fly)#设置飞行音效,在频道2播放
screen.blit(background, (0, 0))
screen.blit(newBird.birdSprites[newBird.a], newBird.rect)
newBird.birdUpdate()
pygame.display.update()
clock.tick(60)
pygame.quit()(共20张PPT)
第三章
第三节 飞翔的小鸟
粤教B版 八年级下




新知导入
李鸣在商场看到弟弟控制着一只很有趣的小鸟穿越障碍。操作规则很简单,控制小鸟向上飞或向下飞,穿越管道障碍就能得分(如图3-19所示)。于是他想:“我能不能用Python来设计一个飞翔的小鸟呢 ”为此,李鸣开始琢磨起来。
(1)“飞翔的小鸟”的核心功能是什么
(2)如何从核心的功能出发增加游戏的复杂度和可玩性





开发一个软件,很多时候都是从最基本的功能开始实现,然后慢慢地完善和增加功能。那么“飞翔的小鸟”游戏程序应该包含哪些最基本的功能呢 我们把游戏中一些可有可无的内容去掉,剩下不可或缺的部分就是最基本的核心功能。


任务探究


根据教材配套资源中给出的图片和代码,先让小鸟飞起来,再设置背景和音乐,最后通过“小鸟”类来控制小鸟上下飞翔和拍动翅膀等动作效果。
新知讲解
一、分析问题
李鸣经过一番思考,认为小鸟至少需要实现两个动作,一个是鼠标点击后向上飞行,另外一个是向下坠落。在“飞翔的小鸟”界面中,主要涉及背景图片、音乐、小鸟翅膀拍动的实现。
1.功能与界面分析
新知讲解
一、分析问题
pygame是专为游戏编程开发的第三方库,和海龟库―样具有可视化的优点,是制作动画的完美选择。pygame 官网上面有非常多的基于pygame制作的项目。
2.实现分析
新知讲解
一、分析问题
我们通过一个简单的程序来学习pygame的程序结构,请注意理解程序中的注释。
Python的画布原点是在左上角,然后X轴和Y轴的正方向分别向右和向下,所以我们在程序中定义的小鸟的初始坐标为( 100,100)会显示图3-22中小鸟出现的位置。
2.实现分析
新知讲解
一、分析问题
程序实现过程分成三个步骤:首先是设置基础界面,包含小鸟图片、背景图片和音乐。接着实现对小鸟的控制,让小鸟能够上下移动。最后,设置小鸟飞行动作,如表3-8所示。
2.实现分析


任务探究


二、界面设置
①设置游戏背景
②设置游戏音乐
③设置小鸟显示
新知讲解
二、界面设置
1.设置游戏背景
首先完成库的导入和背景的设置。背景图片的尺寸为288像素×512像素,所以我们按照该尺寸设置屏幕大小。背景图片路径是assets/background.png,引用的时候要注意加上文件名称。
新知讲解
二、界面设置
2.设置游戏音乐
背景音乐路径在sound/bgm.wav,我们把该声音设置在频道1进行播放。
新知讲解
二、界面设置
3.设置小鸟显示
我们使用pygame.image加载小鸟图片文件。
新知讲解
二、界面设置
4.运行程序与效果
添加以下程序到末尾,即可实现界面设置。其运行效果如图3-23所示。
新知讲解
三、控制小鸟上下飞翔
Bird类包含两个函数,一个是__init_函数,用来初始化小鸟的坐标、跳跃速度、重力因素和图片。另外一个函数是birdUpdate函数,用来更新小鸟每个时刻的新位置。
1.实现小鸟类“class Bird”
新知讲解
三、控制小鸟上下飞翔
pygame 中鼠标侦听事件为pygame.MOUSEBUTTONDOWN,使用if条件判断捕捉鼠标点击事件。捕捉到后我们给小鸟向上的速度,让小鸟往上飞行。如果不点击,则小鸟会由于重力因素逐渐减速最后向下飞行。修改运行程序代码,添加鼠标侦听事件:
2.实现“小鸟”类“class Bird”的鼠标侦听
新知讲解
四、让小鸟拍动翅膀
1.在“class Bird”类中设置小鸟动作图片
小鸟飞翔的动作一共分解为三个图片,分别是assets文件夹的“0.png'“1.png”“2.png”。我们需要在“class Bird”类的函数_init__中进行初始化,如下所示:
新知讲解
四、让小鸟拍动翅膀
2.在“class Bird”中设置小鸟移动动作
我们在更新小鸟的时候,根据jumpSpeed来判断小鸟正在向上还是向下运动。如果向上运动就显示“1.png”;否则,显示“2.png”。
新知讲解
四、让小鸟拍动翅膀
3.设置小鸟动作音效
课堂总结


https://www.21cnjy.com/help/help_extract.php中小学教育资源及组卷应用平台
粤教版B信息技术八年级下册教学设计
课题 第三节 飞翔的小鸟 单元 第三单元 学科 信息技术 年级 八
学习目标 1. 知识与技能 (1)懂得“飞翔的小鸟”的核心功能是什么。(2)了解如何从核心的功能出发增加游戏的复杂度和可玩性。2.过程与方法: (1)通过编写程序掌握设置背景、音乐和显示的过程。 (2)通过使用类“class Bird”等相关函数和鼠标侦听实现程序。 3. 情感态度与价值观: (1) 激发学生学习计算机程序的热情。 (2) 激发学生对计算机编程项目的创想。
重点 Pygame库的使用和类“class Bird”的使用
难点 Pygame库的使用和类“class Bird”的使用
教学过程
教学环节 教师活动 学生活动 设计意图
导入新课 李鸣在商场看到弟弟控制着一只很有趣的小鸟穿越障碍。操作规则很简单,控制小鸟向上飞或向下飞,穿越管道障碍就能得分(如图3-19所示)。于是他想:“我能不能用Python来设计一个飞翔的小鸟呢 ”为此,李鸣开始琢磨起来。(1)“飞翔的小鸟”的核心功能是什么 (2)如何从核心的功能出发增加游戏的复杂度和可玩性 学生思考回答 从情境导入,激发学生学习的兴趣,引出问题思考。
任务探究 开发一个软件,很多时候都是从最基本的功能开始实现,然后慢慢地完善和增加功能。那么“飞翔的小鸟”游戏程序应该包含哪些最基本的功能呢 我们把游戏中一些可有可无的内容去掉,剩下不可或缺的部分就是最基本的核心功能。根据教材配套资源中给出的图片和代码,先让小鸟飞起来,再设置背景和音乐,最后通过“小鸟”类来控制小鸟上下飞翔和拍动翅膀等动作效果。 学生动手,思考 以任务作为驱动,让学生有学习的动力。
讲授新课 一、分析问题 1.功能与界面分析 李鸣经过一番思考,认为小鸟至少需要实现两个动作,一个是鼠标点击后向上飞行,另外一个是向下坠落。在“飞翔的小鸟”界面中,主要涉及背景图片、音乐、小鸟翅膀拍动的实现。2.实现分析 pygame是专为游戏编程开发的第三方库,和海龟库―样具有可视化的优点,是制作动画的完美选择。pygame 官网上面有非常多的基于pygame制作的项目。二、界面设置1.设置游戏背景首先完成库的导入和背景的设置。背景图片的尺寸为288像素×512像素,所以我们按照该尺寸设置屏幕大小。背景图片路径是assets/background.png,引用的时候要注意加上文件名称。2.设置游戏音乐背景音乐路径在sound/bgm.wav,我们把该声音设置在频道1进行播放。设置小鸟显示我们使用pygame.image加载小鸟图片文件。4.运行程序与效果控制小鸟上下飞翔实现小鸟类“class Bird” Bird类包含两个函数,一个是__init_函数,用来初始化小鸟的坐标、跳跃速度、重力因素和图片。另外一个函数是birdUpdate函数,用来更新小鸟每个时刻的新位置。2.实现“小鸟”类“class Bird”的鼠标侦听pygame 中鼠标侦听事件为pygame.MOUSEBUTTONDOWN,使用if条件判断捕捉鼠标点击事件。捕捉到后我们给小鸟向上的速度,让小鸟往上飞行。如果不点击,则小鸟会由于重力因素逐渐减速最后向下飞行。修改运行程序代码,添加鼠标侦听事件:四、让小鸟拍动翅膀小鸟飞翔的动作一共分解为三个图片,分别是assets文件夹的“0.png'“1.png”“2.png”。我们需要在“class Bird”类的函数_init__中进行初始化,如下所示:2.在“class Bird”中设置小鸟移动动作我们在更新小鸟的时候,根据jumpSpeed来判断小鸟正在向上还是向下运动。如果向上运动就显示“1.png”;否则,显示“2.png”。3.设置小鸟动作音效 学生听讲学生思考回答 通过讲授让学生了解本节课的重难点。
自主学习 修改程序,运行程序 学生讨论完成任务 学生体验到了编程的快乐,更加喜欢编程。
课堂小结 第三节 飞翔的小鸟一、分析问题1.功能与界面分析2.实现分析二、界面设置1.设置游戏背景2.设置游戏音乐3.设置小鸟显示4.运行程序与效果 三、控制小鸟上下飞翔1.实现小鸟类“class Bird”2.实现“小鸟”类“class Bird”的鼠标侦听四、让小鸟拍动翅膀1.在“class Bird”类中设置小鸟动作图片2.在“class Bird”中设置小鸟移动动作3.设置小鸟动作音效
板书 第三节 飞翔的小鸟一、分析问题二、界面设置 三、控制小鸟上下飞翔四、让小鸟拍动翅膀
21世纪教育网 www.21cnjy.com 精品试卷·第 2 页 (共 2 页)
HYPERLINK "http://www.21cnjy.com/" 21世纪教育网(www.21cnjy.com)

展开更多......

收起↑

资源列表