CCAnimate 能够理解为一个动画播放器,  CCAnimation 能够理解为一个动画内容.它须要播放器才干播放动画. 与它们相关的一些类例如以下 SpriteFrameCache  精灵帧缓存,单例 功能: 能够从plist文件载入一批图片,取的时候通过plist文件中的图片名字取出. 也能够载入一个一个精灵帧并为其手动命名. SpriteFrame  精灵帧 功能:  载入一张图片.能够单独取图片上的某部分作为纹理使用. 特点: 将全部图片拼凑为一张大图一次性载入,取图上每一块区域图,…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 掩饰一个精灵:实现代码 打开HelloWorldLayer.m并且在init方法上方添加如下方法: - (CCSprite *)maskedSpriteWithSprite:(CCSprite *)textureSprite maskSprite:(CCSprite *)maskSprite { // 1 CCRenderTexture * rt = [CCRe…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 原帖来自Ray Wunderlich写的精彩的文章 How To Mask a Sprite with Cocos2D 1.0,地址在: http://www.raywenderlich.com/4421/how-to-mask-a-sprite-with-cocos2d-1-0 有时在你的游戏中,你可能需要找到便利的方法去显示精灵的一部分. 一种办法是使用第二…
Cocos2D 3.3中的注意事项 如果你在使用Cocos2D 3.3+(是SpriteBuilder 1.3+的一部分)你将不得不替分别的换所有存在的UITouch和UITouchEvent为CCTouch和CCTouchEvent. 你可以在SpriteBuilder的升级手册中找到更多信息. 再见 CCMenu!Hello CCLayout! 在过去CCMenu是创建菜单最简单的方法.因为CCMenu是提供布局处理方法的仅有的类(alignItemsVertically,等等).该类过去被…
触摸处理 我们在稍后将完成Cocos2d 3.0中触摸处理的完整教程.而现在最重要的是知道如何去启用触摸处理在你的CCNode中: self.userInteractionEnabled = TRUE; 去捕捉一个触摸以及触摸的位置: - (void)touchBegan:(UITouch *)touch withEvent:(UIEvent *)event { CGPoint touchLocation = [touch locationInNode:self]; // put your to…
最近在做discuz改版的项目,遇到了很多问题,相信很多拥有discuz论坛的版主,站长和程序猿在升级或改版discuz的过程中遇到过和我一样的问题,所以我开了一个discuz专栏,为大家讲解一下discuz的一些知识,希望对大家有用! 本文先从discuz的升级开始说起: 现在站长使用的大部分discuz论坛都是discuz x3.0一下的版本,有x3.0beta,x2.5,x2.5RC,x2.0等等甚至更低版本的,但是版本升级的方式都是差不多的,现在就以discuz x2.5版的为例,为大家…
症状 使用cocos2d 2.0和UIKit混合编程, 有一块用cocos2d编写的小程序, 将CCDirector push到一个UINavigationController里面. 虽然事先在后台初始化了cocos2d, 但在push的时候, CCDirector还是会显示为黑屏, 并且从右到左运动大概10%的距离后会卡一下, 然后push完成, 再过0.1s左右才会显示出来cocos2d的画面. 如下视频所示. 解决方案 网上对这个问题的讨论很少, 原因不是很清楚, 估计是因为cocos2d…
第一步: 最新的cocos2d-x.下载地址https://github.com/cocos2d/cocos2d-x github上最新的引擎,值得注意的是官网上发布的引擎是稳定版.选择哪种就看个人喜好了.但是最新功能你都体验不到.建议下载git工具然后clone到本地来更新 第二步: 下载后 用cmd终端里面进入cocos2d-x\tools\project-creator目录下 用python运行 create_project.py脚本 (没有搭建python环境的请参照win7下pytho…
1.创建项目后环境配置: 附加文件夹:加入 $(EngineRoot) $(EngineRoot)cocos $(EngineRoot)cocos\editor-support $(EngineRoot)build\Debug.win32 ..\proj.win32 通用属性加入 (先从 cocos2d-x-3.0rc0 中 extensions   cocos\editor-support   cocos\ui 加入进去) libcocosstudio libExtensions libGUI…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 掩饰和CCRenderTexture CCRenderTexture是一个让你在屏幕以外缓存中绘制的类. 它的便捷有很多理由 - 你可以使用它去在你的游戏中截屏,用户绘制更为高效的缓存,在运行时动态创建精灵表集(sheets),或者我们将用来这个目的 - 帮助我们掩饰一个精灵. 为了使用CCRenderTexture,你要执行以下步骤: 创建CCRenderTe…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 让我们开始吧 打开Xcode,从New Project中选择cocos2d模板,点击下一步.命名新项目为MaskedCal,点击下一步,选择目标文件夹,然后点击Create. 接下来下载该项目的资源文件: http://haosou.xqiju.com/browse.php?u=sDrnThWlVVAzW8rIeQpXWRtJQhNB2ji0W8bJoRwh3e…
工业X.0:实现工业领域数字价值 看完比较失望,没有看到新的观点想法.基本算是物联网的资料汇编.总体评价2星. 以下是书中一些内容的摘抄: 1:例如,埃森哲为其员工开发了一个用例,用增强现实技术解决实际问题.不同地点的产品工程师可以借助穿戴式设备看到虚拟产品,如此一来就可以同时工作.每位工程师都能看到其他人在产品的3D数字模型上进行了哪些活动,并予以响应或配合.#547 2:在越来越多的技术支持下,这种智能产品或平台型产品终将演化成“活产品”,其智能程度之高.洞察力之敏锐,在用户看来宛若能进行智…
疑惑一:在事件分发中修改订阅者 ,对于这个的理解. 事件的分发是可以嵌套的,cocos2dx使用_inDispatch来保存当前嵌套的深度,当调用第一个dispatchEvent的时候,_inDispatch=0,表示之前没有事件在分发,这是第一次 进行事件的分发.先看一下 dispatchEvent(Event* event)的源码,这个方法就是开始分发事件的时候的方法 代码的大体步骤就是 1 updateDirtyFlagForSceneGraph();,这个我也没研究,暂时不用管它,不影响…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 为了完成需要的效果,我们将使用如下策略: 我们将首先绘制掩饰精灵,源的颜色(mask)设置为GL_ONE,目的颜色(一个空的缓存)设置为GL_ZERO.所以我们基本上原样显示掩饰图片. 我么将绘制日历精灵,源颜色(日历精灵)为GL_DST_ALPHA.你可以把它想象为好比是"根据当前缓存中alpha的值(the mask).当它为不透明时,让日历显示出来,如果是…
实现通用的update方法 在Cocos2d 2.x你需要2个步骤去实现在每帧调用update方法: // 1) schedule update [self scheduleUpdate]; ... // 2) override update method - (void) update:(ccTime)delta { ... } 在Cocos2d 3.x 你再也不需要调用scheduleUpdate了,你只需要在CCNode子类中重载以下方法: - (void)update:(CCTime)d…
在该指南开头,我们假设你应经很熟悉Cocos2d 2.x版本. 我们将指出新版本重要的改变,并且给出一些你已经从Cocos2d 2.x版本中熟知的实现. CCNodes,CCScenes和CCLayers CCLayer已经不再存在.CCLayer在场景中作为一个可以响应用户交互的类.在Coco2d 3.x中任何CCNode可以处理触摸输入.CCNode就是新的CCLayer.对于所有场景你应该使用CCNode.…
/template/default/common  公共模板目录全局加载 block_forumtree.htm  DIY论坛树形列表模块 block_thread.htm  DIY帖子模块调用文件 block_userinfo.htm  未找到相应的程序调用 buyinvitecode.htm  购买邀请码 common.css  全局css样式表 css_diy.css  全局DIY模式加载样式表 css_sample.htm  垃圾文件? css_space.css  个人空间样式表 ed…
当继承自Sprite的类被addChild到其它的Node里后出现例如以下图问题,说明没有调用父类Sprite::init()的方法.由于父类Sprite里的_textureAtlas须要初始化为null,在继承自Sprite的子类里的构造函数或init方法里加入Sprite::init()就能够了. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcGFteHk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 尝试编译运行,在你每一次点击屏幕的时候,你将看到我可爱的妻子制作的随机日历图片: 现在我们的app里已经有了像样的框架了,让我们开始实现掩饰效果吧! 掩饰和OpenGL混合模式 如果你在图片编辑器中观察 Art\CalendarMask.png文件,你将看到如下图所示的图片: 我们将使用该图片去掩饰我们的日历图片,让它看起来像是漂浮在水面上的纸张一样 - 这总比…
资源管理 如果你没有计划用SpriteBuilder,你可以继续使用后缀去管理各种不同解决方案中的图像. 首先,你需要在AppDelegate.m中将[CCBReader configrueCCFileUtils]一行注释掉. 然后,下面的后缀将会起作用: no suffix, 非 retina iPhone "-hd", retina iPhone "-iphone5hd", iPhone 5+ "-ipad", 非 retina iPad &…
总算找到了一本介绍cocos2d的好书,注意,不是cocos2d-x!这本书叫 <cocos2d 权威指南> 定价99元,淘宝60多元,详细介绍了cocos2d的各个方面!不过你需要有oc的基础才行!另外这本书是针对cocos2d 2.0 的,不是3.0,有的内容不是最新的,但无伤大雅!这本书比那本外国人出的 cocos2d 游戏开发 什么的书好太多了,推荐大家读一读,早日写出自己的游戏大作!…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 首先说一下为什么要转换,这是为了后面的A*寻路算法做准备.由于在v1.0中,可能是Cocos2D本身有问题,以下 touchLocation = [_tileMap convertTouchToNodeSpace:touch]; 方法在执行到地图左边缘附近时,返回的CGPoint的x轴值不会再减小了.导致游戏主角不能再往地图左边靠近了.示意图如下(注意日志里输出…
 前段时间cocos2dx更新了最新版本号cocos2d­2.0­x­2.0.2.也从这个版本号開始对于资源载入与管理都改变了策略. 在之前的载入方式都是通过沿用与cocos2d-iphone一样的载入资源方式,对于图片名后加入-hd,-ipad,-ipadhd方式,当用户开启项目的高清视网膜后就能够默认寻找相应的资源.可是从cocos2d­2.0­x­2.0.2版本号開始,资源载入策略不在如此了.对跨平台整合不清楚的请看cocos2dx最新2.x版本号跨平台整合NDK+Xcode 最新资源…
cocos2d中要实现一个动画,一般采用纹理图集的方式,也就是说把几个连续动作的图片挨个显示切换这样就是动画 一: 首先先看下今天要实现的具体的目的,打飞机的时间屏幕上会有一个喷火的小飞机,飞机的尾部会有喷火  熄灭 在开始喷火的动画 今天就实现这个场景动画,首先看下素材 我们的目的就是把它实现成一个三个图片连续切换动画 类似这种样式 二: 首先,我们需要创建一个精灵批处理集合对象 flightSheet = [CCSpriteBatchNodebatchNodeWithFile:@"fligh…
获取个人资料 http://wiki.teamfortress.com/wiki/WebAPI/GetPlayerSummaries 获取个人库存 http://wiki.teamfortress.com/wiki/WebAPI/GetPlayerItems 获取库存对应 http://wiki.teamfortress.com/wiki/WebAPI/GetSchema (个人库存和库存对应内容较多,改日再战) 个人资料 个人资料获取方式: http://api.steampowered.co…
在我完成第一个游戏项目的时候,我深切地意识到"使用cocos2d来制作游戏的开发者们,他们大多会被cocos2d的内存问题所困扰".而我刚开始接触cocos2d的时候,社区里面的人们讨论了一个非常有意义的话题:"请简单地讲述你认为新手cocos2d程序员在他开始编码之前,最应该先知道,或者应该关注和注意的事项."这个问题的答案很多,有人讲是"如何加载和保存游戏数据",有人讲的是"如何实现有限状态机"等等.而最吸引我的则是,有一…
注:本文只针对Google原生Android系统有效, 小米魅族等手机有自己的权限机制, 可能不适用 一.运行时权限的变化及特点 新的权限机制更好的保护了用户的隐私,Google将权限分为两类,一类是Normal Permissions,这类权限一般不涉及用户隐私,是不需要用户进行授权的,比如手机震动.访问网络等:另一类是Dangerous Permission,一般是涉及到用户隐私的,需要用户进行授权,比如读取sdcard.访问通讯录等. 运行时权限的特点是,实时性,用户可以随时取消授权,所以…
译者: 在我完成第一个游戏项目的时候,我深切地意识到“使用cocos2d来制作游戏的开发者们,他们大多会被cocos2d的内存问题所困扰”.而我刚开始接触cocos2d的时候,社区里面的人们讨论了一个非常有意义的话题:“请简单地讲述你认为新手cocos2d程序员在他开始编码之前,最应该先知道,或者应该关注和注意的事项.”这个问题的答案很多,有人讲是“如何加载和保存游戏数据”,有人讲的是“如何实现有限状态机”等等.而最吸引我的则是,有一个人讲到,新手cocos2d程序员或者新手cocoa程序,他们…
很早之前就听说TypeScript了(以下简称TS),但总是用难以抽出时间给自己找到这个冠冕堂皇的理由.最近又心血来潮,打算写TS的博客了,毕竟TS核心开发者也是C#之父,像我这么热爱C#的人,怎么可能不喜欢C#之父开发的TS呢,有点爱屋及乌了.这里附一张C#之父Anders Hejlsberg的图片. 这篇博客不讲技术细节,只讲TS利好的一些信息以及它的一些优点,还有以后所有的TS资料的目录都放在这篇博客了.这些博客有些是翻译的,当然这里的翻译是基于本人的思考而不是纯粹地机器翻译,还有去除了一…
瞬时动作:瞬时动作的基类是InstantAction 1.放置位置   CGPoint p = ccp(width,height); [sprite runAction:[CCPlace actionWithPosition:p]]; 2.隐藏   [sprite runAction:[CCHide action]]; 3.显示   [sprite runAction:[CCShow action]]; (效果类似亍 [node  setVisible:YES]. 之所以作为一个劢作来实现是为了…