COCOS2D - 技术教程文章

[cocos] ( 1 ) cocos2d-x 3.x 开发 环境配置【代码】

有几个需要注意的问题 Windows上使用时,在eclipse中的Java Build Path内取消 Android Dependencies。Ubuntu上使用时会出现adb错误,需要 sudo apt-get install ia32-libs 原文:http://www.cnblogs.com/goodluozhiya/p/4118969.html

Cocos2d-x 3.x的Windows Phone 8工程【图】

Cocos2d-x 3.x中我们使用的Cocos2d-x 3.2,它提供了Windows Phone 8平台的支持。下面我们介绍一下在Cocos2d-x 3.2中如何生成Cocos2d-x的Windows Phone 8工程,以及如何使用等问题。生成Windows Phone 8工程我们可以通过Cocos2d-x提供的cocos new工具生成多平台模板工程。如果我们的工程名为HelloCpp,则生成之后的目录结构如下图所示,其中的proj.wp8-xaml文件夹内容,如后图所示,其中HelloCpp.sln可以启动Cocos2d-x Windows Phon...

COCOS2DX事件交互处理

一、单点触摸关于单点触摸事件的创建和监听有以下几个步骤:1,创建一个空间如labelTTF,并且初始化,添加控件进层2、设置一个事件监听器,并且定义和实现他的回调函数。3、最后让导演将前面定义的监听器按照监听器和监听事件对应的方式添加进来。<span style="font-size:18px;"> Size visibleSize = Director::getInstance()->getVisibleSize();Vec2 origin = Director::getInstance()->getVisibleOrigin();auto label = LabelTTF...

Cocos2d-x之实现动作的反转

Cocos2d-x之实现动作的反转 //实现动作的反转,即向相反方向移动 //原动作是向右下角移动的label->runAction(MoveBy::create(1, Point(-50, -50))); //反转之后原动作是向右上角移动的label->runAction(MoveBy::create(1, Point(-50, -50))->reverse());原文:http://www.cnblogs.com/dudu580231/p/4373559.html

cocos2d学习

想使用cocos2d做个游戏,遇到图片的问题,用PS抠出的图做为cocos2d的精灵的图片,发现精灵的图片有边框,查阅了一些资料,发现是格式的问题,jpg格式的图片不能做透明处理,PNG格式的图片就可以,转换为PNG格式的图片,把背景去掉,好,大功告成!得继续研究一些图片格式的知识!!原文:http://4627308.blog.51cto.com/4617308/1357887

cocos2d-x如何优化内存的应用

