智慧 + 毅力 = 无所不能

正确性、健壮性、可靠性、效率、易用性、可读性、可复用性、兼容性、可移植性...

导航

2013年6月25日

摘要: 转自:http://blog.csdn.net/onerain88/article/details/7550009一般经常用到的触屏的情况有两种:一种是Layer统一接收触屏消息,然后由程序根据需要分发给不同位置的精灵;另一种情况是自定义一个可以接收触屏消息的Sprite,比如类似于Button功能的Sprite,这就需要在定义Sprite的时候就要定义好触屏所触发的操作!下面就两种情况分别记录一下基本用法:1.Layer接收触屏消息用法很简单,只需要覆写父类的4个方法(可以根据需要,但是ccTouchBegan()是必须要覆写的,并且其返回值对触屏事件的传递有影响,后面会总结),并在init 阅读全文

posted @ 2013-06-25 16:47 Bill Yuan 阅读(2817) 评论(0) 推荐(0) 编辑

摘要: 转自:http://www.cnblogs.com/xd502djj/archive/2010/09/22/1832912.htmlVirtual是C++ OO机制中很重要的一个关键字。只要是学过C++的人都知道在类Base中加了Virtual关键字的函数就是虚拟函数(例如函数print),于是在Base的派生类Derived中就可以通过重写虚拟函数来实现对基类虚拟函数的覆盖。当基类Base的指针point指向派生类Derived的对象时,对point的print函数的调用实际上是调用了Derived的print函数而不是Base的print函数。这是面向对象中的多态性的体现。(关于虚拟机制是 阅读全文

posted @ 2013-06-25 16:38 Bill Yuan 阅读(505) 评论(0) 推荐(0) 编辑

摘要: 转自:http://blog.leafsoar.com/archives/2013/05-10-19.html为了适应移动终端的各种分辨率大小,各种屏幕宽高比,在 cocos2d-x(当前稳定版:2.0.4) 中,提供了相应的解决方案,以方便我们在设计游戏时,能够更好的适应不同的环境。而在设计游戏之初,决定着我们屏幕适配的因素有哪些,简而言之只有两点:屏幕大小 和 宽高比。这两个因素是如何影响游戏的:屏幕大小: 从小分辨率 480x320 到 1280x800 分辨率,再到全高清 1080p,从手机到平板,还有苹果设备的 Retina 屏,这么多不同的分辨率,而且大小差距甚大,不可能做到一套资 阅读全文

posted @ 2013-06-25 14:39 Bill Yuan 阅读(2873) 评论(0) 推荐(0) 编辑

