cocos2d-x学习笔记之CCLayer、CCLayerColor、CCLayerGradient、CCLayerMultiplex场景层介绍_C 语言

图层在cocos2d-x中很重要,我们可以在其中添加精灵,也可以将图层添加到场景中。这几个图层类功能各不相同,具体的看代码的注释。大家只需要替换掉helloworld中的init函数就可以运行了。

bool HelloWorld::init()
{
 bool bRet = false;
 do
 {
  CC_BREAK_IF(! <a href="http://www.jb51.net/" title="View all posts in CCLayer" class="tag_link">CCLayer</a>::init());

		//CCLayerColor继承自CCLayer,CCLayerColor有颜色,所以在create的时候需要传入参数,ccc4是一个宏定义,参数是r,g,b,o(o就理解为透明值吧255表示不透明)
		CCLayerColor * color = CCLayerColor::create(ccc4(255,0,0,255));
		//this->addChild(color);

		//CCLayerGradient继承自CCLayerColor,它有重载的三个create函数,传入俩个参数的时候从第一种颜色渐变到第二种颜色,方向是从上到下渐变
		CCLayerGradient * gradient = CCLayerGradient::create(ccc4(255,0,0,255),ccc4(0,255,0,255));
		this->addChild(gradient);

		//以下是CCLayerGradient的第三个重载函数,第三个参数表示的是渐变的方向,是一个向量,这里是ccp(1,0)当然就是从左往右渐变了,如果不理解,请参照坐标系统
		CCLayerGradient * gradientT = CCLayerGradient::create(ccc4(255,0,0,255),ccc4(0,255,0,255),ccp(1,0));
		//this->addChild(gradientT);

		//继承自CCLayer,可以包含多个图层,这些图层可以作为参数添加进来,最后以NULL结束代表图层添加完毕
		//它可以管理多个层,并实现不同层间的切换,但是同一时间只能有一个层是激活状态,其他都是不可见的。
		CCLayerMultiplex * multiplex = CCLayerMultiplex::create(color,gradient,gradientT,NULL);
		//运行这句话的时候请注释掉上边的addChild函数,否则一个图层被添加了俩次会出现错误的
		//this->addChild(multiplex);
		//默认情况下会显示第一个图层,使用如下的方法可以改变
		//multiplex->switchTo(0);

		//以下这句话会释放掉图层0,并且转换到图层1,但这个函数这里不能使用,因为会释放掉图层0,而图层0不是同过new出来的,这是cocos2d-x的内存管理机制
		//multiplex->switchToAndReleaseMe(1);

  bRet = true;
 } while (0);

 return bRet;
}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索cocos2d-x
, CCLayer
, CCLayerColor
, CCLayerGradient
CCLayerMultiplex
,以便于您获取更多的相关知识。

时间: 2024-10-27 10:33:10

cocos2d-x学习笔记之CCLayer、CCLayerColor、CCLayerGradient、CCLayerMultiplex场景层介绍_C 语言的相关文章

C#学习笔记- 浅谈数组复制,排序,取段,元组_C#教程

C#学习笔记- 浅谈数组复制,排序,取段,元组 using System; using System.Collections.Generic; namespace Application { class Test { static void Main () { //元组类型Tuple是静态类型,用静态方法创建实例,超过8个元素则第8个元素是元组类型 var tupe = Tuple.Create<int,int,string,string> (1, 2, "a", &quo

Python ORM框架SQLAlchemy学习笔记之数据添加和事务回滚介绍_python

1. 添加一个新对象 前面介绍了映射到实体表的映射类User,如果我们想将其持久化(Persist),那么就需要将这个由User类建立的对象实例添加到我们先前创建的Session会话实例中: 复制代码 代码如下: ed_user = User('ed', 'Ed Jones', 'edspassword')session.add(ed_user) 上面两段代码执行完后对象持久化了么?你或许会兴冲冲的跑去数据库里查看,结果却失望而归--数据库里什么都没有.为什么呢?因为SQLAlchemy采取的是