自身以前也写过cocos2d-x如何优化内存的应用,以及内存不够的情况下怎么样处置惩罚游戏。今天在微博中看到有友好简介了下内存,挺详细的。不晓得是谁写的,我纪录下。一,IOS与图片内存在IOS上,图片会被积极缩放到2的N次方大小。例如一张1024*1025的图片,占用的内存与一张1024*2048的图片是一致的。图片占用内存大小的共计的公式是;长*宽*4。何等一张512*512 占用的内存即是 512*512*4 = 1M。其他尺寸以此类推。(ps:IOS上支持的...

Android和iOS中Cocos2dx的横屏竖屏设置

一、横屏、竖屏设置1、androidAndroidManifest.xml文件中,screenOrientation="landscape" 为横屏,screenOrientation="portrait"为竖屏2、iOS- (NSUInteger) supportedInterfaceOrientations{ #ifdef __IPHONE_6_0 // 横屏显示 // return UIInterfaceOrientationMaskLandscape; // 竖屏显示 return UIInterfaceOrientationMaskPortrait; #endif } 二、读写sd卡 AndroidManifest.xml文件中,先增加权限:FILE *fp ...

Cocos2d-x 粒子系统详解

cocos2dx已经为我们提供了非常多的粒子系统效果: 1、 CCParticleExplosion爆炸 2、 CCParticleFire 火 3、CCParticleFireworks烟火 4、CCParticleFlower花 5、CCParticleGalaxy 银河 6、CCParticleMeteor 流星 7、CCParticleRain 下雨 8、CC...

Cocos2d-x 游戏存档

游戏存档功能可以保存游戏中数据,让玩家游戏可以延续, 单机游戏更为重要。而CCUserDefault可以作轻量级数据库使用,用来存储数据,支持数据类型bool,int, float, double, string.存储数据 CCUserDefault::sharedUserDefault()->setStringForKey("string", "value1"); //参数顺序:键,对应的值CCUserDefault::sharedUserDefault()->setIntegerForKey("integer", 10);CCUserDefault::sharedUserDefault()->setFloatForKey("float"...

cocos2dx3.2 判断音效是否播放

SimpleAudioEngine类中加入一函数如下bool isEffectPlaying(unsigned int nSoundId); 定义如下 bool SimpleAudioEngine::isEffectPlaying(unsigned int nSoundId) {EffectList::iterator p = sharedList().find(nSoundId);bool bRet = false;if (p != sharedList().end()){bRet = p->second->IsPlaying();}return bRet; } 完成原文:http://blog.csdn.net/xie1xiao1jun/article/details/41283555

cocos2dx,Layer锚点与scale缩放【代码】【图】

最近写代码需要用到缩放,而且是Layer的,但是发现怎么设置位置都是错误,于是决定研究下。首先,基础代码,代码上不错特殊处理,没有锚点设置和缩放class TestLayer : public Layer {public:bool init();CREATE_FUNC(TestLayer); };bool TestLayer::init() {if (!Layer::init()) {return false;}Sprite *dd = Sprite::create("item_gift1.png");this->addChild(dd);this->setContentSize(Size(200, 200));// 打印几个点参照用Laye...

Cocos2dx 3.2 之实现精灵图片放大功能【图】

原文地址 http://blog.csdn.net/jhonlight/article/details/38408351 今天一个群友问我: 我Scene里放置一个Layer,Layer盛放一张图片,即背景图片,我想更换这张图片,而且要求带有系统提供的切换Scene 淡入淡出的效果,于是我用Director类的切换用系统提供的切换动画包装的scene,但是效果是整个scene都被切换了,而我想要的是只有背景变化,其余的不变。 大家都知道,这样做当然不可以,Director(...

cocos2dx游戏开发学习笔记1-基本概念

这里主要讲构建整个游戏需要的基本元素,很大部分都摘自cocos2dx官网。 1、Director 导演导演,顾名思义,就是对整个游戏进行整体控制的。“Director”是一个共享的(单元素集)对象,负责不同场景之间的控制。导演知道当前哪个场景处于活动状态,允许你改变场景,或替换当前的场景,或推出一个新场景。当你往场景堆中推出一个新场景时,“Director”会暂停当前场景,但会记住这个场景。之后场景堆中最顶层的场景跳离时,该场景又会...

cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第九步---英雄发动攻击

/* 说明:**1.本次游戏实例是《cocos2d-x游戏开发之旅》上的最后一个游戏,这里用3.0重写并做下笔记**2.我也问过木头本人啦,他说:随便写,第一别完全照搬代码;第二可以说明是学习笔记---好人**3.这里用cocos2d-x 3.0版本重写,很多地方不同,但是从重写过程中也很好的学习了cocos2d-x*/ ***每一步对应的所有代码以及用到的资源都会打包在最后给出 ***为避免代码过多,每一步的代码都做了标记--一看就晓得是第几步实现的避免出错...

cocos2d-x 3.1 编译脚本android-build.py【代码】

写在前面:前段时间下载了cocos2d-x 3.1,按照官网的教程,配置环境,编译打包,走了一遍,感觉不错,顺便发现其中用了很多python的脚本文件,比如今天要说的android-build.py.这个文件把编译,打包的功能全部整合到了一起.也就是传说中的一键打包.正好最近在看python,就顺手拿这个脚本学习一下.小贴士:在正式看这个脚本文件前,推荐先到cocos2d-x的官网按教程,配置环境,编译,打包,走一遍,先有个大概的了解.教程地址.http://www.cocos2d-x.or...

cocos2d-x 3.0 WIN7+VS2012 安卓平台搭建【图】

***************************************转载请注明出处:http://blog.csdn.net/lttree******************************************题外话: 暑假,重拾cocos2d-x,一年没有接触了,更新到3.0,搭建安卓环境不需要cygwin了。简单了好多呀,就是新建的时候有点麻烦= =。 正文: 一、前期准备工作: 准备几个软件: 1.JDK 地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 2.ADT Google为开...

用cocos2d-html5做的消除类游戏《英雄爱消除》(2)——Block设计实现【代码】【图】

Block可以说是这个游戏的核心类,它除了包含自身的一些属性和方法外还添加了对触摸事件的响应。我们先来看下源码吧/*** Power by html5中文网(html5china.com)* author: jackyWHJ*/var Block = cc.Sprite.extend({id:0,name:"",active:true,pointX:0,pointY:0,beginPoint:null,flash:false,ctor:function (arg) {this._super();if(!arg)return;this.initWithSpriteFrameName(arg);this.name = arg; // cc.registerTargeted...

Cocos2D-X2.2.3学习笔记12(瞬间动作)【图】

到眼下我们已经学习了有坐标系统内存管理UI系统事件处理几何图形今天我们来学习动作管理OK我们来看看类结构图CCAction 全部动作的基类以下派生了三个子类:CCFiniteTimeAction,CCFollow,CCSpeed这些我们先不看 我们主要来介绍一下瞬时动作,CCActionInstant 瞬时动作 故而 一瞬间就完毕的动作,它没有延迟时间的好的 開始#ifndef __HELLOWORLD_SCENE_H__ #define __HELLOWORLD_SCENE_H__#include "cocos2d.h"class HelloWorld :...

Cocos2d-x 截图功能

2.x-3.x版本 //获取屏幕尺寸 CCSize size = CCDirector::sharedDirector()->getWinSize(); //使用屏幕尺寸初始化一个空的渲染纹理对象 CCRenderTexture* texture = CCRenderTexture::create((int)size.width, (int)size.height); //设置位置 texture->setPosition(ccp(size.width/2, size.height/2)); //开始获取 texture->begin(); //遍历场景节点对象,...

cocos2dx 3.2 解决输入框(TextField,TextFieldTTF) 中文乱码问题

近期开发cocos2dx 项目,做一个小游戏。(个人喜欢用最新版本号) 没系统学习就是问题多多,遇到了非常多问题,比方全部的opengl api都必须在主线程中调用,这让我在多线程载入方面吃了不少亏,浪费了非常多时间。 这次遇到了输入框中输入中文出现乱码问题。搜索了非常多方法,都没找到。没办法。可是知道cocos2dx 2.x版本号没有这个问题,所以就仅仅有跟进代码了。首先 找到2.x中找到WM_CHAR的派发消息:在platform/win32/下的CC...

?Cocos2d-x 学习笔记(3.2) TransitionScene 过渡场景和场景切换的过程【代码】

1. 简介过渡场景TransitionScene直接继承了场景Scene。能够在场景切换过程中实现“过渡”效果,而不是让窗口在下一帧突然展示另一个场景。2. create构造函数:TransitionScene::TransitionScene() : _inScene(nullptr) , _outScene(nullptr) , _duration(0.0f) , _isInSceneOnTop(false) , _isSendCleanupToScene(false) { }create方法有2个参数:float t, Scene *scene。调用了initWithDuration,传入这两个参数。参数scene不能为...

【转】cocos2d-x windows开发环境配置【图】

声明:本教程在参考了以下博文,并经过自己的摸索后实际操作得出,本教程系本人原创,由于升级后的cocos2d-x有了一些变化,目前的博文还没有关于Cocos2d-x 2.2.1最新版搭建Android交叉编译环境组建的说明,所以我这几天研究了一下,现在将具体的搭建方法分享出来,也给自己学习Cocos2d-x做个笔记。参考博文:http://www.cnblogs.com/lhming/archive/2012/06/27/2566460.htmlhttp://www.cnblogs.com/lhming/archive/2012/06/27/2566...

Cocos2d-X中提高性能的方法

??1)内存使用效率: 使用大纹理 场景切换时,要尽量使用replaceScene2)用好缓存: CCTextureCache(纹理缓存) CCSpriteFrameCache(精灵帧缓存) CCAnimationCache(动画缓存)3)运行效率: 一帧只有1/60秒 自己写Update部分的代码 可以使1)内存使用效率: 使用大纹理 场景切换时,要尽量使用replaceScene2)用好缓存: CCTextureCache(纹理缓存) CCSpriteFrameCache(精灵帧缓存) CCAnimationCache(动画缓存)3)运行效率: 一帧只有1/60秒 自...

