SpriteBuilder中CCMotionStreak提示图片文件找不到

今天写代码时遇到上述问题,代码如下:

player.streak = [CCMotionStreak streakWithFade:3.f minSeg:1 width:30 color:[CCColor whiteColor] textureFilename:@"ccbResources/ccbParticleSnow.png"];

运行出错,console中显示png路径不存在.

路径肯定是正确的.而且其他使用该图片的方法工作正常.
于是找到该方法:

CCSpriteFrame *frame = [CCSpriteFrame frameWithImageNamed:@"ccbResources/ccbParticleSnow.png"];

做断点,运行后进入该方法:

+(instancetype) frameWithImageNamed:(NSString*)imageName
{
    CCSpriteFrame* frame = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:imageName];
    if (!frame)
    {
        CCTexture* texture = [[CCTextureCache sharedTextureCache] addImage:imageName];
        frame = [texture createSpriteFrame];
    }

    return frame;
}

发现并没有实际搜索磁盘上的文件,而是使用精灵帧缓存中的图片.所以有了下面变通的写法:

CCSpriteFrame *frame = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:@"ccbResources/ccbParticleSnow.png"];
        player.streak = [CCMotionStreak streakWithFade:3.f minSeg:1 width:30 color:[CCColor whiteColor] texture:frame.texture];

这样就可以了.

时间: 2024-10-03 16:55:30

SpriteBuilder中CCMotionStreak提示图片文件找不到的相关文章

如何将winXP电脑中的BMP图片文件修改为jpg格式?

  我们知道,Windows系统中所包含的文件格式是很多样的,就拿咱们比较熟悉的一些文件格式来举例吧!文本文件,咱们就有word还有txt,图片文件就有bmp.jpg,当然,咱们这里无法完全的介绍出来,但是另一方面,虽然每种文件的格式比较多,但是在一定的条件,却可能只有一种格式是标准的,可以使用的,那么这个时候,咱们就需要对文件的格式进行转换了.例如今天这位使用winXP电脑的用户咨询说,要如何才能将自己XP电脑中个BMP图片文件修改为jpg格式,下面,小编就来介绍一个比较快捷的方法吧! 1.首

win7电脑word文件中如何让图片文件编辑起来更美观?

  Word是比较正规化的编辑工具,现在咱们很多工作涉及到的文案.报告等都需要使用word来进行编辑,当然,大部分以文字为主,但是图片也是非常常见的,毕竟图文形式下展现出来的东西才是最为直观有说服力的.但是,在win7纯净版中,咱们也发现了一个问题,那便是图片插入word编辑器后会容易出现错位.难看的情况,这种情况是否有方法可以解决呢?下面咱们就一起来看看吧! 1.首先,咱们在桌面位置新建一个word文件,直接在空白处点击右键,然后选择新建-word文件即可,之后,咱们双击打开该文件. 2.在w

SpriteBuilder中CCMotionStreak坐标类型不匹配

在SpriteBuilder需要被跟随的(或是说被拖尾的)节点坐标类型是父百分比,先是将CCMotionStreak本身位置设置为百分比类型,但是无效. 将节点坐标改为正常点类型后,MotionStreak可以正常显示. 于是要做一个百分比坐标到点坐标的类型转换: _viewSize = [CCDirector sharedDirector].viewSize; 注意这里必须是屏幕点的大小,而不是像素的大小. 然后在更新MotionStreak时: CGPoint pos = ccp(playe

怎么将存入SQL中的二进制图片文件显示在datagridview的某一列中?急!!

问题描述 sqlStr="selectID,Text,Good,LoadingfromBLJ_Computer";}ds=DBManager.GetDataFormDB(sqlStr);if(ds!=null){dataGridView1.DataSource=ds.Tables[0];dataGridView1.Columns.Clear();//一定要先绑定数据后再清除列System.Windows.Forms.DataGridViewImageColumnText=newData

SpriteBuilder中关于大量CCB文件的数字命名建议

开发者总是频繁的填充文件名字使用额外的0,以此来对抗长久以来的长痘:数字排序.如果你觉得在数字名字前添加额外的0是一个好主意,比如说Level0001,因为可能你会创建数以千记的关卡--请不要这样做! 现代操作系统对于数字排序问题有一个很好的处理. 你将不再会看到数字文件排序以下面这种(不爽)的顺序: Level1 , Level10 , Level2 - 这时,字符串匹配代码Level%i将适配所有的数字从0到无穷. 请不要再考虑在数字字符串名字前填充0--–这只会将简单问题搞得复杂哦.

SpriteBuilder中返回的对象类型不正确的原因

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 最近在码代码的时候,发现一个问题,特此写出来和大家分享,希望遇到类似问题的童鞋不再走弯路. 在SpriteBuilder中新建的CCB文件类型为CCNode,但是想让其对应一个自定义类.在代码中使用: MyClass *obj = [CCBReader load:@"Layers/MyCCBFile"]; [obj myMethod]; 代码,运行后发

CSS网页设计中使用背景图片须注意路径问题

css|背景图片|设计|网页|网页设计|问题 网页设计技巧文章,CSS网页设计中使用背景图片须注意路径问题. 在传统的表格布局中,背景图片是直接应用于表格的,一般情况下CSS的background-image属性使用非常少,或者说根本就不使用.应用CSS网页布局,实现内容与表现.行为相分离,作为页面框架.装饰等图片我们就直接剥离到CSS文件中,通过CSS进行定义. 我们通常用link的方法直接引用一个CSS文件到HTML(或其它活动文档)文件中.我们会发现有时候我们的图片无法显示了.此时,请查看

Win 7多媒体中心轻松添加图片文件

  多媒体娱乐中心Windows Media Center(简称WMC)是一种多媒体应用程序,能够提供Windows Media Player的全部功能之外,还通过一系列全新娱乐软件.硬件,为用户提供了从视频.音频.图片欣赏到通信交流等全方位的应用. 在Windows7中,WMC有了更进一步改进,功能更加人性化,用途广泛化,界面更加专业化.今天,我们主要介绍一下WindowsMedia Center添加图片文件技巧. 首先,在开始菜单"所有程序"中运行"Windows Med

【C/S通信交互之HTTP篇】COCOS2DX(CLIENT)使用CURL与JETTY(SERVER)实现手机网游HTTP通信框架(内含解决CURL.H头文件找不到问题)

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-cocos2dx/870.html 之前已经分享过一篇基于Cocos2dx与服务器使用Socket进行通信的框架,还不太熟悉的请移步到如下博文中: [C/S通信交互之Socket篇]Cocos2dx(Client)使用BSD Socket与Mina(Server)手机网游通信框架! 那么今天Himi来分享如何在cocos2dx中