"""参考网站: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
"""

01.helloworld--标签的更多相关文章

  1. [.NET MVC4 入门系列01]Helloworld MVC 4 第一个MVC4程序

    [.NET MVC4 入门系列01]Helloworld MVC 4 第一个MVC4程序   一.练习项目: http://www.asp.net/mvc/tutorials/mvc-4/gettin ...

  2. ExtJS实战 01——HelloWorld

    前言 Extjs5的发布已经有些日子了,目前的最新稳定版本是Extjs5.1.0,我们可以在官方网站进行下载.不过笔者今天访问得到的是502Bad Gateway,原因可能是sencha的nigix没 ...

  3. Webpack + React 开发 01 HelloWorld

    1.项目依赖 安装所需要依赖的其它第三方开源库,项目依赖如下: "dependencies": { "babel-core": "^6.21.0&qu ...

  4. AngularJS 系列 01 - HelloWorld和数据绑定

    目录导读: AngularJS 系列 学习笔记 目录篇 前言: 好记性不如烂键盘,随笔就是随手笔记,希望以后有用. 本篇目录: 1. Hello World 2. AngularJS中的数据绑定 3. ...

  5. django --01 helloworld样例入门

    很好的一个django教程:https://www.w3cschool.cn/django/django-first-app.html django版本:1.8 1.创建django工程 django ...

  6. Spring4学习回顾之路01—HelloWorld

    以前公司一直使用的是spring3.0,最近一段时间开始用了4.0,官网上都已经有了5.0,但是很多知识点已经忘了差不多了,趁现在项目不忙写写随笔,一来回顾自己的知识点,二来如果能帮助比我还小白的小白 ...

  7. HTML学习笔记01(标签)

    <html> <head> <meta charset = "utf-8"> <!--字符集编码设置-->   <title& ...

  8. (0-1)CSS 标签语法的属性

    CSS text-decoration 属性 display display 属性规定元素应该生成的框的类型

  9. Nokitjs 系列-01 - HelloWorld

    一.前言 本篇文章需要读者有一点 Node.js 基础的了解,并且已经安装了 Node.js (node.npm),但并不需要有 Nokit 的知识,本文将简单介绍 Nokitjs 的安装使用,并编写 ...

  10. Android manifest之manifest标签详细介绍

    AndroidManifest详细介绍 本文主要对AndroidManifest.xml文件中各个标签进行说明.索引如下: 概要PART--01 manifest标签PART--02 安全机制和per ...

随机推荐

  1. oracle触发器update本表数据

    功能: 1. 允许/限制对表的修改 2. 自动生成派生列,比如自增字段 3. 强制数据一致性 4. 提供审计和日志记录 5. 防止无效的事务处理 6. 启用复杂的业务逻辑 开始 create trig ...

  2. React Native商城项目实战09 - 个人中心自定义cell

    1.新建组件CommonMyCell.js /** * 个人中心自定义cell */ import React, { Component } from 'react'; import { AppReg ...

  3. 高通平台Camera调试(一)【转】

    本文转载自:http://www.voidcn.com/blog/Winva/article/p-6044730.html 4.3. Camera 参考文档: 1) 80-NA157-22_PRESE ...

  4. vue +ts 的一次踩坑日记

    在vue的方法里面写事件的时候比如写一个路由跳转,方法大概如下:  goBack1() {            console.log(this);            this.$router. ...

  5. Phaser 源码分析

    Phaser 一个可重用的同步屏障,功能上与 CyclicBarrier 和 CountDownLatch 类似,但是支持更灵活的使用. 把多个线程协作执行的任务划分为多个阶段,编程时需要明确各个阶段 ...

  6. Understanding ECMAScript 6 阅读问题小记

    拖了一年说要看这本书,一直都没坚持下来,开个 bo 记录下觉得疑惑的问题,也算鞭策一下自己. 第一章 块级绑定 1. 第一章“块级绑定”下,说 const 变量如果绑定的是对象 Object,那么修改 ...

  7. python实现建立udp通信

    实现代码如下: #udp协议通信import socket,timeclass UdpConnect: def get_udp(self,ip,port,message): #建立udp连接 myso ...

  8. Prometheus + AlertManager 邮件报警

    安装 wget https://github.com/prometheus/alertmanager/releases/download/v0.13.0/alertmanager-0.13.0.lin ...

  9. 远程访问其他主机的Mysql(Ubuntu)

    远程访问其他主机的Mysql 首先:被访问的电脑应该把防火墙关掉, sudo ufw disable 然后去etc/mysql sudo gedit my.cnf 将bind-address注解掉 由 ...

  10. lambda表达式(1)

    转自:http://www.cnblogs.com/knowledgesea/p/3163725.html 简化了匿名委托的使用,让你让代码更加简洁,优雅.据说它是微软自c#1.0后新增的最重要的功能 ...