
bug辑录
yang3wei
软件专业,2011年起专注手游开发,参与项目:益智类:NutsPhysics、OhMyFish!,战争策略类:全民君王、红警崛起
展开
-
NSMutableArray 特性
直接上代码:NSString* str0 = @"123";NSString* str1 = @"234";NSString* str2 = @"456";NSMutableArray* array= [NSMutableArray arrayWithObjects:str0, nil, str1, str2, nil];[array addObject:nil];for (N原创 2013-01-20 17:37:42 · 864 阅读 · 0 评论 -
(透彻)java String.getBytes()编码问题
转载自:String.getBytes()的问题String的getBytes()方法是得到一个字串的字节数组,这是众所周知的。但特别要注意的是,本方法将返回该操作系统默认的编码格式的字节数组。如果你在使用这个方法时不考虑到这一点,你会发现在一个平台上运行良好的系统,放到另外一台机器后会产生意想不到的问题。比如下面的程序:class TestCh转载 2012-03-22 03:04:40 · 34501 阅读 · 2 评论 -
Mac Eclipse里面编码转换正常,打成Jar包以后转码成乱码问题
问题出现的背景:我之前都是用 Windows 操作系统的,我在 windows里面搞Java 用的是 Eclipse,由于无知浅陋,我在 eclipse 里面的项目多是以 GBK 编码的。因为 windows 是支持 GBK 中文编码的,而且 windows 下面的 eclipse 也支持项目用 GBK 编码。所以,我上面所采用的做法在 windows 上面是不原创 2012-03-21 12:29:04 · 3100 阅读 · 2 评论 -
慎用dictionaryWithObjectsAndKeys方法
转载自:http://blog.youkuaiyun.com/kmyhy/article/details/6082394有这样一段代码:NSDictionary* items2=[NSDictionary dictionaryWithObjectsAndKeys: [d objectForKey:@"GZDBH"],@"工作单编号", [d objectForKey转载 2012-03-21 12:12:04 · 611 阅读 · 0 评论 -
在.h文件和.m文件里使用import指令有何区别?
转载自:http://blog.youkuaiyun.com/kmyhy/article/details/7175812有的程序员喜欢把所有import语句写在.h文件的头部。而有的程序员则喜欢把import语句写在.m文件头部。你可能觉得写在哪里都无所谓。那么,import语句写在.h文件和.m文件的哪一个都无所谓吗?这并不是真的。通常,我习惯在.h文件头转载 2012-03-21 12:11:08 · 579 阅读 · 0 评论 -
[在cocos2d中添加/删除系统组件,并解决View设置透明会影响View中的其他组件的问题
李华明Himi 原创,转载务必在明显处注明:转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/iphone-cocos2d/455.html11月28日:--------------------------------- 有的童鞋说添加嘞组件(UIScrollView)后操作组件时Cocos2d转载 2012-03-20 18:44:02 · 807 阅读 · 0 评论 -
b2RopeJoint连接的物体摆动幅度夸张的解决办法——设置线性阻尼
/** * added by Bruce Yang on 2012.03.09.15.41~ * 创建乌鸦~ */-(b2Body*) createCrow:(BYObject*)object { b2Vec2 po = object.position; b2BodyDef bodyDef; bodyDef.type = b2_dynamicBody;原创 2012-03-20 18:43:12 · 2047 阅读 · 1 评论 -
XCode Debug 模式断言擒 bug 记
认识到debug模式和断言带来的方便,我迫不及待地便将项目的schema重新设置回了debug模式以前不懂,认为程序在发布的时候用的是release模式,为了降低发布时出现bug的几率,便很早前就将程序设置为debug模式。现在看来真是愚蠢之极。不知道有多少次,我在调试bug的时候,判断空指针用了如下的代码if(var == nil) {NSLog(@"var==nil,f原创 2012-03-20 18:40:21 · 1386 阅读 · 0 评论 -
xcode 里的release 和 debug 区别
转载自:http://hi.baidu.com/yttxuehui/blog/item/2ed99e256b24a46c34a80f2e.html前几天写了一个程序,一直都是在debug下做的,没有出现什么问题,后来要提交到appstore上去了,就用release 测试了一下,就报错了,搞的我很郁闷。后来在网上查了一下debug和release的区别,找到了问题所在,原来有一个变量我忘记初始原创 2012-03-20 18:37:05 · 2347 阅读 · 0 评论 -
warning: check_safe_call: could not restore current frame
转载自:http://stackoverflow.com/questions/2295295/warning-check-safe-call-could-not-restore-current-frame0down votefavorite1share [g+]share [fb]share [tw]What转载 2012-03-20 18:26:15 · 2293 阅读 · 0 评论 -
NS_BLOCK_ASSERTIONS in Objective-C
XCode debug 模式与 release 模式的一大重要区别:debug 模式下,可以方便的进行调试,NSAssert 是暴力调试的一大利器如果只使用一般的 if() {} 来进行 bug 的拣选的话,会存在一些比较麻烦的因素:1。在你真正发布程序的时候,需要手动的去找到这些代码并将其注释掉2。if(){} 和程序逻辑混在一堆,你找起来的时候是很麻烦的!如果用到了 NSA原创 2012-03-20 18:38:26 · 1911 阅读 · 0 评论 -
BASE64Decoder java
转载自:http://fyinthesky.blog.163.com/blog/static/3555251720101012103020849/import="sun.misc.BASE64Decoder"出现错误提示为:Access restriction: The type BASE64Decoder is not accessible due to restriction转载 2012-03-22 04:02:45 · 1442 阅读 · 0 评论 -
OpenGL 对纹理图片尺寸的要求。Unsupported PVR Pixel Format: 0x12. Re-encode...
关于 Unsupported PVR Pixel Format:0x12 的解决方案,没耐性就直接看文末的两幅截图吧~^ ^.The texture size must be a power of two (1, 2, 4, 8,16, 32, 64,128, 256 and so on up to 2048 or 4096 depending a little on the hardware原创 2012-04-09 02:59:37 · 4703 阅读 · 0 评论 -
点评字符串编码认知
参考链接:http://lavasoft.blog.51cto.com/62575/80034字符串重编码这个问题说来比较简单,转码就一行搞定,不信你看看,但究竟为什么要转码,是个很深奥的问题,看例子:import java.io.UnsupportedEncodingException; /** * 字符串转码测试 * * @author le原创 2012-03-22 23:45:43 · 862 阅读 · 0 评论 -
workaround for %33 texture memory bug
原帖链接:http://www.cocos2d-iphone.org/forum/topic/29121PS:为什么要关心 NPOT 呢?因为苹果的OpenGL驱动有一个bug,导致如果使用 POT 的纹理,则会产生额外33%的内存消耗。So,If you didn't know, when you create a texture, iOS will allo转载 2013-01-26 15:39:38 · 1043 阅读 · 0 评论 -
opengles 2.0 移植之路
mvp相关链接:http://www.raywenderlich.com/forums//viewtopic.php?f=20&t=512&start=40#p23610相关代码:void TestDbgDraw::rtWithColor(ccColor4F bgColor, float textureSize) { // 1: Create new CCRenderTex原创 2012-12-18 14:06:07 · 1816 阅读 · 0 评论 -
Why does static NSString leak?
参看原帖:http://stackoverflow.com/questions/6475727/why-does-static-nsstring-leak报错信息:objc[4501]: Object 0x6e17060 of class __NSCFString autoreleased with no pool in place - just leaking - bre转载 2012-09-18 10:35:41 · 1613 阅读 · 0 评论 -
求取多边形矩形包围框的中心点方法
今天下午做了一下游戏功能的扩充,不料又落马了,记录一下~/** * 求取多边形的中心位置(该方法是最原始版,之前因为用的少,所以没有发觉到逻辑上存在错误)~ * Added By Bruce Yang on 2012.09.02.15.30~ * 实践证明,这个方法的逻辑是错误的,汲取这个教训~ */+(b2Vec2) getPolyCenterLogicWrong0:(BYPoly原创 2012-09-02 15:39:46 · 4509 阅读 · 1 评论 -
objective-c 自定义 NSDictionary 键类的注意事项
做 ios 开发,NSDictionary、NSMutableDictionary,NSMutableArray、NSArray 都是很常用的容器类Array 就不多做讨论了,今天的文章主要讨论 NSDictionary 和 NSMutableDictionary~以往我用 cocoa 的 Dictionary 的时候,都是选择用 NSString 来作为键对象的类型。一直都没有出什么原创 2012-07-31 08:21:18 · 6662 阅读 · 2 评论 -
CCLayer 在 init 中调用 schedual 方法后引用计数混乱的问题
参考相关问题链接:http://www.cocos2d-iphone.org/forum/topic/314先上代码再解释:RefferenceCountLayer.h//// RefferenceCountLayer.h// HungryBear//// Created by Bruce Yang on 12-8-9.// Copyright (c) 2原创 2012-08-09 00:52:31 · 2137 阅读 · 0 评论 -
objective-c 交叉引用问题的解决方案
objective-c 不允许交叉引用,上代码:A.h#import #import "B.h"@interface A : NSObject { B* _b; // 报错点 1~}-(void) test:(B*)b; // 报错点 2~@endA.mm#import "A.h"@implementation A-(void) tes原创 2012-08-09 00:14:51 · 2425 阅读 · 2 评论 -
Undefined symbols for architecture x86_64:“_glutInit”, referenced from:_main in main.o / Netbeans on
转载自:http://stackoverflow.com/questions/5925697/undefined-symbols-for-architecture-x86-64-glutinit-referenced-from-main-inQuestion:I´m a beginner with OpenGL and "my" first program is this Sierpins转载 2012-06-01 17:39:52 · 6081 阅读 · 0 评论 -
记录一个粗心所导致的bug
前言:前天给游戏里面增加了一个 sensor 类型的fixture,这个 fixture 主要用来处理碰撞,说的具体一点,用来处理浮力。不知道别人是怎么做浮力的,我之前也没什么经验,又一次在和伙计讨论爆炸效果的时候,伙计对 box2d sensor 的代码稍作改动,粗略的实现了爆炸的效果。当时我觉得这个效果应该会有用到的地方,便留下了一点儿印象。后来做水浮力的时候,我想到水原创 2012-04-15 11:31:37 · 849 阅读 · 0 评论 -
代码片段辑录——myDestroyBody,byDestroyBody,resortBodiesOnBoat
清理代码的时候发现,某些方法的名称起地太随意了,交给别人来看肯定是一头雾水,这样不是很好。另外,也发现一些方法里面有大片重复的代码,其实完全可以提出来,作为一个功能单元来使用。想直接删了又害怕出现意外——项目一大了之后,做出的改动都有可能引发一些比较难发现的bug。对于我这个被bug骚扰过无数回的人,多少要采取一些防范措施。虽说用SVN来管理项目版本,但个人觉得还是放在博客原创 2012-04-25 02:44:46 · 869 阅读 · 0 评论 -
box2d 粗略的模拟水浮力
准备工作,首先修改 box2d 的 b2Body 类,增加一个public 修饰的 bool 类型标识变量 m_isInWater,用于标识物体当前是否在水中。然后,切到 box2d 的 b2World 类,在 CreateBody 方法的尾部添加一行初始化标识变量的代码:b2Body* b2World::CreateBody(const b2BodyDef* def){ b原创 2012-04-13 15:44:32 · 4769 阅读 · 5 评论 -
Ant 构建文件的一种写法
BuildDesEncryptor.xml原创 2012-04-12 06:48:54 · 3568 阅读 · 1 评论 -
恼人的伪bug!
游戏还没做完,不但没有做完,而且还差相当多的东西!由于之前没有仔细考虑过关卡文件后期的拓展性,以至于很多预想的游戏元素都无法通过关卡文件添加到游戏里面此数日主要用来对这些问题进行整改整改之前也狠狠想了一段时间,根据游戏后面的逻辑,还需要加入哪些元素,怎么在关卡里面为这些元素预留初始化的数据,等等可以说,游戏看上去虽然简单,但是一步步的走下来,每一个步伐都不那原创 2012-01-06 18:40:03 · 1102 阅读 · 0 评论 -
克服困难,解决遇到的问题!!
遇到了一些问题,一度产生放弃的想法,不过好歹最后还是一路坚持了下来,将问题解决了大半~反观以前做圆角边框的时候,要用程序解大量的曲线方程,算得我真是想吐,也是想放弃,不过还是挺到最后把这块骨头啃了下来这次做的是一个将所有形状放缩成同一高度的功能,遇到的一些困难,都是因为粗心大意所致,不过也是有一些麻烦的地方,麻烦地我不想去做,反正今天是不像做了,残缺地功能等我哪天心情好了就把他收了。原创 2011-08-17 17:37:00 · 963 阅读 · 0 评论 -
将cocos2d集成的box2d类库由2.1.2升级为2.2.0版本
将游戏烧进机器里面以后很兴奋,昨天晚上把玩了一下,结果发现一个非常之令人不解的bug:某些情况下,切割生成的形状掉落到静态物体上以后,就像被粘住了一样,不能在模拟运动而且,这块形状在和其他形状发生碰撞的时候出现严重失真的情况(重叠了)当第二块形状掉落下来的时候,没有发生碰撞:接下来就蛋疼了,在网上找呀找,凡是跟box2d字样沾上边的,关键字里面带了中文的,基本是都是原创 2011-10-13 14:36:38 · 1191 阅读 · 0 评论 -
真机测试时不小心拔掉机器导致的 一个bug及解决方案
参考帖子:http://stackoverflow.com/questions/788277/iphone-strange-error-when-testing-on-simulator真机测试的时候不小心吧touch4g拔下来了,结果导致再次运行程序的时候,报出以下错误:Couldn't register com.myApp.debug with the bootstrap server原创 2011-10-24 18:22:09 · 682 阅读 · 0 评论 -
最近的一些总结
1。解决了box2d ContactListener相关的一个bug(实际上算不上解决,只能说是用一些手段逃避了一个bug)我想做一个一个物体碰撞另一个物体后就消失的功能,我在要销毁的物体上调用DestroyBody方法,结果竟然引发 b2World m_bodyList 成员的紊乱!m_bodyList是一个双链表的结构,双链表插入删除操作都比线性表要高效,不难理解erin的良苦用心原创 2012-01-22 01:58:43 · 902 阅读 · 0 评论 -
解决了几个bug(XCode每次都编译所有文件,cocos2d2.0 shader load error)
1。xcode每次调试运行的时候都要编译一遍所有的class文件解决方案:把项目文件拖拽到另外一个路径再重新编译!(clean all targets我试了n遍,没用)~2。cocos2d 2。0 Failed to load shader2012-01-23 05:01:40.018 FrozenFish0.1[4744:10a03] cocos2d: coc原创 2012-01-23 05:08:31 · 5424 阅读 · 0 评论 -
dealloc 的水,很深?
- (void) dealloc { /** 1.C++ part~ */// _world->~b2World(); delete_world; // 经测试,delete会调用 b2World 的析构函数~ _world = NULL; delete_debugDraw; //须手动去销毁,_world析构的时候并不会将 _debug原创 2012-02-23 16:22:03 · 624 阅读 · 0 评论 -
'cmath' file not found
box2d 的 b2Vec2 类型和 cocos2d 的 CGPoint,CGSize, CGRect,我想拿出来自己用,于是新建了一个 Terminal 工程。因为 CGPoint 和 苹果自带的 CoreGraphics里面自带的~而 box2d 里面的 b2Vec2 类型我也经常用到,包含 b2Vec2 类型定义的头文件 b2Math.h 里面同时也包含了不少 有用的,线程的转载 2012-02-28 21:36:37 · 4383 阅读 · 0 评论 -
Cocos2D CCRenderTexture莫名其妙报错的问题
注意两点就行了:一个就是:1。CCRenderTexture在初始化的时候高度和宽度不能小于1(这是模拟器的要求)报错之后的表现为:虽然画面卡住(就如同opengles罢工不做渲染了一样),但程序依然能够正常执行,box2d引擎工作也很正常(通过控制台输出进行检查)~满足了上述的要求,程序能够很好的运行在模拟器里面~但是,在模拟器里面能很好的运行不代表也能在设备里面很好的运原创 2011-10-22 03:43:12 · 2772 阅读 · 0 评论 -
可能造成“Received Memery Warning”的一种原因
我的游戏使用到了cocos2d 框架,游戏结构比较简单,一个 MenuScene, 一个 GameSceneGameScene继承自 CCLayer由于要使用一个比较大的地形(总之比iTouch4g的屏幕要大)因此我选择使用可以移动的场景用来实现这个功能之前我的GameScene就是仅有的一个 CCLayer 对象~但是如果要实现场景的移动的话,则必须要在这个CCLayer里面原创 2011-11-05 22:08:21 · 725 阅读 · 0 评论 -
objective-c 成员变量没初始化所造成的灾难
以下是我所想要得到的效果:但我实际得到的却是这么个玩意儿:找了很久很久,起初还以为是弄乱了opengl的状态机,但是其他元素的渲染却并没有出什么问题啊,很奇怪,很纠结,很揪心。。-(void) drawPolygon:(b2Fixture*)fixture xf:(b2Transform)xf color:(b2Color)c原创 2012-02-15 22:25:36 · 1963 阅读 · 0 评论 -
遇到数个bug,记录一下
遇到了两个不是很难但却有点儿类似于“找茬”的bug1个是添加到 batch 中的 sprite 调用 removeFromParentAndCleanUp 方法之后,竟然没有被顺利移除出去的bug蛋疼了好一阵,真的可以说是百思不得其解,还以为有时 cocos2d 冒出了什么新的 bug,但我总是被事实打击到,不过我也习惯了,貌似每次都是我自己的问题,哈哈~贴张图先:右下原创 2012-02-25 23:06:44 · 1000 阅读 · 0 评论 -
抓狂!!对浮点数使用 abs() 函数求绝对值的代价!!
因程序需要,需求出浮点数的绝对值~第一个想到的函数就是 abs(),不料无论怎么求,abs出来的结果都是0!!是的,就是0!!真是他妈的太奇怪了,我检查了一遍又一遍,代码的写法没有发现任何的问题,可以求出来的结果他妈的就是0!!!白白浪费了哥1个半小时以上,不泻泻火还真是他妈的受不了!!这次我是真的学乖了,今后不管遇到了什么问题,10分钟每搞出来马上去google查!!原创 2011-08-18 16:26:39 · 13157 阅读 · 3 评论 -
对付EXC_BAD_ACCESS的再一次胜利——暴力调试法
一波未平,一波又起,这不,下午继续开发进度的时候,又遇到了新的问题:// ************************************************************************************一。CCSprite 明明设置了rotation属性之后才加入CCNode,但是就时开不出来有任何的角度偏转!!!找了个把小时,才惊奇的发现:原来原创 2011-08-13 21:35:07 · 5377 阅读 · 0 评论