摘要: 如何让自定义Layer触发触摸事件?bool LayerXXX::init(){ this->setTouchEnabled(true); CCTouchDispatcher* td = CCDirector::sharedDirector()->getTouchDispatcher(); td->addTargetedDelegate(this, 0, true); //kCCMenuHandlerPriority - 10 // ...}CCTouchDispatcher是管理cocos2d-x中所有Touch事件派发的类, CCTouchDispatcher中包含了两个 阅读全文

posted @ 2013-06-25 14:33 Bill Yuan 阅读(9724) 评论(0) 推荐(0) 编辑

摘要: 转自:http://www.cnblogs.com/andyque/archive/2011/09/27/2192920.html而是新建一个工程。然后,我们不是copy文件夹、lib和dll了。我们只需要把release版本的dll全部复制到c:\Windows\System32目录下去。(由于cocos2d-x生成的debug版链接库和release版链接库名字一样,所以只需要把release复制过去就行了,我实验了一下,debug模式下链接release动态链接库也是可行的。) 接下来,我们要做一点其它的事了。首先在D盘建立一个文件夹cocos2d-xSources,然后把Box2D,c 阅读全文

posted @ 2013-06-25 14:21 Bill Yuan 阅读(1143) 评论(0) 推荐(0) 编辑

摘要: 转自:http://www.cnblogs.com/zilongshanren/archive/2012/12/09/2810017.html在今天的iDevBlogADay文章中,我将向大家讲述,我是如何减少25-30MB游戏内存消耗的(现在游戏消耗内存90-95MB,我还通过这个过程,消除了一些由于内存警告而引起的程序崩溃问题)。同时,我还将游戏程序的大小从25MB减少到了20MB以下(如果苹果没有在不久前将蜂窝网下载应用的限制从20MB提高到50MB的话,那么我这个小的优化就太棒了,它可以潜在地给我带来更多的下载量)。我还会给大家介绍,如何在你加载游戏资源的时候展示一个带有动画的Load 阅读全文

posted @ 2013-06-25 13:35 Bill Yuan 阅读(997) 评论(0) 推荐(0) 编辑

摘要: 转自:http://4137613.blog.51cto.com/4127613/754729第一部分:基本图形绘制cocos2dx封装了大量opengl函数,用于快速绘制基本图形,这些代码的例子在,tests\DrawPrimitivesTest目录下注意,该方法是重载node的draw方法实现的,在智能机上,并不推荐直接绘制几何图形,因为大量的坐标编码会极大降低工作效率,应尽量使用Image。而且cocos2dx的渲染机制会造成前后遮挡问题,尤其是几何图形与图片等其他node混合绘制时。void DrawPrimitivesTest::draw() { CCLayer::draw(... 阅读全文

posted @ 2013-06-25 13:25 Bill Yuan 阅读(7818) 评论(0) 推荐(0) 编辑

摘要: #include using namespace std;#include #include int main(){ int i; srand((unsigned)time(NULL)); //初始化随机数种子 for (i=0; i<10; i++) //产生10个随机数 { cout<<rand()<<"/t"; } cout<<endl; return 0;} 阅读全文

posted @ 2013-06-25 12:51 Bill Yuan 阅读(347) 评论(0) 推荐(0) 编辑

摘要: 转自:http://www.cnblogs.com/andyque/archive/2011/03/18/1988097.htmlcocos2d和像素格式 在cocos2d里面,理解像素格式非常重要。因为,像素格式会影响在你的游戏中加载一张图片到底需要多少内存。因为游戏通常要加载大量的图片资源,所以你要尽可能充分利用移动设备上面非常少的可用物理内存。 默认情况下面,当你在cocos2d里面加载一张图片的时候,对于每一个像素点使用4个byte来表示--1个byte(8位)代表red,另外3个byte分别代表green、blue和alpha透明通道。这个就简称RGBA8888。 因此,如果你... 阅读全文

posted @ 2013-06-25 12:50 Bill Yuan 阅读(1051) 评论(0) 推荐(0) 编辑

摘要: 转自:http://blog.csdn.net/aa4790139/article/details/8124781第一次接触粒子系统,以前游戏里面的一些小特效,像制作动画一样,是采用一帧一帧的切出来的,由于这种特效,变化无常,切出来的帧,都非常的大,也很耗内存,一下就内存溢出了......呵呵~ 主要是以前都没有接触过... 现在接触了,以后游戏就可以用到了...开心!//创建一个CCParticleSystem粒子系统CCParticleSystem* ignore = CCParticleSystemQuad::create("Particles/SmallSun.plist&q 阅读全文

posted @ 2013-06-25 11:51 Bill Yuan 阅读(7391) 评论(0) 推荐(0) 编辑

摘要: 转自:http://www.360doc.com/content/09/0403/17/799_3011262.shtml1.模板的概念。我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同。正确的调用重载函数。例如,为求两个数的最大值,我们定义MAX()函数需要对不同的数据类型分别定义不同重载(Overload)版本。//函数1.int max(int x,int y);{return(x>y)?x:y ;}//函数2.float max( float x,float y){return (x>y)? x:y ;}//函数 阅读全文

posted @ 2013-06-25 11:20 Bill Yuan 阅读(54700) 评论(0) 推荐(11) 编辑

摘要: 转自:http://blog.csdn.net/aa4790139/article/details/8107325SpriteTestLayer.cpp(就只改了这个这个文件)#include "SpriteTestLayer.h"SpriteTestLayer::SpriteTestLayer(void){}bool SpriteTestLayer::init(){ CCSize s=CCDirector::sharedDirector()->getWinSize(); //第一种加载资源方式 //CCSprite* sprite=CCSprite::create( 阅读全文

posted @ 2013-06-25 11:03 Bill Yuan 阅读(3970) 评论(0) 推荐(0) 编辑

摘要: 转自:http://4137613.blog.51cto.com/4127613/759610这里只给出最基本的动画代码,具体使用要根据实际情况自己封装。最好自己开发一个编辑器。额外说一句,开发编辑器最好使用Qt,因为是跨平台的。我们随便找一张动画资源图片,在66RPG里有很多,如图:CCSize s = CCDirector::sharedDirector()->getWinSize(); //#1:生成动画需要的数据类 CCTexture2D *texture=CCTextureCache::sharedTextureCache()->addImage("pic247 阅读全文

posted @ 2013-06-25 10:49 Bill Yuan 阅读(698) 评论(0) 推荐(0) 编辑

摘要: 转自:http://blog.csdn.net/yanghuiliu/article/details/9115833这个能实现翻牌的action就是CCOrbitCamera。static CCOrbitCamera* create(float t, float radius, float deltaRadius, float angleZ, float deltaAngleZ, float angleX, float deltaAngleX);参数分别为旋转的时间,起始半径,半径差,起始z角,旋转z角差,起始x角,旋转x角差下面是我封装的cardSprite//创建翻牌sprite, 参数: 阅读全文

posted @ 2013-06-25 10:17 Bill Yuan 阅读(2387) 评论(0) 推荐(0) 编辑