自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 Project Euler 8 :Largest product in a series

The four adjacent digits in the 1000-digit number that have the greatest product are 9 × 9 × 8 × 9 = 5832.7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869...

2019-08-27 19:48:15 150

原创 Project Euler 9 :find the only Pythagorean triplet, {a, b, c}, for which a + b + c = 1000.

A Pythagorean triplet is a set of three natural numbers,a<b<c, for which,a²+b²=c²For example, 3²+ 4²= 9 + 16 = 25 = 5².There exists exactly one Pythagorean triplet for whicha+...

2019-08-27 19:40:04 175

原创 Lua 函数返回异常的问题

项目里新写了一个无限扩张的地图,在拖动地图的时候会调用函数A来计算当前位置。Win32上测试没发现问题,但是在安卓手机运行的时候,在高频度调用时偶尔会出现函数A返回值为nil的情况。直接看代码可以说完全没有头绪,因为这个函数A的返回值根本就不可能为nil值。。于是在返回值前面加上打印,发了个debug的包来测试,可是怎么测他都不出,奇怪的是怎么都不出,因为之前没debug的包是比较容易...

2019-08-19 19:25:29 567

原创 通过减少GL CALLS 来优化渲染性能

        GL verts 表示给显卡绘制的顶点数         GL calls 表示代表每一帧中OpenGL指令的调用次数 其中“GL calls”代表每一帧中OpenGL指令的调用次数,这个数字越小,程序的绘制性能就越好。cocos中渲染流程是这样的:(1)drawScene开始绘制场景(2)遍历场景的子节点,调用visit函数,递归遍历子节点的子节点(3)对每...

2019-01-10 13:59:00 1363

原创 C++两个类互相引用

A.h#include "A.h"#include "B.h"class A{ ...    B b;} B.hclass A;class B{  ... A a;}B.cpp#include "A.h"... 

2019-01-05 16:00:41 570

原创 安卓app图标在android 9.0上显示不全的问题

之前因为要符合google的需求,所有的icon都使用的512*512的大小。今天先发了一个出来发现图标在2台小米安卓9.0机器上显示不全,就根据api做了多个规格的icon图标再发了一个包。但是发出来的包安装后依旧在2台小米机器上显示不全,然而同事的mix3安装后却显示正常。考虑到可能是系统缓存的问题,重启后发现之前2台机器的显示已经正确了。...

2019-01-03 18:31:32 9391 5

原创 cocos中label无法使用shader

主要原因是cocos中没有原本支持多重滤镜,在label的实现中,默认使用了label_normal的shadersetGLProgramState(GLProgramState::getOrCreateWithGLProgramName(GLProgram::SHADER_NAME_LABEL_NORMAL));  Cocos2d-x 中的 shader 支持位于几个类中,它...

2019-01-03 18:23:01 710

原创 lua #符号来获取非连续数组长度的问题

 一直以来,以为lua的#符号获取到的是一个连续表中非空的前一个下标。比如#{1,2,nil,4,5}获取到的长度为2.但是今天在做一个测试的过程中发现#获取到的并不一定是这个值。查看相关官方文档发现,#获取到的是其遍历到的第一个后面是nil值的元素下标。而#遍历lua表的时候并非是按照顺序从1到n这样的遍历顺序,而是按照hash表来遍历的(估计是按表在内存里的地址下标顺序遍历的,...

2018-12-14 10:59:40 1065

原创 使用绿色版java做版本替换无效

当使用安装版本JDK后,再用绿色高版本升级java直接更改JAVA_HOME容易出现无效的情况,安装版在安装结束后安装程序会自动将java.exe、javaw.exe、javaws.exe三个可执行文件复制到C:\Windows\System32目录中。如果path中C:\Windows\System32是在JAVA_HOME前的话,使用的是C:\Windows\System32里的旧版本,所以为...

2018-08-29 18:35:06 562

原创 已定义的方法和变量,在vs 编译的时候提示未声明。

在vs2012中点击方法跳转可以到对应的.h文件中。但是一旦编译就直接error,提示未声明的变量或者方法。经过查询发现是因为添加的这些方法是在xcode中写的,虽然在vs2012中能看见正确的方法,但是实际上两者的编码格式不一致导致编译器无法正确识别。解决方法是将其保存成txt文本文件去掉编码格式,再拷贝到对应的cpp和.h文件。...