C#学习笔记整理_浅谈Math类的方法_C#教程

c#中Math类的方法 Math.Abs 已重载. 返回指定数字的绝对值. Math.Acos 返回余弦值为指定数字的角度. Math.Asin 返回正弦值为指定数字的角度. Math.Atan 返回正切值为指定数字的角度. Math.Atan2 返回正切值为两个指定数字的商的角度. Math.BigMul 生成两个 32 位数字的完整乘积. Math.Ceiling 已重载. 返回大于或等于指定数字的最小整数. Math.Cos 返回指定角度的余弦值. Math.Cosh 返回指定角度的双曲余

【官方文档】Nginx负载均衡学习笔记(二)负载均衡基本概念介绍

简介 负载均衡(Server Load Balancer)是将访问流量根据转发策略分发到后端多台 ECS 的流量分发控制服务.负载均衡可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性. 负载均衡主要有如下几个功能点: 负载均衡服务通过设置虚拟服务地址(IP),将位于同一地域(Region)的多台云服务器(Elastic Compute Service,简称ECS)资源虚拟成一个高性能.高可用的应用服务池:根据应用指定的方式,将来自客户端的网络请求分发到云服务器池中

学习二维动态数组指针做矩阵运算的方法_C 语言

本文分享了利用二维动态数组指针做矩阵运算的实现代码. 1. 头文件     // juzhen 2.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "stdlib.h" #include "windows.h" #define OK 0 #define NG -1 typedef struct mat { int

C++ 学习之旅三 我和超级玛丽有个约会_C 语言

首先,我说说对C++的最直观的感受吧!熟悉了.net 智能提示,开始一开始发现C++根本没有提示了.后来google了一下,下载了一个visual assist 这个插件,比vs自动提示强多了. 然后,就是习惯了在.net中,把所有的声明和方法实现写在同一文件中.可是C++不是这么回事. 他一个声明在头文件中,实现 在源文件中,说实在话,一开始并怎么习惯.后来渐渐就习惯了.然后,写C++的文件就是真他妈的痛苦,他不比.net,微软已经比你封装好了,在C++中,好多东西需要自己写.  首先,一个析

C++ 学习之旅二 说一说C++头文件_C 语言

一.C++头文件究竟是什么,你怎么看? 每个C++/C程序通常分为两个文件.一个文件用于保存程序的声明(declaration),称为头文件.另一个文件用于保存程序的实现(implementation),称为定义(definition)文件.C++/C程序的头文件以".h"为后缀,C程序的定义文件以".c"为后缀,C++程序的定义文件通常以".cpp"为后缀(像linux等系统以".cc"或".cxx"为后

Active Record学习笔记(一):初步接触

最近开始接触Castle ActiveRecord,学习资料大部分是从网上找到的.这里要特别感谢TerryLee的系列文章:Castle 开发系列 ,在Castle的学习之路上,这个系列文章对我的影响是十分巨大的!除了这个系列文章之外,Castle的官方网站也是学习Castle的好去处! 本篇学习笔记从一个简单对象的CURD操作入手,介绍ActiveRecord! 主要内容: 1.ActiveRecord概述 2.准备数据表 3.编写实体类 4.编写配置文件 5.对象的CRUD操作 6.表示层调

Windows Shellcode学习笔记——shellcode在栈溢出中的利用与优化

本文讲的是Windows Shellcode学习笔记--shellcode在栈溢出中的利用与优化, 0x00 前言 在<Windows Shellcode学习笔记--shellcode的提取与测试>中介绍了如何对shellcode作初步优化,动态获取Windows API地址并调用,并通过程序实现自动提取机器码作为shellcode并保存到文件中. 0x01 简介 先从最入门的缓冲区溢出开始 本文将要结合<0day安全:软件漏洞分析技术>中的"栈溢出原理与实践"