贪吃蛇、迷宫、吃豆人、扫雷、Flappy Bird…这些游戏可以是非常经典,甚至伴随着很多人的童年回忆。那么,你是否想过自己开发一款专属游戏?是否思考过开发这样一款游戏需要多少工作量?
游戏开发在互联网行业算是一个门槛较高的方向,因此,对于非专业的游戏开发者来说,开发一款游戏一直是一件让人望而却步的事情,遥不可及。
那么,今天要介绍的这款Python项目就可以轻松实现你成为游戏开发者的想法,实现前面提到的这些经典游戏只需要50-100代码即可完成。
free-python-games
两年前,我姐就曾表达了希望我能够抽空教外甥学习编程的想法。对于这份嘱托,我一直放在心上,但是却迟迟找不到合适的方向。
即便是从事几年互联网行业的我来说都对编程都觉得枯燥乏味,何况一个一无所知的孩子呢?
但是,free-python-games这个项目让我眼前一亮,终于找到了一个合适的Python学习项目。当年,它对于成年人同样适用、有价值。
我之所以介绍这款项目,不单单是它实现了让人回到童年的经典游戏。更重要的原因是它能够作为一个Python学习、锻炼探索和理解能力的一款好工具。
free-python-games和我们接触的大多数Python库那样让人如同垒积木一样去实现一项功能不同,你需要去静下心来死锁一款游戏的主题,同时需要去实现游戏中的每一个策略。
我觉得这样比拿来即用的搬运工作要有趣很多,且更加具有挑战。
以我们熟知的贪吃蛇为例,当然我们目前对于这款游戏的主题和玩法已经非常清楚了,通过方向键控制蛇的移动,每当吃到一颗食物蛇就会变长,如果撞到墙则游戏结束…
那么,对这款游戏进行拆解,就需要思考几个问题:
看到这里你就会发现,它并不像我们大多数情况下使用Python那样,np.linespace
、plt.plot
、tf.Session
,它更像是LeetCode上面的算法题,需要你从零开始去实现一款游戏,用心去思考游戏实现过程中的每个细节。而在这个过程中对人的提升会非常迅速。
下面就以贪吃蛇这个游戏为例,介绍它的源码和实现过程,来回答上述4个问题。
首先,导入需要的模块,
from turtle import *
from random import randrange
from freegames import square, vector
<< · Back Index ·>>
上一篇
Hi,大傢好,我是胡子哥huzi888(WX:hzghuzi888),我想瞭很久每每想給大傢推薦一個自己非常喜歡的店,但總是想再等等,再等...