Fork me on GitHub

2012年4月5日

摘要: 原文地址:http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:index翻译:sile(泰然翻译组)sile:在子龙的鼓励下翻译了这个系列的文章,也算是为自己和初学者提供一个方便学习的机会,自己一直是搞acm的,第一次接触项目之类的文章,翻译不好的地方还希望大家指出,我好改正,谢谢大家了,因为没有网盘,所以就直接发布出来吧,明天应该可以更新一到两章。提示:传送门链接请购买本主题后再查看!!!!!一、指导前言:cocos2d编程入门指导提供富含深度的文档,专来为那些使用cocos2d开发应用的人提供参考,这里讨论的许多主题同时也参考coc 阅读全文
posted @ 2012-04-05 19:19 pengyingh 阅读(714) 评论(0) 推荐(0)
摘要: 原文地址:http://www.cocos2d-iphone.org/wi ... 3._menus_and_scenescocos2d programming guide系列由sile(泰然翻译组)翻译本系列其他文章传送门:http://ityran.com/thread-149-1-1.html在这节里,你将会学习到cocos2d是怎么帮助你理解场景的和怎么在场景与场景之间进行转换。转换场景是很简单的,我们只要覆盖CCMenu和相关的类就可以了,这个方法就跟创建菜单场景一样简单。场景cocos2d里的场景就一个可见的特殊结点扮演着其它父结点的角色。你可以用你喜欢的方式来使用它,典型的用法可 阅读全文
posted @ 2012-04-05 18:55 pengyingh 阅读(502) 评论(0) 推荐(0)
摘要: 高得分/社交网络按字母顺序整理的高得分/社交网络AGON Online整合到Cocos2d-iphone里iPhone欢迎进入这个向导,在这里我们将会创建一个简单的cocos2d iphone游戏用AGON Online来保存和显示得分。我假设你已经下载了cocos2d-iphone sdk并且已经把cocos2d的模板安装到了Xcode里开始设置:注册一个开发者AGON online账号:http://developer.agon-online.com/join接着在AGON服务器上安装一个游戏:http://developer.agon-online.com/wiki/doku.php?i 阅读全文
posted @ 2012-04-05 18:50 pengyingh 阅读(346) 评论(0) 推荐(0)
摘要: 效果是一些动作,通过修改方格属性来代替不透明、位置、旋转等动作对普通属性的修改。网格属性像矩阵,由一系列矩形组成的。这些特别的动作可以用任意的CCNode(CCLayer,CCScene,CCSprit等)来修改方格,你可以移动方格到至高点。有2种方格:平铺的方格和非平铺的方格。两者之间的区别是非平铺的方格顶点之间是相离的,而平铺的方格顶点之间复合在一起所有方格有2要素行和列,但是每一个方格则是x、y、z,所以你可以创建二维的和三维的方格。(16,12)大小的方格运行速度很快但是在设备上看起来不是很好。(32,24)大哥的方格看起来很好看,但是在第一代iphone上运行很慢。他们是怎么工作的每 阅读全文
posted @ 2012-04-05 18:46 pengyingh 阅读(364) 评论(0) 推荐(0)
摘要: @implementation ActionBezier- (void) callback{ NSLog(@"callback");}-(void) onEnter{ [super onEnter]; CGSize s = [[CCDirector sharedDirector] winSize]; // // startPosition can be any coordinate, but since the movement // is relative to the Bezier curve, make it (0,0) // ... 阅读全文
posted @ 2012-04-05 18:38 pengyingh 阅读(5068) 评论(0) 推荐(0)
摘要: 两个精灵调用同一个动作需要注意:-(void) onEnter{ [super onEnter]; [self centerSprites:3]; id actionTo = [CCRotateTo actionWithDuration: 2 angle:45]; id actionTo0 = [CCRotateTo actionWithDuration:2 angle:0]; [tamara runAction: [CCSequence actions:actionTo, actionTo0, nil]]; id actionBy... 阅读全文
posted @ 2012-04-05 17:42 pengyingh 阅读(143) 评论(0) 推荐(0)
摘要: 动作动作是由任意的CCNode对象给出的。动作经常来修改一些对象的属性比如位置,旋转,比例等等。如果这些属性是在一段时间内被修改,最好用CCIntervalAction动作或者CCInstantAction动作。举例来说,CCMoveBy动作在一段时间内修改位置属性。因此它是一个CCIntervalAction子类。// Move a sprite 50 pixels to the right, and 10 pixels to the topover 2 seconds.[sprite runAction: [CCMoveBy actionWithDuration:2 position:cc 阅读全文
posted @ 2012-04-05 17:26 pengyingh 阅读(140) 评论(0) 推荐(0)
摘要: 装好的cocos2d默认是iphone的开发,最新的cocos2d是支持ipad开发的,只需要进行一下设置,具体如下:首先是基于cocos2d模板创建cocos2d的项目,具体不解释。创建完项目后,点击Info,进去配置对话框。如下图:修改Base SDK,至少是iOS 3.2以上的,然后Search --Targeted Device Family键,修改为iPad。如图:然后将模拟器选择为iPad的,如果没什么意外的话,一般就ok了。下面展示两种截图,前者是iPhone App运行在iPad,有2X的,如果运行出现这种就说明配置不对;后者是配置正确,是iPad App,木有2X,。 阅读全文
posted @ 2012-04-05 16:50 pengyingh 阅读(544) 评论(0) 推荐(0)
摘要: 这一篇是讲一下如何在cocos2d中实现动画。实现动画的步骤:加载帧生成动画对象运行动画加载帧我用过两种方式:第一种是使用.plist文件,通过CCSpriteFrameCache读取动画帧,并加载到CCAnimation对象中,如下:[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"animate.plist"];NSMutableArray *walkAnimFrames = [NSMutableArray array];for(int i = 1; i <= 8; ++i 阅读全文
posted @ 2012-04-05 16:45 pengyingh 阅读(655) 评论(0) 推荐(0)
摘要: Ease actions 影响的是动作的时间线性。举个例子,比如你想让一个精灵的运动由快到慢的变化;又或者一开始慢然后开始变快接着再慢下来,想像一下钟摆的运动。用Ease actions就可以简单实现上面这种看似复杂的运动。Ease actions包含 CCEaseIn,CCEaseOut,CCEaseInOut三个类,示例:id action = [CCMoveTo actionWithDuration:2 position:ccp(100,100)];id ease = [CCEaseIn actionWithAction:action rate:2];[sprite runAction: 阅读全文
posted @ 2012-04-05 16:42 pengyingh 阅读(479) 评论(0) 推荐(0)
摘要: Special Actions 个人理解包含三部分,一个是函数,一个“镜头跟踪”,一个属性控制(这是俺个人的叫法)。我会根据个人使用的经验慢慢添加内容,没用过的就先不写了。函数部分:CCCallFuncCCCalFunc用来在CCSequence中调用方法。比如,你需要在一个精灵做了一些列动画后,调用一个方法实现某个逻辑计算,那么你就需要这个东东,下面是示例id actionTo = [CCMoveTo actionWithDuration: 2 position: ccp(160, 240)];id actionCallFunc = [CCCallFunc actionWithTarget: 阅读全文
posted @ 2012-04-05 16:42 pengyingh 阅读(352) 评论(0) 推荐(0)
摘要: 在官方网站上,对cocos2d所提供的动作(action)转化(Transformations)以及效果(effect)做了如下分类Basic actionsComposition actionsEase actionsEffect actionsSpecial actionsAnimation下面将对我使用过的类及方法做一个说明,随着本人实际使用的情况会不断补充内容。这一篇先介绍Basic Action,包含了基本的移动,旋转,淡入淡出等动作。CCMoveBy ,CCMoveTo用来移动精灵,使用方法如下(以CCMoveBy为例):CCSprite* sprite = [CCSprite s 阅读全文
posted @ 2012-04-05 16:41 pengyingh 阅读(4068) 评论(0) 推荐(0)
摘要: 上一篇整理了basice action 基本动作的部分,这一篇接着讲 composition actions -复合动作的部分。在实际编程中,这部分是跑不掉的,几乎每一个都是必用的。CCSequencesequence是用来按顺序执行一系列的动作,即动作按排列的顺序一个接一个的执行,示例如下:id action1 = [CCMoveTo actionWithDuration:2 position:ccp(100,100)];id action2 = [CCMoveBy actionWithDuration:2 position: ccp(80,80)];id action3 = [CCMov. 阅读全文
posted @ 2012-04-05 16:41 pengyingh 阅读(380) 评论(0) 推荐(0)
摘要: 在 cocos2d 中有三个类可以在层或精灵中添加文字:CCLabelTTFCCLabelBMFontCCLabelAtlasCCLabelTTF每次调用 setString (即改变文字)的时候,一个新的OPENGL 纹理将会被创建.。这意味着setString 和创建一个新的标签一样慢。所以,当你需要频繁的更新它们的时候,尽可能的不用去使用标签对象。而应该使用CCLabelAtlas或者是CCLabelBMFont。CCLableTTFCCLabelTTF *label = [CCLabelTTF labelWithString:@"the string" ... 阅读全文
posted @ 2012-04-05 16:37 pengyingh 阅读(1007) 评论(0) 推荐(0)
摘要: cocos2d实现粒子系统很简单,在我来看有两种方式,一种是使用代码设置参数;第二种是用导入属性列表文件的方式来配置所要添加的粒子系统。本文描述的是后者,原因是这种方式配置更简单,而且如果需要修改效果,不需要修改代码,只要修改配置文件就可以了。ParticleDesigner是一个制作粒子系统的工具,收费的,不过,并不是不付钱就用不了,只是,如果你想把它制作的粒子导出成 .plist 就需要付钱,但是,用还是能用的,下面就说说咋用。这个是软件的设置界面的截图:设置好以后可以在模拟器中查看效果,然后对应ParticleDesigner界面中的参数在xcode中设置 .plist中各个参数。如下: 阅读全文
posted @ 2012-04-05 16:35 pengyingh 阅读(3166) 评论(0) 推荐(0)
摘要: 其实加入音乐和音效的代码很简单,那么就先给出来:#import "SimpleAudioEngine.h"......[[SimpleAudioEngine sharedEngine] preloadBackgroundMusic:@"bg.caf"];[[SimpleAudioEngine sharedEngine] preloadEffect:@"click.caf"];[[SimpleAudioEngine sharedEngine] playBackgroundMusic:@"bg.caf" loop:YE 阅读全文
posted @ 2012-04-05 16:33 pengyingh 阅读(1164) 评论(0) 推荐(0)
摘要: 单触摸(Touch)事件:导入 CCTouchDispatcher.h#import "CCTouchDispatcher.h"官方文档说要导入,不过我没有导入这个头文件。找个地儿,把下面这段代码塞进去-(void) registerWithTouchDispatcher { [[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self priority:0 swallowsTouches:YES]; }在 init 方法中加入 self.isTouchEnabled = YES;触摸事件处理方法- (BOOL 阅读全文
posted @ 2012-04-05 16:33 pengyingh 阅读(1455) 评论(0) 推荐(0)
摘要: In an earlier postCGRect, CGSize and CGPoint FunctionsI demonstrated a number of geometry structures available for representing a point (CGPoint – x and y coordinates), size (CGSize – height and width) and rectangles (CGRect – combination of both).Unfortunately, you cannot directly store any of the 阅读全文
posted @ 2012-04-05 15:27 pengyingh 阅读(285) 评论(0) 推荐(0)
摘要: 由于Box2D是不直接与鼠标交互的,而是通过鼠标关节b2MouseJoint交互的。交互的过程由四个步骤完成:第一步:获取鼠标单击处的刚体。第二步:创建鼠标关节。第三步:控制鼠标关节。第四步:销毁鼠标关节。首先,获取刚体。public function GetBodyAtMouse(includeStatic:Boolean=false):b2Body{// 在鼠标点击处创建一个极小区域,大小为0.002m*0.002mvar mousePVec:b2Vec2 = new b2Vec2(stage.mouseX/RATIO, stage.mouseY/RATIO);var aabb:b2AAB 阅读全文
posted @ 2012-04-05 15:24 pengyingh 阅读(1204) 评论(0) 推荐(0)
摘要: CCScene 对于使用cocos2d的童鞋肯定很熟悉,那么在使用CCScene *s = [CCScenenode];[s addChild: [restartAction() node]];[[CCDirectorsharedDirector]replaceScene:s]; 对scene进行场景(CCLayout)进行切换时,cocos2d提供了一些特效进行过渡,那么今天仔细翻开cocos2d源码,将所有的动画效果都测试了一遍,大概整理如下,提供大家查阅和使用吧; 因为我使用的是最新的cocos2d的1.0版本,所以一些函数方法跟之前不一样了,所以不要感到奇怪; 由于代码都有备注,所以就 阅读全文
posted @ 2012-04-05 15:21 pengyingh 阅读(602) 评论(0) 推荐(0)

导航