01.helloworld--标签

"""参考网站:http://python.cocos2d.org/doc/programming_guide/index.html"""
import cocos class HelloWord(cocos.layer.Layer): # 继承层 def __init__(self): super(HelloWord, self).__init__() # 创建一个标签来显示文字,设置标签的字体,位置和对齐方式: label = cocos.text.Label( 'Hello,world', font_name='Times New Roman', font_size=32, anchor_x='center', # 锚点x anchor_y='center' ) # 标签位置 label.position = 320, 240 self.add(label) # 作为子类添加到层 def main(): # 初始化导演 cocos.director.director.init() hello_layer = HelloWord() # 创建一个包含HelloWorld图层作为子场景的场景 main_scene = cocos.scene.Scene(hello_layer) # 运行场景 cocos.director.director.run(main_scene) if __name__ == '__main__': main()

cocos2d是用于构建2D游戏,演示和其他图形/交互应用程序的框架。

cocos2d简化了以下领域的游戏开发:
  • 流控制:轻松管理不同场景之间的流控制
  • 精灵:快速简便的精灵
  • 动作:告诉精灵您想要他们做什么。可组合动作,例如移动,旋转,缩放等
  • 效果:像波浪,旋转,镜头等效果
  • 粒子系统:爆炸,烟花,流星,烟雾等
  • 平铺地图:支持矩形和六边形平铺地图
  • 碰撞:基本的纯python碰撞支持
  • 过渡:使用样式从一个场景移到另一个场景
  • 菜单:内置类来创建菜单
  • 文字渲染
  • 文档:编程指南+ API参考+许多简单的测试显示如何使用它
  • 内置python解释器:用于调试
  • BSD许可证:只需使用它
  • 基于pyglet:无外部依赖关系
  • 基于OpenGL:向后加速

基本概念:

"""
Scenes:场景,屏幕或舞台。应用程序可以有许多场景,但是在给定时间只有其中一个处于活动状态。
Director:导演。它知道哪个场景当前处于活动状态,当前场景的推送,替换或结束由导演进行,还负责初始化主窗口
Layers:层。定义外观和行为的层
在非MVC(模型-视图-控制器)设计风格中,一些与节点交互相关的代码倾向于在包含实体的层中浮动,从而提供更高的功能单元。
例如,Menu是一个Layer子类,它知道如何对项目进行布局和动画处理,读取用户输入并控制流程。
定义事件处理程序,事件会传播到各个层(从前到后),直到某个层捕获到事件并接受为止。

cocos2d 提供的专门层:
    MultiplexLayer,即一次只能看到一个图层的一组图层
    ScrollingManager,ScrollableLayer; 逻辑限制滚动到可见区域
    RectMapLayer,HexMapLayer,TmxObjectLayer,显示一组矩形或六边形图块或TMX对象
    Menu,实现简单的菜单
    ColorLayer,一个纯色矩形
    PythonInterpreterLayer,由导演使用以弹出一个交互式控制台,以窥视和戳探场景中的对象(Ctrl + I切换开/关)
    可以重写子类的__init__ 方法Layer。创建图层时将调用此方法
Sprites:精灵。2D图像,可以移动,旋转,缩放,设置动画等
Events:事件。pyglet事件框架来处理事件,pyglet参考文档:https://pyglet.readthedocs.io/en/stable/programming_guide/examplegame.html#programming-guide-game
"""
原文地址:https://www.cnblogs.com/fly-book/p/11769189.html