摘要: 苹果的应用讲究用户体验有的时候仔细想想的确,很多细节决定了用户体验比如说惯性拖动可以说之前没有任何一家厂商能把触摸惯性拖动做的像苹果的UI那么流畅Cocos2D中实现能够惯性拖动的选择界面完成的效果:制作一个简单的图层,通过传入许多的节点,图层自动将节点排版,并能够通过物理拖拽来选择其中的某一个节点,并通知节点的代理来处理首先新建一个cocos2d项目,我用的版本是2.0,命名为SimplePhysicsDragSelectorTest新建一个objective-c class,我这里命名为SZSimplePhysicsDragSelector在SimplePhysicsDragSelecto 阅读全文
posted @ 2012-08-13 13:41 SawyerZhu 阅读(4231) 评论(0) 推荐(0) 编辑
摘要: <1>依赖依赖关系用虚线加箭头表示,如图所示:上图表示:Animal类依赖于Water类(动物依赖于水)。依赖是类的五种关系中耦合最小的一种关系。因为依赖关系在生成代码的时候,这两个关系类都不会增加属性。这种微弱的关系可以用类之间的相互了解的程度来说明。(下图为代码生成图)由上图可见生成的代码中Animal类的属性中没有增加Water类。那么Animal类如何使用Water类呢,有三种方式:依赖关系的三种表现形式:①Water类是全局的,则Animal类可以调用它②Water类是Animal类的某个方法中的变量,则Animal类可以调用它。代码演示如下: PS:Animal有一个长 阅读全文
posted @ 2012-07-03 09:42 SawyerZhu 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 接着上次的文章在很多BOX2D游戏中同样会遇到这样一个问题:如何使一个body自然的按照一个指定速度移动?方法同上次所说的有三种:1-直接设定body的线速度这是最直接的方法,但是同样的,并不是在box2d中最好的方法b2body *body;// the body you want to conrollb2Vec2 vel;// the vel you setbody->SetLinearVelocity( vel );这样做,如果只有一个物体,你可以得到你想要的效果,但是如果有许多body,你会发现很多不符合物理规律的现象,这是由于你改变了body正在模拟的物理属性。2-对body施 阅读全文
posted @ 2012-06-07 11:56 SawyerZhu 阅读(5092) 评论(0) 推荐(0) 编辑
摘要: 最近在自己第一个游戏项目里面碰到一个看似简单却花了我2天时间才解决的问题特地发出来分享一下在BOX2D 中如何控制body 自然的旋转到一个指定角度?这个问题在许多游戏中控制角度时都会遇到,但是在BOX2D中,你必须考虑到如果转动中与其他body碰撞等物理因素。能够想到的解决方案有三种:1 在update方法里不断更改body的角度,使他接近于要设定的角度。 b2vec2 clickedPoint;//设定点的向量float bodyAngle = body->GetAngle();//取得物体自身的弧度b2Vec2 toTarget = clickedPoint - body-> 阅读全文
posted @ 2012-06-06 17:25 SawyerZhu 阅读(4742) 评论(0) 推荐(0) 编辑
摘要: 版权声明此文版权归作者Vince Yuan (vince.yuan#gmail.com)所有。欢迎非营利性转载,转载时必须包含原始链接http://vinceyuan.cnblogs.com/,且必须包含此版权声明的完整内容。版本1.1发表于2010-03-08四系统自动创建新的autorelease pool在生成新的Run Loop的时候,系统会自动创建新的autorelease pool(非常感谢网友hhyytt和neogui的提醒)。注意,此处不同于xcode在新建项目时自动生成的代码中加入的autorelease pool,xcode生成的代码可以被删除,但系统自动创建的新的auto 阅读全文
posted @ 2012-06-04 11:39 SawyerZhu 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 版权声明此文版权归作者Vince Yuan (vince.yuan#gmail.com)所有。欢迎非营利性转载,转载时必须包含原始链接http://vinceyuan.cnblogs.com,且必须包含此版权声明的完整内容。版本1.1发表于2010-03-08三@property (retain)和@synthesize的默认实现在这里解释一下@property (retain) ClassB* objB;和@synthesize objB;背后到底发生了什么(retain property的默认实现)。property实际上是getter和setter,针对有retain参数的propert 阅读全文
posted @ 2012-06-04 11:38 SawyerZhu 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 版权声明此文版权归作者Vince Yuan (vince.yuan#gmail.com)所有。欢迎非营利性转载,转载时必须包含原始链接http://vinceyuan.cnblogs.com,且必须包含此版权声明的完整内容。版本1.1发表于2010-03-08二口诀与范式1口诀。1.1谁创建,谁释放(类似于“谁污染,谁治理”)。如果你通过alloc、new或copy来创建一个对象,那么你必须调用release或autorelease。换句话说,不是你创建的,就不用你去释放。例如,你在一个函数中alloc生成了一个对象,且这个对象只在这个函数中被使用,那么你必须在这个函数中调用release或a 阅读全文
posted @ 2012-06-04 11:37 SawyerZhu 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 版权声明此文版权归作者Vince Yuan (vince.yuan#gmail.com)所有。欢迎非营利性转载,转载时必须包含原始链接http://vinceyuan.cnblogs.com/,且必须包含此版权声明的完整内容。版本1.1发表于2010-03-08前言初学objectice-C的朋友都有一个困惑,总觉得对objective-C的内存管理机制琢磨不透,程序经常内存泄漏或莫名其妙的崩溃。我在这里总结了自己对objective-C内存管理机制的研究成果和经验,写了这么一个由浅入深的教程。希望对大家有所帮助,也欢迎大家一起探讨。此文涉及的内存管理是针对于继承于NSObject的Class 阅读全文
posted @ 2012-06-04 11:36 SawyerZhu 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 首先记录并分享下我收集到的几个自学时最常用到的一些网站链接。直接进入正题:1-Stack Overflowhttp://stackoverflow.com/这个是国外类似于百度知道的网站,但是专注于回答程序开发相关问题,我有非常多的问题都是通过在这里查询解决的,这是我们百度知道所不知道的事情。2-iOS Developer Libraryhttp://developer.apple.com/library/ios/navigation/#section=Resource%20Types&topic=Sample%20Code苹果官方的开发库,我还有许多没有学会,如果有对IOS基础框架有 阅读全文
posted @ 2012-05-31 13:08 SawyerZhu 阅读(539) 评论(0) 推荐(0) 编辑
摘要: 第一篇博文首先介绍一下我自己,毕业于华东理工大学,专业是过程装备与控制工程,很拗口的一个专业,可能没多少人明白是干什么的,甚至有些学我们专业的人,可能到毕业还没搞懂我们专业是干什么的。对于我学的专业,就如同大多数80后,都是误打误撞进的,直到我毕业后,我在一家外企做销售,期间接触到了不少windows下的VBA开发,渐渐发现编程对于我来说是多么的有乐趣,不久我便下定决心------自学游戏开发没什么理由,玩了8年的游戏,有太多自己的想法,最后发现,只能靠自己去实现。现在已经自学了快一年了,数不清的困难,难以想象,一个毕业时连计算机二级都没有过的我,现在要想要踏入游戏开发这个行业。但是我一直坚信 阅读全文
posted @ 2012-05-31 12:46 SawyerZhu 阅读(263) 评论(5) 推荐(0) 编辑