首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用游戏学编程

学习编程是很快乐的事情。当我们自己开发出一套时下流行的游戏时,这满满的成就感比玩儿游戏本身高出了不知道会有多少倍。

接下来一段时间我们就python从0开始学习怎么开发 flappy brid 游戏。在学习之前,我们不需要有任何编程基础,只要会打开电脑上网即可。通过本系列课程的学习,同学们可以掌握python编程基础。能够自己动手开发一些自己喜欢的游戏。

在开始编程之前,让我们再看一下这个游戏怎么运行的吧。

看过flappy brid怎么玩儿之后,我们一起动手实现它。同学们按照下面的步骤完成本节课的学习。

安装python及IDE可以参考这个课程:

https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001374738150500472fd5785c194ebea336061163a8a974000

1. 怎么制作一个游戏

我们玩儿的游戏。从外观上看,包括:游戏背景、游戏角色、游戏声音、游戏动作几个模块。总结起来就是,我们的游戏角色在游戏背景上执行指定的动作,发出指定的声音。

用python编写游戏也是一样。我们首先设计好游戏大纲,把游戏大纲用python语言实现。然后填充好视觉图片和声音特效,我们的游戏就开发完成了。

2.pygame介绍

使用python开发游戏时,我们经常引入pygame库。什么是“库”呢?python库就是别人写好的一些完成特定功能的代码。就像我们手机安装的有各种各样的App,python也有各种各样的库。pygame就是python开发游戏常用的库。

我们为什么要使用python库呢?一些想计算器等简单的程序,我们只需要自己写代码就可以完成整个程序的开发。但是像我们玩儿的手机游戏、用的微信、QQ等程序都有比较复杂的功能,如果整个程序都有我们来开发。那会是几十万行代码的工作量,由于代码行数多,还容易引起bug。建筑工人盖楼时,我们不会在工地上自己做钢板瓷砖,而是用其他团队给我们生产好的瓷砖直接使用。我们写程序时也会经常使用其他团队开发的‘库’来简化我们的程序,通过引入库,我们可以和世界上任何一个程序员一起合作,协同开发。

pygame作为python的游戏库,具有 简单易用、功能完整、只需要少量代码即可完成游戏渲染等特点。是我们用python开发游戏的利器。

3.pygame安装

要想给python安装库,我们经常使用pip工具作为辅助。pip的安装方法如下。

1:用浏览器打开

https://files.pythonhosted.org/packages/ae/e8/2340d46ecadb1692a1e455f13f75e596d4eab3d11a57446f08259dee8f02/pip-10.0.1.tar.gz压缩包下载后解压到指定文件夹

2: 用命令行进入解压后的文件夹,运行python setup.py install命令,完成pip的安装

pip安装完成后,我们就可以使用python -m pip install -U pygame --user命令安装 pygame了。

4.pygame-helloworld

pygame库安装好后,我们就可以用python开发游戏了。我们打开pycharm,新建一个python文件,将下面的代码粘贴到文件中,我们的第一个游戏就制作完成了!虽然有些简单,但是也像模像样。

importsys,pygame

pygame.init()

width =320

height =240

speed = [2,2]

screen = pygame.display.set_mode([width,height])

ball = pygame.image.load("../assets/sprites/ball.gif")

ball_rect = ball.get_rect()

while True:

foreventinpygame.event.get():

ifevent.type == pygame.QUIT:

sys.exit()

ball_rect = ball_rect.move(speed)

print(ball_rect.left,ball_rect.right,ball_rect.top,ball_rect.bottom)

ifball_rect.left width:

speed[] = -speed[]

ifball_rect.top height:

speed[1] = -speed[1]

screen.fill([,,])

screen.blit(ball,ball_rect)

pygame.display.flip()

我们发现代码是由一行行英语句子来组成的,如果我们认识这些单词,阅读这些代码就相当简单了。编程大量的依靠数学和英语,我们一定要在学校里把数学和英语掌握好哦。

5. pygame核心模块介绍

6. FlappyBird让鸟儿动起来

接下来,我们就来开发FlappyBird游戏。这节课,我们先完成游戏背景、小鸟起飞的部分。

首先我们还是来看一下代码,再新建一个python文件,将下面的代码粘贴到文件中,点击运行。我们发现游戏背景和小鸟就出现了。当我们按下键盘的空格键,小鸟还会向上飞。

importsys

importpygame

frompygame.localsimport*

screenWidth =288

screenHeight =512

pygame.init()

pygame.display.set_caption('Flappy Bird')

fpsClock = pygame.time.Clock()

screen = pygame.display.set_mode((screenWidth,screenHeight))

background = pygame.image.load('../assets/sprites/background-day.png').convert()

player = pygame.image.load('../assets/sprites/redbird-upflap.png').convert_alpha()

playerX =int(screenWidth *0.2)

playerY =int((screenHeight - player.get_height()) /2)

while True:

screen.blit(background,(,))

screen.blit(player,(playerX,playerY))

foreventinpygame.event.get():

ifevent.type == QUIT:

pygame.quit()

sys.exit()

ifevent.type == KEYDOWNandevent.key == K_SPACE:

playerY = playerY -20

pygame.display.update()

fpsClock.tick(60)

好了,这节课就讲完了。本节我们首先复习了什么是python。什么是python的库。介绍了pygame,用pygame写了我们的第一个游戏。接下来,我们一起完成Flappy Brid游戏吧。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180715G07WK300?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券