
Cocos2d-x
文章平均质量分 73
we000636
这个作者很懒,什么都没留下…
展开
-
cocos2d-x中init函数的作用(初始化)
开始很困惑既然C++中有构造函数,为什么在cocos2d-x中还需要加入init函数,这两者难道不等价?后来搜索后在http://www.cocos2d-x.org/boards/6/topics/7820看到一些解答,原因有很多:C++的构造没有返回值,我们不能判断我们的类的构造是否成功。还有人说可能在派生类中如果使用构造函数,那么避免调用Super::function()比转载 2012-11-27 19:24:55 · 4026 阅读 · 1 评论 -
Cocos2d-x win7 + vs2010 配置(如何创建cocos2d-x工程,解决各种头文件包含错误、lib库引用错误 及dll链接错误)
下载最新版的cocos2d-x。打开浏览器,输入cocos2d-x.org,然后选择Download,本教程写作时最新版本为cocos2d-1.01-x-0.9.1,具体下载位置如下图:下载完之后,解压到当前文件夹。我把下载的程序放在F盘根目录,解压完毕之后,双击打开文件夹,看看里面有什么东西,红圈部分就是我们要安装使用的文件:接下来,我们正式安装cocos2d-x到win转载 2013-02-07 23:19:02 · 9647 阅读 · 4 评论 -
cocos2d-x CCCallFunc系列函数的应用
猴子原创, 欢迎转载,转载请在明显处注明! 谢谢。原文地址:http://blog.csdn.net/yanghuiliu/article/details/6933277CCCallFunc作为一个CCAction可以用来调用自己的函数。其用处还是很多的。1、用一个不带参数的函数给一个action创建回调功能。使用CCCallFuncCCFiniteTimeActi转载 2012-12-26 11:20:03 · 10323 阅读 · 3 评论 -
cocos2d-x 游戏暂停界面,监听home键,返回键,Menu键 解决方案
游戏暂停界面:cocos2d-x中游戏暂停界面提供的思路是用pushScene()和popScne(),即推进和弹出场景,当游戏暂停时,推进(pushScene())暂停场景,之前运行的场景将会自动暂停,然后我们可以在暂停场景中操作,如Resume,ReStart,Quit等,当我们不再需要暂停场景时,可以popScene()将暂停场景弹出。(场景就像一张纸,我们推进一个场景,相当于在这张纸上原创 2013-02-21 11:29:13 · 17598 阅读 · 3 评论 -
如何优化cocos2d程序的内存使用和程序大小:第一部分
译者:在我完成第一个游戏项目的时候,我深切地意识到“使用cocos2d来制作游戏的开发者们,他们大多会被cocos2d的内存问题所困扰”。而我刚开始接触cocos2d的时候,社区里面的人们讨论了一个非常有意义的话题:“请简单地讲述你认为新手cocos2d程序员在他开始编码之前,最应该先知道,或者应该关注和注意的事项。”这个问题的答案很多,有人讲是“如何加载和保存游戏数据”,有人讲的是“如何转载 2013-02-21 11:52:25 · 1721 阅读 · 0 评论 -
cocos2d-x中几种存储数据的方式
1.CCUserDefault.此类采用单例模式,可以通过sharedUserDefault()函数获取其唯一实例.CCUserDefault采用XML存储技术,就是一般的键值对.参考博文:http://blog.sina.com.cn/s/blog_82ca0a770101106d.html2.CCFileUtils针对cocos2d-x我们可以通过CCFileUtils::原创 2013-03-05 10:55:22 · 5933 阅读 · 0 评论 -
如何优化cocos2d程序的内存使用和程序大小:第二部分(完)
前言:从上周发布教程的微博反应情况来看,cocos2der们对于游戏的内存问题还是非常关心的。本文是上一篇博文的续,旨在教大家如何减少cocos2d程序的大小。 全文如下:减少你的程序的大小把纹理的颜色位深度减少到16位,不仅可以减少内存压力,还可以有效地减少程序的体积。但是,我们还有其它方法可以更进一步地减少程序的大小。 TexturePacker转载 2013-02-21 11:53:54 · 2004 阅读 · 0 评论 -
cocos2d-x win32移植到android
准备工具:1.NDK R7版本以上2.Eclipse C++(已搭建android环境)3.Cococs2d-x 2.0 - 2.0.4不需要用到Cygwin,因为R7版本以上的NDK集成了我们需要用到Cygwin的功能:编绎C++(打包cocos2d-x文件,编绎SO)参考博文:http://blog.csdn.net/xiawei32/article/details原创 2013-02-17 16:04:40 · 14857 阅读 · 1 评论 -
cococs2d-x 多线程加载plist
实现多线程加载plist功能,需掌握知识:1.多线程开启:pthread2.如何在线程中加载plist一.多线程开启当我们想在程序中开多线程中,第一想到的是cocos2d-x有没有自带方法,幸运的是我们找到了CCThread,不幸却发现里面什么都没有。cocos2d-x自带了一个第三方插件--pthread,在cocos2dx\platform\third_party\wi原创 2013-03-06 11:47:12 · 12251 阅读 · 10 评论 -
cocos2d-x 贝塞尔曲线的简单运用(CCBezierTo,CCBezierBy)
一.贝赛尔曲线简介贝塞尔曲线是应用于二维图形应用程序的数学曲线。曲线的定义有四个点:起始点、终止点(也称锚点)以及两个相互分离的中间点。滑动两个中间点,贝塞尔曲线的形状会发生变化 图1p0起点,p3是终点,p1,p2是控制点http://en.wikipedia.org/wiki/B%C3%A9zier_curve贝兹曲线的描述结构体如下:/** @原创 2013-02-27 10:33:56 · 26221 阅读 · 0 评论 -
cocos2d-x设计模式发掘之五:防御式编程模式
本文由子龙山人原创,转载请注明出处并通知子龙山人!声明:防御式编程是提高程序代码质量的一种手段,它不能算是真正意义上的模式。但是,这里,我还是要给它冠之以“模式”二字。原因有2:1.cocos2d-x的框架源代码大量采用了防御式编程技术,用来确保框架的代码质量和稳定性。2.标题党,引起大家对于防御式编程的重视。特别是当大家给cocos2d-x贡献源代码的时候,更应该要注转载 2013-04-10 10:58:19 · 2609 阅读 · 0 评论 -
do...while(0)的妙用
在C++中,有三种类型的循环语句:for, while, 和do...while, 但是在一般应用中作循环时, 我们可能用for和while要多一些,do...while相对不受重视。 但是,最近在读我们项目的代码时,却发现了do...while的一些十分聪明的用法,不是用来做循环,而是用作其他来提高代码的健壮性。1. do...while(0)消除goto语句。通常,如果在转载 2013-04-10 10:59:31 · 1371 阅读 · 1 评论 -
Lua 编程技巧
Lua 的 5.1 版本已经正式发布。现在,我们应该把全部讨论放在这个版本上。 应该尽量使用 local 变量而非 global 变量。这是 Lua 初学者最容易犯的错误。global 变量实际上是放在一张全局的 table 里的。global 变量实际上是利用一个 string (变量名作 key) 去访问这个 table 。虽然Lua5 的 table 效率很高 ,但是转载 2013-04-10 19:57:03 · 1873 阅读 · 0 评论 -
cocos2d-x学习笔记(持续更新)
接受触屏事件的优先级是值越小,响应触屏事件的优先级越高Z值越大,越外面粒子系统设计工具:Particle Designer软件 目前只支持MAC平台 导出 plist文件地图设计工具:Tiles 目前有两个版本,一个是Java版本,另一个是QT版本 导出TMX格式文件图片编缉工具,将多个精灵整合成一个大图: 导出plist文件Zwoptex 两个版本,原创 2012-12-06 01:51:49 · 20172 阅读 · 2 评论 -
Cocos2d-x建工程时避免copy文件夹和库
在上一篇教程中,我们演示了如何使用VS2010来新建一个工程,并且教大家如何一步步解决头文件包含错误、lib库引用错误 及dll链接错误。但是,每次建一个工程都这么费时,岂不是很不爽,而且每个工程都要copy一份cocos2d-x、cocoaDension和box2d文件夹,还有配置lib,dll,太耗时,这样太浪费空间了! 那么,有没有什么办法不这么麻烦呢?当然是有的。这转载 2013-02-07 23:20:26 · 1558 阅读 · 0 评论 -
cocos2d-x 数学函数、常用宏粗整理
最近我们的cocos2d-x游戏项目已经进入了正式开发的阶段了,几个dev都辛苦码代码。cocos2d-x还是一套比较方便的api的,什么action啊、director啊、ccpoint啊都蛮便捷的。但是我看到几个dev有时候会很不知道用它们,还是首先自己去写函数……用一些比较原始、低效率的方法……甚至是copy / paste………………。……。这不科学转载 2013-02-03 10:43:13 · 5940 阅读 · 2 评论 -
如何查找技术资料----我的一点心得体会
作为一个IT人员,如果不能利用搜索引擎很快地查找到自己想要的技术资料的话,那么会很悲剧!特别是面对新技术的时候,由于资料特别少,就算有,大部分也是英文资料。如果这时候,你查找资料的能力比不上别人的话,很有可能就会在新一轮的技术竞赛中被甩在后面,比如现在很火的ios游戏开发。android由于搞的人多,资料也相对来说多一些,门槛也低一些,不需要mac,只要有一台pc就可以弄。但是,接下来的wphon转载 2013-01-28 16:58:28 · 1552 阅读 · 0 评论 -
升级到cocos2d-x 2.0.2代码差异
最近看cocos2d-x 2.0.2发布后升级了一下,升级后发现又出现了很多错误,原来有一些地方的代码用法改变了。在修改代码的过程中,简单做了一些记录,当做是一个备忘录。 1、CCScene和CCLayer的初始化统一用create()函数进行创建。//升级前代码CCScene *scene=NULL;do{ scene=CCScene::node(); CC_BREA转载 2012-12-01 13:21:02 · 1076 阅读 · 0 评论 -
cocos2d-x中的NODE_FUNC和CREATE_FUNC宏作用
NODE_FUNC( __TYPE__)CREATE_FUNC( __TYPE__)我们经常在头文件中用到上面两个宏。一个重写node()方法,另一个重写create()方法.NODE_FUNC( __TYPE__)代码如下:CC_DEPRECATED_ATTRIBUTEstatic__TYPE__* no原创 2012-12-01 19:29:58 · 12055 阅读 · 0 评论 -
cocos2d-x 瓦片地图的黑线及地图抖动解决方案
BUG 1:地图的每个图块之间有一些细密的间隔,特别是场景移动时更加明显,将游戏截图放大,可以很明显看到这个细线 解决方案:通过设置ccConfo.h中的CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL宏来解决。 将 #define CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL 0原创 2012-12-01 14:07:01 · 7635 阅读 · 0 评论 -
如何在多个移动平台上创建新的cocos2d-x项目
如何在多种平台上创建新的cocos2d-x项目,今天我们将开始学习如何把著名的Cocos2d SimpleGame从objective-C移植到c++,通过使用cocos2d-x引擎,在win32/iPhone/android/沃Phone这些平台上运行它。 Cocos2d SimpleGame是由Ray Wenderlich编写。几乎所有的cocos2d-iphone初学转载 2012-11-23 19:36:06 · 1236 阅读 · 0 评论 -
Cocos2d-x跨Android&iOS平台开发入门
Cocos2D是一个非常棒而且非常容易使用的游戏框架,但是,由于它是采用objc写的,所以你只能使用它来开发ios和mac下面的游戏。 假如你可以使用和cocos2d相似的api来开发android上面的游戏,那岂不是更爽?这样,你就可以毫不费劲地扩大你的游戏的市场份额(android的用户数量巨大啊!) 好吧,确实存在这么一个游戏框架,她就是cocos2d-x!coc转载 2012-11-23 20:39:13 · 1026 阅读 · 0 评论 -
Cocos2d-x 用cocos2d-x实现MoonWarriors(暂停和恢复的实现)
1.实现原理原理不是通过调用 CCDirector::sharedDirector()->pause(),因为这个调用将会导致游戏彻底暂停,而无法返回运行状态!而我们需要的是暂停的时候是游戏逻辑暂停,但是触摸事件监听不能停止,换句话说就是希望我们能控制哪一部分暂停,哪一部分不暂停。有一种很繁琐的方法(看起来繁琐,代码不会很多),就是递归遍历需要暂停的层和精灵,调用pause转载 2012-12-06 16:51:35 · 5141 阅读 · 1 评论 -
NDK全称 Native Development Kit
1、概述 NDK全称:Native Development Kit。 1、NDK是一系列工具的集合。 * NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。这些工具对开发者的帮助是巨大的。 * NDK集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简转载 2012-11-24 09:52:38 · 5167 阅读 · 0 评论 -
cocos2d-x 坐标系
GL坐标系Cocos2D以OpenglES为图形库,所以它使用OpenglES坐标系。GL坐标系原点在屏幕左下角,x轴向右,y轴向上。 屏幕坐标系苹果的Quarze2D使用的是不同的坐标系统,原点在屏幕左上角,x轴向右,y轴向下。ios的屏幕触摸事件CCTouch传入的位置信息使用的是该坐标系。因此在cocos2d中对触摸事件做出响应前需要首先把触摸点转化到GL坐标系。可以使用CC转载 2012-11-25 16:57:20 · 1275 阅读 · 0 评论 -
cocos2d-x和objective-c中的retain()和release()
因为功能和接口和objective-c版本的差不多,所以在内存管理上也采用objective-c引用计数的机制来实现内存管理。仔细看了一下cocos2d-x的源代码,确实写的很好,代码组织得很工整。它们所有类都是继承自CCObject, CCObject有retain(), release()和autorelease()等方法,和objective-c上的NSObject用法一致。每当CCObje转载 2012-11-25 10:51:52 · 5078 阅读 · 0 评论 -
cocos2d 内存管理机制详解
搜集网上一些关于cocos2d内存管理机制的Blog,贴出来方便大家阅读cocos2d-x内存管理机制解析(一):http://blog.csdn.net/a7833756/article/details/7628328Cocos2d-x内存管理(二):http://blog.csdn.net/a7833756/article/details/7632199cocos2d-x学习笔原创 2012-12-21 17:54:33 · 2111 阅读 · 2 评论 -
cocos2d-x中的单例模式运用
单例模式是什么我就不赘述了,直接进入正题。我们在C++往往能用到单例模式,但在cocos2d-x中,运用单例模式时,您是否遇到了麻烦,各种“无法解析”,“error LNK"错误出来。下面我用个例子简单介绍下单例模式在cocos2d-x是如何编写的:这里我编写一个类Global,用来存储游戏中全局都可以访问的唯一变量,这就要求我们随时可以在任意对象中能访问Global,来读取里原创 2013-01-24 10:23:11 · 7818 阅读 · 2 评论 -
Cocos2d-x 2.0 自适应多种分辨率
转载自http://dualface.github.com/blog/2012/08/17/cocos2d-x-2-dot-0-multi-resolution/ 点击打开链接cocos2d-x 2.0 提供一个极有价值的新特征: setDesignResolutionSize() 。这个函数用于指定一个 OpenGL 视图,然后将这个视图映射到设备屏幕上。根据不同的设定,视转载 2013-01-25 20:57:43 · 4981 阅读 · 1 评论 -
cocos2d-x 2.0版本 自适应屏幕分辨率
我使用的版本是cocos2d-2.0-x-2.0.4,cocos2dx-2.0版本对多分辨率适配提供了很好的支持,使用起来比1.0版本要简单些,1.0版本的适配可以参考这篇博文。1. 做2.0版本的适配首先需要了解下面这些知识。(1)适配策略2.0版本提供了三种适配策略:kResolutionNoBorder:超出屏幕的部分会被裁剪,两侧没有黑边,铺满屏幕,按图片原始比例显示,图片转载 2013-01-25 20:55:42 · 1992 阅读 · 1 评论 -
cocos2d-x 聊天输入框实现
聊天输入框 (单行输入框 ,多行可自己扩展)实现功能:1.普通输入2.设置输入框显示最大宽度(PT值,cocos2d-x坐标值)3.设置输入框允许的最大字符数量(字符Unicode)4.输入框自动缩进(当输入字符串数量超过显示框最大宽度时,会自动向左缩进,显示最新字符串输入框实现代码头文件:#ifndef CursorInputDemo_CursorT原创 2013-04-20 20:39:02 · 16759 阅读 · 5 评论