Cocos2d-x
sh15285118586
对游戏感兴趣,想做科技馆交互设计
展开
-
cocos2d-x 两点缩放
在onTouchesBegan中,touches.size()一直是1。这对多点缩放图片,三维模型来说,挺郁闷的。本文把初始值放在onTouchesMoved 中,基本解决问题,但有一小点问题,就是第一次触摸时有小范围的缩放,因为只有移动才可以得出新的距离,但是此时的距离一定不等于之前的距离。对我的项目够了,不知道其它人能不能用。void CocaineLayer::onTouchesMove原创 2016-06-13 19:08:05 · 785 阅读 · 0 评论 -
Material System结构
又浪费一天,之前发了关于这方面的博客,以为自己很熟了,没想到今天犯了这么傻的问题,写material时,居然忘了pass{};结果就是黑屏,没有图。所以再标记一下:material name//(name 意思就是材质的名称,自己定义){ technique name { pass 0 { renderState {原创 2015-11-02 17:53:54 · 567 阅读 · 0 评论 -
Sprite3D模型本身遮挡问题
模型遮挡问题一般都是深度测试设置,但是我今天怎么设置都没用。不过还好我做了5个案例,有一个是正确的,最后查找终于找出原因。 先看一下效果图: 这是正确的效果,之前错误是这种情况下,黄色的没有被蓝色遮挡。 _model = Sprite3D::create(RESOURCE_FILES_3D + "cocaine.c3b");原创 2015-10-30 00:33:40 · 2077 阅读 · 0 评论 -
cocos2dx Material System讲解二
cocos2dx 增加了材料系统,因为之前我深入研究过RenderMonkey这个软件,又深入学习了OpenGl es2.0,所以理解起来还是挺轻松的。但是有些写法还是不太一样,所以在这里记下,和大家分享一下。原创 2015-10-28 11:23:51 · 1306 阅读 · 0 评论 -
Particle Universe 学习
我学习两个晚上的PU,终于做出我想要的效果了,结果往引擎里面导入时,死活不行,后来查文档才发现,有一些是不能用的。具体如下:1. *.mesh文件不是cocos能识别的,如果想在cocos中使用需要转换为c3b或c3t2. 部分功能无法使用,如下:Technique:Spatial hashing,LOD Index。Emitter:MeshSurface(与OGREM原创 2015-10-28 12:02:37 · 1377 阅读 · 0 评论 -
PU导入问题解决
如下图:官方给的案例中没有models这个文件夹,但在pu目录里面是有的。这里建目录和pu软件对应,更好,但是要注意配置models路径,在appdelegate.cpp文件里设置,如下代码: auto fileUtils=FileUtils::getInstance(); std::vector searchPaths; searchPaths.push_bac原创 2015-10-28 12:19:37 · 2411 阅读 · 3 评论 -
cocos2dx Material System讲解一
cocos2dx 增加了材料系统,因为之前我深入研究过RenderMonkey这个软件,又深入学习了OpenGl es2.0,所以理解起来还是挺轻松的。但是有些写法还是不太一样,所以在这里记下,和大家分享一下。原创 2015-10-28 10:25:28 · 2412 阅读 · 0 评论 -
多个图层重叠,只有显示图层能进行touch行为的解决方法
cocos2dx多个图层重叠,只有显示图层能进行touch行为的解决方法原创 2015-09-23 22:32:43 · 978 阅读 · 1 评论 -
cocos2d-x类型转换(CCstring int string char UTF-8互转)
在做数据转换时,最好包含以下头文件#include #include #include #include USING_NS_CC;using namespace std;在cocos2d-x中,也有一个格式刷:CCString(数据转换常常找她做中间人),那么我们要转换类型,可先将起始数据类型刷成CCString然后再转成目的数据类型,这个方法比较方便且实用。转载 2015-10-12 11:23:13 · 505 阅读 · 0 评论 -
顶点突然增加
今天在做程序时,开始加载模型顶点是84,之后场景复杂程度增加,结果顶点数增加到了460,郁闷死了。最后,我发现是摄像机出问题了。在不同图层,要设置不同的摄像机。当然这些图层是交替显示,不是用完一个就彻底清除。所以要_cameraOrthographic = Camera::createOrthographic(visibleSize.width, visibleSize.heigh原创 2015-09-18 14:05:28 · 481 阅读 · 0 评论 -
cocos2dx在win32中全屏
bool AppDelegate::applicationDidFinishLaunching() { // initialize director auto director = Director::getInstance(); auto glview = director->getOpenGLView(); if(!glview) {#if (CC_TARGE原创 2016-01-08 13:55:07 · 1481 阅读 · 0 评论 -
cocos2dx抗锯齿问题
没抗锯齿效果:打开抗锯齿效果如下:这种效果就能满足要求了。那么,是怎么做到的呢,其实很简单在glDrawArrays(GL_TRIANGLES, 0, count);语句之前加入glEnable(GL_POLYGON_SMOOTH);就可以了,但是效果是下图:发现没有,右下角button出问题了。要想正常,一定要记住,打开就要关闭的道理。在glDrawArr原创 2016-04-14 22:57:13 · 5813 阅读 · 3 评论 -
cocos2dx在vs运行正常,在Android编译正常,运行错误的一个原因
在Eclipse中运行cocos2dx,如果有错误,会在编译的时候曝出,然后跟着提示更改,但有时不报错,但是就运行不了,而在vs中却是运行的了。还好,写代码不多,回头找出来问题所在。初始化数字,在vs中Sprite* rcHelp[]这样初始,让后用rcHelp[0]、rcHelp[1]等,不会出错,能够运行,但是到Eclipse中编译不报出,但是运行就闪退。要这样初始化:Sprite*原创 2016-06-12 23:44:23 · 768 阅读 · 0 评论 -
Cocos2dx v3.10 pageview addeventlistener不起作用
解决方案:https://github.com/cocos2d/cocos2d-x/pull/14964/files越来越不喜欢cocos了,到处是坑,升级就升级吧,把原来的功能都删没了!!!本应该是有替换的方法呀,哎!!!!原创 2016-06-07 11:19:01 · 1575 阅读 · 0 评论 -
viewpage相邻两页叠加错误问题
错误图片:正确图片:正常不应该出问题的才对,哎,就是出一些小问题,水平滑动,边就没问题,垂直就出问题,我的代码和官方给的一样,就是不行,不知道官方的怎就可以。好在解决问题的方法不止一种,就是把两个页分开放进viewpage就可以了,代码是:setItemsMargin看样还是要好好学英语,还好我知道margin的意思。原创 2016-06-06 23:24:43 · 447 阅读 · 0 评论 -
#include "extensions/cocos-ext.h" 无法打开
他妹的,这么简单的一个问题,要弄两个小时,气死我了!!!!!这是官网的cpp-test文件里面的内容,我用3.10版本的cocostudio创建文件,里面没有,是下面这个样子:所以总是提示#include "extensions/cocos-ext.h" cocos2dx 无法打开!!1原创 2016-05-23 15:09:25 · 1201 阅读 · 0 评论 -
Cocos2dx使用OpenGL es建三维模型遮挡问题
顶点输入渲染管线时,要有顺序,这个顺序的影响之一就是遮挡问题。如下图:例如我画一个齿轮,顶点顺序是先将齿轮正面和后面点输入,再输入边侧顶点,那么总是边侧面在前,效果是错误的。要先判断哪个面遮挡哪个面,本例中是正面和侧面遮挡边侧面,所以要先输入边侧面的点,再输入正面和背面的点,这样就正确了。原创 2016-04-20 01:44:21 · 887 阅读 · 0 评论 -
Cocos2d-x V3.10版本中的videoplayer问题
还是那个问题,Cocos2dx到处是坑!!!V3.7.1中一切正常,而且代码的思维和其它一样,他妹的,到V3.10就出错!!!用了一个多星期,终于搞定了,现在总结一下问题。1、初始化问题: 在3.10版本中,官方给的demo中,videoplayer的初始化是在Scene的init中初始化,我把3.7中的思维,先把videoplayer放在layer上,让后初始化,在这里死活不行原创 2016-05-27 14:07:00 · 4229 阅读 · 0 评论 -
Camera Perspective/orthographic
在检验齿轮是否正确时,出现显示错误,如下图:大圆没有外切,以为是计算齿轮算法出问题了,吓死宝宝了,结果更改摄像机模式,把透视改成正交就正确了,验证了我的渐开线圆柱齿轮建模正确,如下图:透视图会出现近大远小,正交不会出现。原创 2016-05-13 01:53:04 · 814 阅读 · 0 评论 -
cullFace
cocos就是一个大坑,建议不要学这个破引擎了!!!!我把引擎从3.7升级到3.10,他妹的,同样的代码,就两种效果:错误图片:不透明显示文字正确图片:我用的是Sprite3D,材质是我自己的写的。material hexgon{ technique h_front { pass 0 { renderState原创 2016-05-24 01:05:54 · 1025 阅读 · 0 评论 -
cocos2dx抗锯齿与渲染冲突——待解决
看对比图:1、抗锯齿效果:2、不抗锯齿效果:第一个图的轮廓是我要的,第二个图的渲染时我要的,解决中。。。原创 2016-04-15 09:49:37 · 2137 阅读 · 2 评论 -
cocos2dx shader
在测试过程中,发现shader如果有错误,那么在material创建的时候就会报错。这是检查shader的一个好方法,但是不会告诉具体哪个条出错。 在cocos2dx中,u_color要用,但是什么作用不太清楚,以后要弄明白。所以现在的shader中,我只是把它乘给某个变量。原创 2015-11-06 09:10:35 · 546 阅读 · 0 评论 -
纹理贴图原理总结
纹理贴图原理总结原创 2015-11-04 00:02:42 · 2544 阅读 · 0 评论 -
std::function简单的理解
对std::function的简单实用的理解。原创 2015-08-25 22:42:28 · 5523 阅读 · 1 评论 -
Cocos2d-x-3.6 用户交互原理---------如何通过JNI连接Java和C++
Android中的jni链接c++,本文是cocos2dx如何将手机的上的操作传递到native层使用。这里只是将过程说出,因为我弄了好久才找到,更深层次的理解还是要靠自己慢慢领悟和学习。原创 2015-07-30 18:42:21 · 1251 阅读 · 0 评论 -
CC_CALLBACK之间的区别
例一:如add(int,int,int,int),使用CC_CALLBACK_2,可以写成CC_CALLBACK_2(Test::add,this,3,3),得到的func以后使用时候直接给出前两个参数赋值就可以了,如func(1,2);例二:#define CC_CALLBACK_0(__selector__,__target__, ...) std::bind(&__s原创 2015-07-30 12:42:34 · 1846 阅读 · 0 评论 -
cocos2d-x AnchorPoint锚点
锚点是定位和变换操作的一个重点。锚点我们可以看成用一根图钉将一张纸或者相片钉在墙上的那个点。节点的位置是由我们设置的position和anchor point一起决定的。值得一提的是,anchor point的默认位置Layer的是左下,而其他的node是中点。节点的原点是父节点的左下角。[cpp] view plaincopy转载 2015-07-30 10:25:56 · 409 阅读 · 0 评论 -
对WeakReference的理解
如果你想写一个 Java 程序,观察某对象什么时候会被垃圾收集的执行绪清除,你必须要用一个 reference 记住此对象,以便随时观察,但是却因此造成此对象的 reference 数目一直无法为零, 使得对象无法被清除。不过,现在有了 Weak Reference 之后,这就可以迎刃而解了。如果你希望能随时取得某对象的信息,但又不想影响此对象的垃圾收集,那么你应该用 Weak Reference原创 2015-07-17 23:56:19 · 2655 阅读 · 0 评论 -
std::string用法总结
在平常工作中经常用到了string类,本人记忆了不好用到了的时候经常要去查询。在网上摘抄一下总结一下,为以后的查询方便:string类的构造函数:string(const char *s); //用c字符串s初始化string(int n,char c); //用n个字符c初始化string类的字符操作:const char &operator[](int转载 2015-07-29 10:54:27 · 815 阅读 · 0 评论 -
Cocos2d-x 3.1 内存管理机制
Cocos2d-x使用的内存管理方式是引用计数,引用计数是一种很有效的机制,通过给每个对象维护一个引用计数器,记录该对象当前被引用的次数。当对象增加一次引用时,计数器加1;而对象失去一次引用时,计数器减1;当引用计数为0时,标志着该对象的生命周期结束,自动触发对象的回收释放。引用计数的重要规则是每一个程序片段必须负责任地维护引用计数,在需要维持对象生存的程序段的开始和结束分别增加和减少一次引用计数转载 2015-07-28 15:08:55 · 701 阅读 · 0 评论 -
cocos2dx导入到eclipse出现"C/C++ Indexer". java.lang.NullPointerException
解决办法:打开Android工程中的.cproject文件,删除下面代码即可。原创 2015-07-28 01:58:58 · 539 阅读 · 0 评论 -
virtual empty() const中的const有的作用
后面加个const 表明该函数不会改名成员函数的值!该函数可以被常量对象访问(const)。 注意 加了const 与不加const的函数是两个不同的函数! 用个例子说明其区别: #include class A { public: void empty() { std::cout<<"call empty()\n"; }原创 2015-07-27 21:39:06 · 756 阅读 · 0 评论 -
BMFont 使用
1首先 下载安装windows下免费的位图字体制作工具Bitmap Font Generator下载地址http://www.angelcode.com/products/bmfont/install_bmfont_1.13.exe2 打开软件,选择Opotion->FontSetting,来设定需要导出的字体我这里用微软雅黑。 Size可以设定字体大小,最好需要多大就设定转载 2015-07-30 12:05:55 · 910 阅读 · 0 评论 -
自动提示和手动提示 VS2013与Eclipse中的设置
刚开始学C语言时,所有的代码都是纯手敲进去的,因为我在小学时就练过盲打,最快时候,一分钟打130个字母,所以我没觉的什么不好。可是用过自动提示后,我已经离不开了,即使打字母再快,也没有自动提示和手动提示的快,所以今天就说一下在eclipse和vs2013里面怎样设置。原创 2015-08-26 22:15:47 · 10416 阅读 · 2 评论 -
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:超出屏幕的部分会被裁剪,两侧没有黑边,铺满屏幕,按图片原始比例显示,图片转载 2015-08-06 21:30:14 · 534 阅读 · 0 评论 -
cocos2d-x的android项目中如何加载第三方so库
刚开始接触cocos2d-x,在一个项目中需要将cocos2d-x与传统android代码混合使用,原有android项目中使用到的so文件也就需要添加到项目中,由于cocos2d-x项目在编译后会自动生成so文件,并且删除其他在lib中出现的so文件,所以需要在编译的时候修改原有android.mk文件来增加第三方so文件的声明。例如将百度推送的so文件加载到项目中:转载 2015-08-06 20:07:56 · 1717 阅读 · 0 评论 -
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 视图,然后将这个视图映射到设备屏幕上。根据不同的设定转载 2015-08-06 20:39:43 · 603 阅读 · 0 评论 -
Sprite 3D用法和相关特性详解(包括如何从零到一个完整工程)
一直以来Cocos2d-x游戏引擎留给大家的印象是一款纯2D游戏引擎,它在2D手机游戏开发方面有很出色的表现,不过现在我要告诉大家,今天的Cocos2d-x已经不再是一款只能开发2D游戏的游戏引擎了,从v3.1版本开始,Cocos2d-x已经支持obj格式的3D静态模型的显示,在v3.2 版本中支持3D骨骼动画,不过在这两个版本中3D模型还不支持submesh,这个不用担心,在未来的v3.3版本中转载 2015-08-06 13:19:04 · 716 阅读 · 0 评论 -
Cocos2d-X权威指南笔记
来自http://blog.csdn.net/runaying ,引用必须注明出处!Cocos2d-X权威指南笔记温馨提醒:使用二维码扫描软件,就可以在手机上访问我的博客啦!另外大家可以访问另一个博客 http://blog.csdn.net/u012972188概述最近一直在看 Cocos2d-X权威指南(该书网络上有电子版)。觉得,别人的书,始终是别人的,花费了转载 2015-07-24 15:56:27 · 541 阅读 · 0 评论 -
CCConfiguration作用
将显示文本单独保存为文本文件,可解决乱码问题,这一Android中的string.xml文件作用一样。 在cocos2d-x的示例项目中有关于配置文件读取的示例项目,有兴趣的童鞋可以自己去找下,这里将示例内容简化进行简要介绍。 首先,相关配置文件必须放在项目Resource目录下,可自己设置二级目录,方便管理, strings.plist内容如下:原创 2015-07-24 15:50:05 · 717 阅读 · 0 评论