2018-08-29 16:01:45 4472

原创 COCOS 在node的exitTransitionStart事件回调中,移除其他node报错

exitTransitionStart这类移除事件是在detachChild方法这种做的,可以看到此时的index是由传参实现而在真正删除前,又派发了node的移除事件,如果此时在移除事件回调中使用了removeChild操作,remove掉的node将会直接改变序列在其后面的所有children的index,所以上图86 87行代码走完后,对应响应移除的node在最后调用erase将...

2018-08-23 10:24:36 367

原创 cocos通过图片分类加载来节省内存

细节比较丰富的图片保留RGB A8888的格式,其余图片均可使用4444格式。但是需要在加载前调用setDefaultAlphaPixelFormat函数来设置接下来加载的图片使用的像素格式,但是要注意普通的同步加载图片在加载前设置setDefaultAlphaPixelFormat为4444 加载完成后setDefaultAlphaPixelFormat设置为8888.异步加载的图片则需要注...

2018-08-22 20:22:12 496

原创 GL_CLAMP_TO_EDGE should be used in NPOT dimensions

写一个shader的时候设置传入纹理的TexParameters时报错,因为只支持64的倍数的正方形的纹理,所以将图片大小改为64*64的倍数即可

2018-06-21 10:24:12 949

原创 VS2012编译时出现重复定义LINK2005的错误

日前出过这样一个错误,错误提示我某函数被重复定义了,但是检查的时候发现自己通通用了#ifndef #define的,试过各种方法都不行。最后观察发现是说的.obj中重复定义,所以完全清理了解决方案后就行了也不知道是不是这个原因...

2018-06-11 18:56:11 365

原创 cocos scrollview和clippingnode之间的影响问题

问题:在clippingnode中加入scrollview,结果出现clippingnode中的其他图片显示异常或者不显示原因还没仔细查,但是解决方案是跟localZOrder相关例如图片img和scrollView1 一起加到遮罩中,如果img比scrollView1的localZOrder大,则img显示异常如果小于scrollView1的localZOrder,则img显

2017-06-12 12:01:23 639 2

原创 cocos2dx 九宫格 shader失效的问题

最近一个同事使用UIImageView创建图片后,使用shader无效经过查证发现这个图片如果是拉伸就有效,而九宫格无效继续深挖 发现setScale9Enabled为true后,创建image的时候Scale9Sprite::createSlicedSprites()会将原本的sprite替换为9个sprite,可能有人会疑惑作者写这一部分的时候大部分sprite的设置会保留,

2017-06-12 10:30:38 778

原创 texturepacker图片打包偶然出现的错误

发现tp打包图片的时候 偶尔会出现图片没任何改动 合图用图片对比工具跟以前版本比的结果一致但是MD5值对不上的情况 而此时生成的plist又完全一样且MD5值也完全一样

2017-05-25 15:31:21 2983

原创 cocos热更新的小问题

在更新界面调用了一个文件叫做modelXXX.png 实际是个序列帧动画,本身说来没有这个文件的时候播放失败并不会导致闪退但是在热更新的时候如果更了这个文件而整个文件又在不停的播放就有很大几率导致崩溃

2017-05-23 15:03:48 543

原创 lua中math.floor值偏差的问题

math.floor((1.16-1.0)*100) = 15math.floor(0.16*100) = 16考虑到可能是lua中数字都是double类型的原因 所以实验了下以下math.floor(1.9999999999999999) = 2math.floor(0.9999999999999999) = 1又疑惑了 为什么判断出这种结果目前用了规避方式就是做这种

2017-05-22 16:21:34 3219

原创 新碰到的两个问题 一个是sdk回调 一个是热更新

昨天测试某个sdk支付的时候 发现每次回调后必定崩溃 刚开始还以为是支付sdk的问题 查了半天发现会报出openglerror 仔细想了一下 因为我每次回调函数都会添加3个UI(只是为了显示订单号什么的) 去掉后几乎没发现崩溃了。查了资料有人说明是android的gl线程重新渲染会慢 最好延迟一定时间再做渲染。热更新的问题出现在今天早上的版本更新后,过程就不写了,具体原因是我们先检测versi

2017-04-14 13:29:27 524

原创 日常坑

