• cocos2d-x 101次相遇 / 文件夹 

    1   安装和环境搭建 -xcode 

    2   Scenes , Director, Layers, Sprites

    3   建立图片菜单 

    4   在HelloWorld上--建立新场景 

    5   添加一个精灵sprite 

    5.1   缩小sprite并使之完整显示

    6   action ,移动sprite 

    7   3.0 的点击事件,CCTouchDelegate已经停用了

    8   使用触摸事件移动 精灵

2.Scenes  。 Director, Layers。 Sprites

开发cocos2d 应用程序,必须先了解例如以下4个概念:

Scenes

Director

Layers

Sprites

Scenes

scene(即 CCScene类)是app 工作流上独立块。scene也叫做 screents 或者“stages”. 一个app可能拥有多个scenes, 但在不论什么时候仅仅能有一个是激活状态的。

举个样例。某个游戏可能拥有例如以下scenes:
Intro, Menu菜单, Level 1, Cutscene 1, Level 2, Winning cutscene, losing cutscene,High scores screen等等. 能够把这些scenes定义成独立的应用块。这些scenes之间包括了相互连接的逻辑(其中断或者完毕,intro会进入menu。level1 引导您渠道cutscene
1 假如完毕或者丢失cutscene,等)

一个cocos2dCCScene 对象由一个或多个layers组成(layer即CCLayer 对象)。layers之间是前后相连的。layer提供了scene的外观 appearance和行为behavior;通常的使用方法是直接用一个或多个layers实例化一个scence;
CCScene的子类CCTrasitionScene 实现移动transitions
, 提供两个scenes 之间的转移效果((比方fade
out/in, slide from a side, 等效果).)因为scenes 是CCNode子类。所以scenes能够手工或者用actions来转变坐标。

Director

CCDirector 负责scenes之间的前进或后退。

CCDirector是singleton模式的共享的对象。

它知道当前哪个scene是激活。 CCDirector以stack的方式处理scenes的调用(当还有一个scene进入的时候,暂停当前的scene。完毕之后再返回原来的 scene)。CCDirector 负责更换CCScene,在CCLayer 被push的时候。更换或结束当前的scene。

另外:CCDirector 负责初始化OpenGL
ES。

Layers

层:Layers

CCLayer 对象定义了可描绘的区域,定义了描绘的规则。CCLayer能够实现半透明的效果,令您看到它背后的layers。概括地说:CCLayer 用于定义外观和事件behavior。

所以,当编写cocos2d程序的时候,大部分工作就是编写CCLayer的子类去实现所要的效果。

CCLayer 负责处理事件event。Events 会从第一个向最后一个layers传递,直至某个layer获取event并处理它。

尽管某个时候,你须要客户化一个CCLayer类。但cocos2d已经实现了多种功能的layers(比方菜单layer:
CCMenu, 颜色层layer: CCColorLayer,等等)。

Layers 能够包括CCSprite 对象,
CCLabel 对象和其他layer对象。layers是CCNode的子类。所以他们也能够使用actions来转换坐标.
See Actions for more detail about actions.

Sprites

cocos2d的sprite对象就是一个能够移动、选择、伸缩、动画的2d图形,CCSprite 对象的子成员中能够包括其他的CCSprite 对象。当CCSprite 对象转换坐标系的时候,它所包括的CCSprite 对象也会转换转换坐标系。sprites 是CCNode 的子类, 所以他们也能够使用actions来转换坐标.
See Actions for more detail about actions.

