【cocos2d-python】介绍 | 安装

cocos2d-python是python中最伟大的2D游戏引擎。

                                                                                                        ——鲁迅

鲁迅:6

        

        我之前也做过一个和cocos2d有关的专栏,都是因其质量极差,排版不堪入目。我觉得重写这个专栏,为各位带来一期更好的文章。

        这次做专栏的理由还是和上次差不多的,其重点就是国内对于这么好的一款游戏引擎的资料却这么少,为了让更多人可以学会认识这个游戏引擎,我也决定为这个游戏引擎写一系列的教程。

不过学想学做游戏一定要先把基本功打好,python还不能融会贯通的赶快却好好学一下再来,python还不会的可以看看我的一个专栏【Python不是大蟒蛇】,这个专栏是专门面向0基础的。

不多说,抓紧船,我这就带大家扬帆起航。

(这表情包似乎没什么关系。。。)

Ⅰ.cocos2d-python介绍

0x00 用什么做游戏

python这么受人青睐是因为有这丰富的第三方库,通过这些第三方库可以快速方便的开发出需要的程序。因此python游戏游戏开发也不例外,做为初学者,我们可以使用现成的第三方库库来就行游戏开发。

常用的python GUI库如下:

  •  Tkinter(python标准库)
  •  PyQt(应该是比较知名的了)
  • wxPython(没试过)

理论上,任何GUI库都可以制作游戏,但是毕竟不是专为游戏设计的,做起来就显得有些捉襟见肘了。因此专为制作游戏的库也就必不可少了。下面是一些常用的游戏库。

  • pygame(最常见的,国内教程中基本都是这个)
  • pyzero(pygame的封装)
  • cocos2d-python(国内对这个的教程少之又少,其功能却是遥遥领先)

pygame粉先别反驳我,听完我分析在反驳。

0x01 pygame与cocos2d的对比

cocos2d诞生于2008年,而pygame的诞生就更早了,pygame诞生于2000年,距今已有20多年的历史了,是一个非常经典的游戏引擎,有着庞大的用户群体,目前仍经久不衰,许多开发者将他作为游戏开发的入门。

cocos2d与pygame相比,Cocos2d的一大特色就是语法颗粒度较大,API更偏上层,其中的常见(Scene),层(Layer),导演(Director),动作(Action)等概念使游戏层级分化更加明显,更贴近现代游戏设计理念。有一个很好的比喻,cocos2d比python尺度更大,功能更华丽,更像是通往游戏王国的一个“梯子”,而pygame更像是一个“板凳”。(没有说pygame不好的意思哈)

下面是pygame与cocos2d区别的表格

pygamecocos2d
诞生时间2000年2008年
实现方式C语言+PythonPython
优点

语法颗粒度小,使用起来更加灵活;

大部分代码由C语言实现,性能方面不用说了;

文档及其丰富

 

语法颗粒度较大,易于实现复杂功能;

设计理念更贴近现代游戏;

支持OpenGL加速;

cocos2d家族庞大(姓cocos2d的一大堆)

缺点难以实现复杂功能文档少。。。

0x02 cocos2d简介

前面都在和其他引擎对比,终于可以好好介绍一下了!

官网:Cocos2D(可可斯2D) (los-cocos.github.io)

cocos2d-python的Logo如下:(额。。。官网不知道为什么访问不了,Logo。。)

本来是彩色的

与Pygame类似,Cocos2d同样也是一个用作2D游戏以及各种GUI应用程序开发的开源且跨平台的Python框架。不同于Pygame,Cocos2d完全是由Python语言编写的。原理层面上,Cocos2d是对Pyglet(同为Python 2D游戏库)的不完全封装,并使用OpenGL硬件加速绘图。

Cocos2d是由Ricardo Quesada等人于2008年开发的,由于Cocos2d诞生于Los Cocos(阿根廷地名),所以其最初的名称为Los Cocos,后来改为了Cocos2d。如今,Cocos2d官方的GitHub地址中仍然保留着它最初的名称。

如今,Cocos2d家族庞大、成员众多,除了Cocos2d Python以外,Cocos2d还包括Cocos2d-x、Cocos2d-html5、Cocos2d-XNA、Cocos2d-objc等,作为家族的第一个成员,在我们提到Cocos2d时,其实指的就是Cocos2d Python,不过有时为了与其他Cocos2d库区分开来,我们也经常称之为Cocos2d Python。鉴于本专栏只针对Cocos2d Python进行介绍,所以后文提到Cocos2d或者Cocos的地方均指的是Cocos2d Python。

对比Pygame,Cocos2d提供的语法更为上层,抽象程度更高,它把游戏抽象为导演、场景、层、动作等一些概念,大幅简化了游戏开发流程,逻辑上也比Pygame更为清晰,也更像是专门为游戏设计的,从而显得更加专业,这也是笔者喜欢Cocos2d的重要原因之一。

Ⅱ.cocos2d安装

0x00 环境要求

下列要求均来自cocos2d · PyPI

软件

  • python 3.6+ (备注:当然了,最好是高于3.8,笔者这里用的是3.10)

  • pyglet 1.4.10+, < 2.0 ( http://pyglet.org )

  • Linux, Windows or Mac OS/X

硬件:

  • 要执行某些效果,您需要一个带有以下功能的显卡:

    GL_EXT_framebuffer_object extension.

0x01 依赖关系

cocos2d的必备依赖包:

  • Six
  • Pyglet

粒子效果依赖于:

  • NumPy。

声音支持依赖于:

  •  FFmpeg;
  •  Pygame或SDL。

0x02 创建一个虚拟环境

为避免与其他的依赖与系统环境产生冲突,我这里使用的方式是使用PyCharm新建一个虚拟环境。

没有安装PyCharm和python需自行安装。

1)新建项目:

 

 点击创建即可。

2)安装cocos2d

我们安装有两个办法。

1.命令行安装

我们打开终端,并输入下面的指令即可安装cocos2d

pip install cocos2d -i https://pypi.tuna.tsinghua.edu.cn/simple

 

出现如下输出就成功了,失败的自行百度。

然后我们用如下指令验证

pip list

 

可以看到第三方库里多了cocos2d

2.使用PyCharm可视化工具安装

打开解释器设置

 

搜索软件包并安装

 

 

 我们已经成功安装了cocos2d,下节课我们将通过一个简单的例子来了解cocos2d。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值