cocos2dx中CCLabelTTF的描边和阴影

游戏中经常会用到文字描边和阴影,当cocos2dx中并没有给我们提供,下面是我参考:点击打开链接(http://blog.csdn.net/song_hui_xiang/article/details/17375279)自己弄了一个,基本上是一模一样,不喜勿喷!代码如下:思路:多个CCLabelTTF重叠在一起。头文件// // CLabel.h // XXX // // Created by user on 14-3-4. // //#ifndef __XXX__CLabel__ #define __XXX__CLabel__#include <iostream> #include "cocos2d.h"USING_NS...

cocos2d-x-3.x (6)动作侦听【代码】

其实主要是为了看一下动作是否结束 1bool HelloWorld::init()2{3if (!Layer::init())4 {5returnfalse;6 }7 8 Size visibleSize = Director::getInstance()->getVisibleSize();9 Sprite *label = Sprite::create("what.png"); 10 label->setPosition(visibleSize.width / 2, visibleSize.height / 2); 11 addChild(label); 12 auto listener = EventListenerTouchOneByOne::create(); 13 listener->on...

Cocos2d-3x:vs2012项目转为android项目需注意的地方

http://www.cocoachina.com/bbs/read.php?tid=194668 先按照这个文章导入库到vs项目。在vs项目的sceen类的里添加#include "cocostudio\CocoStudio.h";记住是这个路径!!!#include "CocoStudio.h";这个路径在转换时会报错的。在proj.android\jni的Android.mk里添加以下代码:#添加的东西LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static LOCAL_WHOLE_STATIC_LIBRARIES += cocostudio_static #以开始缺少这个 LOCAL_WHOLE_STATIC_LIB...

cocos2d-x lua 中使用protobuf并对http进行处理

cocos2d-x lua 中使用protobuf并对http进行处理本博客链接http://blog.csdn.net/vpingchangxin/article/details/24458051protobuf Google的一个很好用的传输数据的封装 说实话Google的东西确实比较好用 所以我们前后端数据交换就用他了 不过Google没有对lua进行支持 还好社区有开源的大侠们贡献 找了所有关于lua protobuf 我只找到 云风的 pbc 修改相关cocos2d-x中的类可以正常使用。protoc-gen-lua 我在使用的时候 总是报截断数据...

cocos2d-x3.0 Slider【图】

.h#include "cocos2d.h" #include "cocos-ext.h" #include "ui/CocosGUI.h" #include "cocostudio/CocoStudio.h" USING_NS_CC;USING_NS_CC_EXT; using namespace ui; RichText* _richText;Text* alert;.cppSize widgetSize = Director::getInstance()->getWinSize();layout = Layout::create();layout->setSize(Size(widgetSize.width, widgetSize.height));//横向排列,这里相似Android里的线性布局//layout->setLayoutType(LAYO...

windows下开发cocos2d-x系列(1)—环境搭建【图】

前言  相信每个程序猿都是喜欢玩游戏的,什么kof,dota,lol陪伴我们渡过多少快乐的时光,我也不例外。同事送了一本《cocos2d-x 3.x游戏开发之旅行》,引起了我对游戏开发的兴趣,也想在此写下自己学习的过程,激励自己坚持下去,分享成果。(本屌目前从事金融软件的开发,想学游戏开发也是出于自己的兴趣。在此也提倡大家平时搞点投资理财,祝愿早日买房买车,迎娶白富美)好了,言归正传,我们开始cocos2d-x的学习吧。开发工具 ...

cocos2dx基础篇(8)——定时器更新schedule、update【代码】【图】

【本节内容】 定时器在大部分游戏中是不可或缺的,即每隔一段时间,就要执行相应的刷新体函数,以更新游戏的画面、时间、进度、敌人的指令等等。 cocos2dx为我们提供了定时器schedule相关的操作。其操作函数的定义在CCNode中,所以基本上大多数的引擎类都可以设置定时器,如CCLayer、CCSprite、CCMenu等。定时器更新的方式分为三类: (1)默认定时器:scheduleUpdate(); (2)自定义定时器:schedule(); (3)一次...