cocos2d-x项目101次相遇: Scenes , Director, Layers, Sprites的更多相关文章

  1. cocos2d-x项目101次相遇-安装和环境搭建 -xcode

    cocos2d-x 101次相遇 / 文件夹  1   安装和环境搭建 -xcode  2   Scenes . Director, Layers, Sprites 3   建立图片菜单  4   在 ...

  2. cocos2d-x项目101次相遇:在HelloWorld上--建立新场景

    cocos2d-x 101次相遇 / 文件夹  1   安装和环境搭建 -xcode  2   Scenes , Director, Layers, Sprites 3   建立图片菜单  4   在 ...

  3. cocos2d-x项目101次相遇:使用触摸事件移动 精灵

    cocos2d-x 101次相遇 / 文件夹  1   安装和环境搭建 -xcode  2   Scenes , Director, Layers, Sprites 3   建立图片菜单  4   在 ...

  4. Cocos2D创建项目

    创建项目 配置好开发环境后, 用CMD切换到~\cocos2d\cocos2d-x-2.2.2\tools\project-creator目录上执行以下脚本 python create_project ...

  5. VSCode配合chrome浏览器调试cocos2d js项目

    1.准备阶段 具备调试功能的VSCode(我的是在win10上,版本是1.17.1) 在VSCode里下载安装Debugger for Chrome扩展插件. 2.具体操作 创建一个cocosjs工程 ...

  6. cocos2d Programming Guide

    http://python.cocos2d.org/doc/programming_guide/index.html The cocos2d Programming Guide provides in ...

  7. Director Scene Layer and Sprite

    Scenes Director Layers Multiple Layers Example: Sprites References Scenes A scene (implemented with ...

  8. 高屋建瓴 cocos2d-x-3.0架构设计 Cocos2d (v.3.0) rendering pipeline roadmap(原文)

    Cocos2d (v.3.0) rendering pipeline roadmap Why (the vision) The way currently Cocos2d does rendering ...

  9. cocos2d环境及创建一个自己的项目

    一. mac环境:     1.在终端操作,准备好mac系统下的sdk,adt,ndk,ant文件,放在自己的目录中     2.进入mac终端,输入: vim ~/.bash_profile 然后回 ...

随机推荐

  1. QT之深入理解QThread

    QT之深入理解QThread       理解QThread之前需要了解下QThread类,QThread拥有的资源如下(摘录于QT 5.1 帮助文档):       在以上资源中,本文重点关注槽:s ...

  2. sql: oracle, for update和for update nowait的区别

    1. oracle for update和for update nowait的区别 http://www.cnblogs.com/quanweiru/archive/2012/11/09/276222 ...

  3. 正则表达式概述与JAVA中正则表达式的应用

    编程或者电脑使用过程中,经常需要对字符串进行 匹配,查找,替换,判断.如果单纯用代码 if () ,whlie 什么的进行比较复杂麻烦.正则表达式是一种强大灵活的文本处理工具,专门对字符串进行匹配,查 ...

  4. lucene做简单的文件索引

    package com.mylucene; import java.io.File; import java.io.FileReader; import java.io.IOException; im ...

  5. catalan 数——卡特兰数(转)

    Catalan数——卡特兰数 今天阿里淘宝笔试中碰到两道组合数学题,感觉非常亲切,但是笔试中失踪推导不出来后来查了下,原来是Catalan数.悲剧啊,现在整理一下 一.Catalan数的定义令h(1) ...

  6. Twenty Newsgroups Classification任务之二seq2sparse(2)

    接上篇,SequenceFileTokenizerMapper的输出文件在/home/mahout/mahout-work-mahout0/20news-vectors/tokenized-docum ...

  7. 谈论multistage text input(中国输入法)下一个UITextView内容长度的限制

    我以前写<如何更好地限制UITextField输入长度>.接使用 UIKIT_EXTERN NSString *const UITextFieldTextDidChangeNotifica ...

  8. 积累的VC编程小技巧之按钮

    1.资源种创建的控件,对其属性的动态控制: 在对话框类的头文件里创建所要改变属性的控件的对象,如要改变一个Button(其ID为IDC_MyButton)的属性,则需创建Cbutton的对象m_but ...

  9. Mac与Window之间的共享文件

    Mac访问Window: Finder 菜单 “前往” ,然后“连接服务器”,在服务器地址输入 smb://windows主机名或ip地址/共享名(前提window已设置共享文件) Windows访问 ...

  10. HttpWeb服务器之--用OO方式写

    虽然写的不是很好,但 最终解释权以及版权归13东倍所有! package com.web; import java.io.IOException; public class Test { public ...