1.cc.FileUtils:getInstance():writeToFile(table,path)存出去的table的,在32位ios环境下,布尔值会变成0、1,安卓的是正常的;2.android7.0使用AudioEngin:play2d方法时,如果不预加载,就会卡顿比较严重。现在进战斗前,我都把要用到的技能音效、语音等预加载(preload)了,在play2d的时候就不卡顿了

2017-02-24 16:34:26 220

原创 ios内加载资源

一共N张图,我在加完一张后立马加载另外一张,一测试xcode直接提示内存警告。。查了点资料大概了解了,ios内加载资源最好加载完一张后等下一帧再加载,顺序尽量从大图到小图的顺序加载

2017-02-23 15:15:48 249

原创 shader在某些机器上初始化失败的问题

写了一些shader,在windows上测试是正确的,在安卓手机上测试,有些机型显示是正常的,有些机型则直接闪退,查log发现是glProgram并没有正确创建出来。又试了下网易的一款模拟器,显卡渲染模式选择directx就会崩溃,而选择opengl就是正常的。#ifdef GL_ES precision mediump float; #endifvarying vec

2017-01-10 13:41:49 1628

原创 cocos3.3 无限热更新问题

今天碰到的,每次进应用都会更新。查得原来3.3在热更新的时候会先对比远程版本和本地版本,如果本地安装包版本大于远程版本就会删掉本地热更新的目录,这就造成了每次重新登录都会更新的错误。。。

2016-12-01 19:21:50 787

原创 cocos android按home键后应用被系统关闭,再次打开后分辨率错误

今天用小米MAX测试程序的时候,发现一旦按home键将程序切到后台,等系统自动回收后再次打开程序分辨率就会错误查了发现是Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeInit中setFrameSize的时候width和height被反过来了但是其他很多机型并没有出现这个问题,改不了小米只好当width小于height的时候互换两个的值解决了。。

2016-12-01 18:56:55 197

原创 cocos ui的text设置描边的问题。

本身text用的描边方式跟label的一致,但是调用的时候偶尔会发现无效,今天仔细观察了下现象,发现如果text不调用setFontName设置字体库的话就会出现无效,具体原因不知。

2016-11-19 15:42:14 2778

原创 SVN设置忽略不正确的原因之一

SVN全局设置忽略某些类型的文件结果一直无效,后来发现是SVN服务器上一旦有这些类型的文件则本地设置忽略就无效,解决办法就是删了服务器上这些文件然后再设置忽略,就不用提上去了

2016-11-19 15:39:16 947

原创 cocos调用FileUtil移除目录的问题

使用removeDirectory的时候会导致模拟器的控制台输出异常,具体表现就是执行到这一句以后,控制台直接不再输出log了。去查了下实现,windows下就是用的普通的移除操作,而且输出到控制台是中文的"未找到目录"等提示信息,可能是中文字符编码不一样导致的吧?但是又实在不知道怎么设置模拟器的控制台输出编码~~~

2016-11-14 16:00:18 926

原创 arm64-v8a中couldn't find "XXX.so”

查看某公司sdk demo的时候发现生成的xxx.so并没有拷贝到arm64-v8a中,根据https://zhuanlan.zhihu.com/p/23102158提到的向下兼容,把该目录删了发觉还是不行?最后只好挨着查终于发现原来r9d的NDK造成的,从r10d开始就能生成并拷贝到arm64-v8a中了。

2016-11-10 19:10:41 1205

原创 cocos3.3 使用spine

1.预加载由于spine使用的是atlas和json格式,与之前项目使用的plist并不相同,所以之前的预加载功能就无效了。为此,通过实现createWithData方法来高效的创建重复的对象。2.换装本身的setAttachment方法确实可以换slot,但是当动画重复播放的时候,就会被复原。在网上查到某位哥哥的解决方案是直接换skin,这个skin只设置你需要换的部

2016-11-01 19:07:56 1741

原创 cocos2dx中精灵设置hue等问题

近期记录刚开始没有看quick的时候按照http://www.cocoachina.com/bbs/read.php?tid-302467.html的方式扩展了一下sprite使其拥有hue的功能。但是,通过反复大量创建发现,GLProgramState在sprite析构后并没有在短时间内被清理,具体原因未知~可能是autorelease慢也可能是直接内存泄露了~对了我使用的是coco

2016-11-01 18:23:30 378

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除