cocos2d-x
文章平均质量分 82
阳光下的
这个作者很懒,什么都没留下…
展开
-
【cocos2d-x 源码解析】shader 实现
文件结构cocos2d-x 与 shader 相关的代码在 renderer 目录下|-cocos |-renderer |-CCGLProgram.h |-CCGLProgram.cpp |-CCGLProgramCache.h |-CCGLProgramCache.cpp |-CCGLProgramState.h |-CCGLProgramState.cpp |-CCGLProgr转载 2020-10-02 11:31:53 · 425 阅读 · 0 评论 -
cocos2d-lua性能优化 (腾讯游戏学院)
性能优化:1 入场动画/分帧加载,避免一帧处理过多 <阵容出场动画> 2 延迟释放(popScene时,因为切换场景/回收一瞬间时会卡顿)3 预加载资源(即提前裁入内存, 音效/spine/…)低端机卡顿优化(像iphone5内存512M):设置纹理格式(内存) / 不播特效… / 清楚unse纹理和spine / 删除预加载(战斗界面)编程基础:有重复用for循环或正则表达式 数据驱动(把数据抽象为数组或配表)适配原则:1 屏幕左边时锚点x设为0,位置=0。原创 2020-09-25 11:39:41 · 1051 阅读 · 0 评论 -
appstore
今天才知道 appstore 与拿来 下载东西用的原来原创 2014-04-13 11:42:20 · 563 阅读 · 0 评论 -
从不同层面看cocos2d-x
一 框架层面二 Lua层面三 工具层面四 android打包一 框架层 整体来说,cocos2dX提供的一个简便的框架,包含了渲染,动画,事件分发,网络还有UI,物理引擎等几大模块。对于做一个游戏从功能上来说已经足够了。我从这几个方面分别探讨下cocos2dX的优缺点以及我们在项目中是如何用到的(1)渲染:渲染这块,他的渲染数据跟Sprite进行了绑定原创 2014-05-18 16:19:59 · 1112 阅读 · 0 评论 -
A*寻路算法笔记 2011
寻路是很多游戏需要实现的功能,简言之,就是确定起点和终点,找出到达的路线。常见应用:电脑怪物对主人公进行追踪打击。AStar是目前使用较多的一种寻路算法,最近比较感兴趣研究了下,记录一些要点: 1,寻路的基础是将地图网格化,转化为二维数组,这样做的好处是节省计算资源,简化计算模型,也很接近真实。2,AStar是从起点开始向外依次计算临近网格到目标网格的距离,得出最短原创 2014-05-18 16:01:13 · 560 阅读 · 0 评论 -
如何在Cocos2d-x中使用Lua脚本
笔者使用的是Cocos2d-x的2.21版本,Xcode 5.0开发环境,同时也建议大家使用Cocos2.20以上版本,若由于版本原因源码无法运行,可将Classes文件拷贝出来,在新建的项目中将Classes文件夹替换进去,.lua文件在Resources文件夹中。有关Lua脚本语言的基本语法讲解请参考 :http://blog.csdn.net/u012945598/a原创 2014-05-13 11:50:46 · 1401 阅读 · 0 评论 -
困扰2个星期的问题终于解决了
在做归途赛跑时:原创 2014-04-11 11:37:06 · 522 阅读 · 0 评论 -
如何在cocos2d 游戏中添加 移动广告
最近有需要在一款Cocos2d 游戏里面添加移动广告,大家都知道,现在有很多的移动广告平台,每个平台都有自己的SDK,每个SDK的方法,流程又都不一样,找来找去,找到了 果合移动广告。它自己的网站上说:果合移动广告是整合admob、iAd、有米、wooboo(哇棒)、架势、微云、adchina、madhouse等广告平台的移动广告优化工具。试用了一下,感觉还是挺方便的。SDK下载地转载 2014-03-22 20:43:10 · 806 阅读 · 0 评论 -
box2d -ApplyForce, ApplyImpulse, SetLinearVelocity
在box2d开发中,body除了收重力、摩擦力、弹力等等作用自然力的作用意外,用户还可以手动操作body,共有三种方式:ApplyForce、ApplyImpulse和SetLinearVelocity。下面分别介绍一下:ApplyForce指的是对物体应用一个力,物理学中F=ma,这里的ApplyForce就是我们的F,物体的质量mass固定,因此物体加速度也固定,速度抓紧改变。原创 2014-05-09 10:42:27 · 1310 阅读 · 1 评论 -
怎样在xcode4.x里面使用Memory Leaks和Instruments
开胃小菜--简单的断点调试在xcode中打开一个app,在想要break的行号上单击,即可生成一个深色的箭头标识--断点。如下图,在viewDidLoad:中设置了断点。运行app,等待。。。就可以看到xcode在断点处进入调试模式,现在让我们把视线移到xcode右下角的控制台,有木有看到(lldb)这样一行,鼠标移到此行,输入1po [转载 2014-03-25 16:19:47 · 625 阅读 · 0 评论 -
关于BOX2D的那些事儿(3)
http://hi.baidu.com/goodlad/blog/item/7cf24927804dc315908f9df2.html[html] view plaincopyprint?b2Vec2 GetLocalPoint(const b2Vec2& worldPoint); 17、根据一个世界向量来取得一个此时的转载 2014-03-26 20:27:55 · 757 阅读 · 0 评论 -
Cocos2d-x 水果忍者划痕效果
网上找的一个关于水果忍者划痕的,效果还算凑合。其原理就是基于OpenGL绘制直线,由于版本过老,此处笔者修改了一些方法,粘贴后可直接使用适用于Cocos2d-x 2.2.1.h文件中需要加入的代码: void draw(); void drawLine(); virtual void ccTouchesBegan(CCSet *pTouc转载 2014-04-21 11:47:02 · 1771 阅读 · 0 评论 -
如何制作一个横版格斗过关游戏 Cocos2d-x 2.0.4
本文实践自 Allen Tan 的文章《How To Make A Side-Scrolling Beat ‘Em Up Game Like Scott Pilgrim with Cocos2D – Part 1》,文中使用Cocos2D,我在这里使用Cocos2D-x 2.0.4进行学习和移植。在这篇文章,将会学习到如何制作一个简单的横版格斗过关游戏。在这当中,学习如何跟踪动画状态、碰撞盒、转载 2014-04-11 20:20:23 · 884 阅读 · 0 评论 -
cocos2d-x学习之格斗游戏总结(2)
继续前面的总结,下面总结一下具体的细节3、人物的状态机在这个游戏中有五种状态:空闲、行走、出拳、受伤和死亡。为了有一个完整的状态流,每个状态应该有一个必要条件和结果。例如:行走状态不能突然转到死亡状态,因为你的英雄在死亡前必须先受伤。定义五种动作方法: void idle();转载 2014-04-12 09:06:12 · 1126 阅读 · 0 评论 -
去哪了 修订
onEnter,它肯定是晚于init被调用 一个是进入场景的时候,一个是初始化的时候 onEnter():在Layer可见时被调用,在后台运行重新返回前台时也会被调用。原创 2014-04-04 10:05:30 · 502 阅读 · 0 评论 -
Cocod2dx 节点生命周期/内存管理(三)-Coco2d-x内存运行原理
通过上两篇博客,我们对Cocos引用计数和Ref类、PoolManager类以及AutoreleasePool类已有所了解,那么接下来就通过举栗子来进一步看看Coco2d-x内存运行原理是怎样的。//先建一个nodeNode * node = Node::create();//创建完之后打印node的引用计数schedule([node](float f){//获得node的引用计数i...转载 2019-09-08 14:36:29 · 308 阅读 · 0 评论 -
creator物理引擎 /RPG运动类型 /坦克
1 applyForce/ToCenter(). 这个力怎么计算 (牛顿第二定律F=ma) 2 .linearVelocity()是像素/米 (看源码) 3 why到第四帧才有速度http://docs.cocos.com/creator/api/zh/classes/RigidBody.html#applyforcetocenter官网文档是如此介绍applyForceTo...原创 2018-05-08 19:42:39 · 5511 阅读 · 1 评论 -
cocos2d-x 添加 广告
(感谢cocos2d-x 的小明同学)1:效果2:实现原理:将屏幕设置为竖屏,然后CCDirector::setDeviceOrientation()设置为cocos2d-x为横屏。 在这种转屏模式下,控件是不会旋转的缺点:所有Android原生控件仍然是竖立的注意事项:ccTouche原创 2014-04-23 17:45:03 · 914 阅读 · 0 评论 -
cocos2d-x 网络请求
如何写入 或者是 如何 修改已有的json 文件 大神有没有相关的文档 奋斗 给我看看就行奋斗原创 2014-04-21 14:29:19 · 1404 阅读 · 0 评论 -
AnchorPoint锚点 + CCNotificationCenter 通知中心 + 截屏
锚点是定位和变换操作的一个重点。锚点我们可以看成用一根图钉将一张纸或者相片钉在墙上的那个点。节点的位置是由我们设置的position和anchor point一起决定的。值得一提的是,anchor point的默认位置Layer的是左下,而其他的node是中点。节点的原点是父节点的左下角。[cpp] view plaincopy原创 2014-08-06 23:43:23 · 662 阅读 · 0 评论 -
如何开发出像Flappy Bird或2048那样受欢迎的轻游戏?
原创 2014-07-15 09:06:24 · 652 阅读 · 0 评论 -
cocos2d-x 中的(#、##、...和__VA_ARGS__)
最近在android的某个代码的头文件中发现很多__VA_ARGS__,google一下.还是比较有用.附带其它宏定义参数,一起记录之.1. ...和__VA_ARGS__看看msdn上给得例子吧[cpp] view plaincopyprint?#include #define EMPTY #de原创 2014-06-23 10:19:44 · 789 阅读 · 0 评论 -
告诉你 cocos2d-x 2.2.5 在MAC是如创建项目的
注: 为了快捷,附上图片1:原创 2014-07-12 21:48:58 · 1102 阅读 · 0 评论 -
cocos2d-x中的多点触摸的问题
在cocos2d-x中,对于触摸事件有两种模式:大家都知道,第一种为CCDirector::sharedDirector()->getTouchDispatcher()->addStandardDelegate(this, 0);//添加触摸委托,也是cclayer默认的模式,可用于多点触摸;第二种为CCDirector::sharedDirector()-转载 2014-03-03 17:43:37 · 1066 阅读 · 0 评论 -
跨平台
给一个新的版本, 叫你知道如何快速创建项目:跨平台移植的版本, id :原创 2014-06-25 19:13:50 · 538 阅读 · 0 评论 -
cocos2d-x 是如何渲染的
谁知道: cocos2d-x 是如何渲染的 ?每个CCNODE自己有draw北京-菜菜: 11:02:49drawdraw负重渲染*******************************cocos2d-x 渲染不是用的openGl 吗?阳光下的幸福: 11:10:59为啥现在有事 dr原创 2014-06-21 16:08:58 · 852 阅读 · 0 评论 -
cocos2d的暂停/恢复
cocos2d提供了比较重要的有3种暂停、恢复的机制分别是CCDirector, CCActionManager, CCScheduler提供的1 CCDirecotor:-(void) pause;-(void) resume;导演类的暂停恢复是针对整个运行场景的,所以如果我们还想在暂停的画面上做其他事情,不推荐这种方法2 CCActionMana转载 2014-03-25 14:54:18 · 1144 阅读 · 0 评论 -
做游戏
在做游戏 图标时: 应尽量 用卡通的; 《--大个图原创 2014-04-16 18:01:43 · 615 阅读 · 0 评论 -
cocos2d-x C++的do...while(0)解释
cocos2d-x C++的do...while(0)解释在C++中,有三种类型的循环语句:for, while, 和do...while, 但是在一般应用中作循环时, 我们可能用for和while要多一些,do...while相对不受重视。但是,最近在读我们项目的代码时,却发现了do...while的一些十分聪明的用法,不是用来做循环,而是用作其他来提高代码的健壮性。原创 2014-04-01 18:00:50 · 743 阅读 · 0 评论 -
Cocos2d-x SQLite
二、初步使用在HelloworldScene中,添加#include "sqlite3.h"然后在init函数中编写代码sqlite3 *pDB = NULL;//数据库指针 char * errMsg = NULL;//错误信息 std::string sqlstr;//SQL指令 int result;//sqlite3_exec返回值 //打开一个数据转载 2014-04-14 21:15:12 · 922 阅读 · 0 评论 -
cocos2d-x 使用 CCScale9Sprite
什么是九宫格构图? 有个概念叫九宫格构图,说的就是这种会变化背景的情况。大家都知道图片是不可以随便拉抻的,无论是缩小还是放大,都会使图形虚化,影响显示效果。如果不能拉抻,就进行拼接。这就是这种策略的思路。 首先它会将一个图分成九份: 为了能够看清楚,我进行了缩放。大家也看到了,缩放产生的虚化问题。 拼接是如原创 2014-03-29 10:26:03 · 815 阅读 · 0 评论 -
从CCObject看cocos2d-x的内存管理机制
原创作品,转载请标明:http://blog.csdn.net/jackystudio/article/details/13765639再看CCObject,剔除上节的拷贝相关,以及Lua脚本相关的属性和方法后,CCObject还剩下什么?1.剩下什么?可以看到整个CCObject就是围绕着m_uReference和m_uAutoReleaseC原创 2014-03-28 19:26:32 · 679 阅读 · 0 评论 -
游戏中遇到的问题 龟兔赛跑
1:TMX: Only 1 tileset per layer is supported问题在做tilemap时,每个块层只能加载一个图像素材,如果一个块层加载了多个,就会报错,只要新建个块层就ok了2:linker command failed with exit code 1 解决 解决方法:将相应的出现错误的.m文件,加入到build phases中的compi原创 2014-03-21 14:26:09 · 858 阅读 · 0 评论 -
cocos2d-x 如何使用CCProgressTimer作为血条,实现跟随怪物进行移动,自动掉血,然后死亡。
Cocos2d-x中类CCProgressTimer实现游戏人物血条一、CCProgressTimer的基本使用步骤:cocos2d-x的进度条函数CCProgressTimer,我们可以这样定义:1.//s_pPathSister1为图片的路径2.CCProgressTimer *left = CCProgressTimer::crea转载 2014-03-27 16:15:09 · 1806 阅读 · 0 评论 -
添加第三方类库造成的linker command failed with exit code 1 (use -v to see invocation)的错误调试
linker command failed with exit code 1 (use -v to see invocation)这个错误貌似遇见并不止一次,当我想用某个第三方类库的时候(如SBJson),我直接把类库文件copy到工程目录里面,然后一编译就出现这样错误(并不是一定会出这样错误),开始以为是网上下载的类库本身问题,所以重新找类库或者其他方式将它添加进去,只要不出错就行,也一直没有深转载 2014-04-13 16:30:38 · 681 阅读 · 0 评论 -
cocos2d-x如何快速屏蔽触摸
转自:http://4137613.blog.51cto.com/4127613/845269cocos2d-x有个问题,即使暂停CCScene运行,触摸仍然有效,有些菜单和按钮仍然会被触发。所以有的时候我们要手动屏蔽触摸,尤其是在弹出计费画面的,或者使用一些本平台自带控件的时候。做法有几种:第一种方案是:每一个继承自CCLayer的类都可以关闭触摸,使用这个函转载 2014-03-28 11:14:41 · 687 阅读 · 0 评论 -
CCNodeRGBA
CCNodeRGBA继承于CCNode,所以它拥有CCNode的所有特性,并且它也继承于CCRGBAProtocol。从名字看来我们就知道它是一个带有颜色和透明度的节点。所以它比起CCNode就多了2个特性,Opacity和RGB值。如果要给子节点传递透明度属性,那么需要设置setCascadeOpacityEnabled(true),如果传递的过程中遇到了CCNode,那么传递会原创 2014-03-28 10:56:49 · 1090 阅读 · 0 评论 -
分享几个cocos2d-x游戏源码【一直收集】
http://my.oschina.net/arthas/blog/100306http://paralaxer.com/cocos2d-x-book/http://ishare.iask.sina.com.cn/f/34273836.htmlhttp://www.eoeandroid.com/forum.php?转载 2014-03-08 17:52:31 · 2397 阅读 · 0 评论 -
渲染框架的使用
四、精灵帧类(CCSpriteFrame) 精灵帧的概念是相对于动画而产生的。一个精灵时固定的节点,它可以拥有许多精灵帧(CCSpriteFrame),在它们之间切换就形成了动画。CCSpriteFrame类的继承关系如下图所示。 CCSpriteFrame类通过贴图定义,也可以是贴图的一部分,可以通过精原创 2014-03-14 10:40:18 · 639 阅读 · 0 评论 -
3、b2AABB:
3、b2AABB:b2AABB就是一个盒子,是由两个向量组成,一个为minVertex是最小顶点,另一个为maxVertex是最大顶点,通过这两个顶点来表示最为普通的AABB框。结构体原型:struct b2AABB{ /// Verify that the bounds are sorted. bool IsValid() const;原创 2014-03-10 20:06:31 · 924 阅读 · 0 评论