社区首页 >问答首页 >CCParticleSystem和iPhone是"bug“还是限制?

CCParticleSystem和iPhone是"bug“还是限制?
EN

Stack Overflow用户
提问于 2012-03-25 08:47:59
回答 1查看 832关注 0票数 0

我似乎在CCParticleSystem和iPhone上遇到了一个奇怪的问题。

我有一个从左到右穿过屏幕的激光。我添加了一个粒子效果,使激光看起来更像轨道炮。我使用了粒子设计器中的"emmas分享“粒子效果。

下面是通过屏幕发送激光的代码:

代码语言:javascript
代码运行次数:0
复制
-(void)fireLaserCannonAddon
{
    if( _ship == nil || _ship.dead ) return;
    CGSize winSize = [CCDirector sharedDirector].winSize;
    shipLaserCannon = [_laserCannonArray nextSprite];
    [shipLaserCannon stopAllActions];
    shipLaserCannon.position = ccpAdd(_ship.position, ccp(shipLaserCannon.contentSize.width / 2, -shipLaserCannon.contentSize.height));

    [shipLaserCannon revive];

    CCParticleSystemQuad *laserEffect = [_laserEffect nextParticleSystem];
    [laserEffect resetSystem];

    [shipLaserCannon runAction:[CCSequence actions:
                                [CCMoveBy actionWithDuration:0.5 position:ccp(winSize.width, 0)],
                                [CCCallFuncN actionWithTarget:self selector:@selector(invisNode:)],
                                [CCCallFunc actionWithTarget:self selector:@selector(endLaserEffects)], nil]];
}

以及将粒子系统效果设置为激光位置的代码:

代码语言:javascript
代码运行次数:0
复制
-(void)updateLaserEffects:(ccTime)dt
{
    for( CCParticleSystemQuad *laserEffect in _laserEffect.array )
    {
        laserEffect.position = shipLaserCannon.position;
    }
}

-(void)endLaserEffects
{
    for( CCParticleSystemQuad *laserEffect in _laserEffect.array )
    {
        [laserEffect stopSystem];
    }
}

如果在粒子设计器中打开"emmas共享“效果,则效果与在屏幕上单击并拖动时的效果相同。这在iPad和iPad模拟器上工作得很好,但是在我的iPhone 3GS / iPhone (SD和视网膜)模拟器上,发射的粒子似乎是被激光“携带”的。这并不等同于将PositionType设置为kCCPositionTypeGrouped (发射的粒子保持该圆形),而是介于kCCPositionTypeGrouped和kCCPositionTypeFree之间。粒子从激光发射,但也被拖到激光后面一点,而不是像粒子设计器模拟器和常规iPad上那样停留在发射的位置。看起来就像激光正在创建自己的层,在它上面有粒子效果,而“层”在它后面。

我想可能是激光移动得太快了,但即使放慢了速度,它也有同样的效果。

这个"bug“还产生了另一个小问题,因为它是与激光一起”携带“的,当激光离开屏幕然后取出时,最后发射的粒子的残留物在屏幕的左下角可见,因为我确定这是因为发射的粒子仍然遵循激光的位置.x(它不应该这样做,只有它的底部应该这样做),并且由于激光消失了,它默认使用默认的设置位置。但是,我在iPad / iPad模拟器上没有这个问题。

顺便说一句,这不仅仅限于"emma共享“粒子效果,它似乎对所有其他效果都是一样的。

还有没有人在iPhone的移动对象上使用CCParticleSystems时遇到过类似的问题?

任何有用的意见我们都非常感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-26 08:36:51

好的,经过一番纠缠之后,我发现了是什么导致了这一切。

我最初将iPad的CCParticleSystem设置为1.0 (原始比例),iphone设置为0.5。我将iPhone的比例更改为1.0,所有的东西都像should..just一样工作得更大了,但它确实起作用了。我真的不想仅仅因为屏幕大小就有两种不同的粒子效果来达到相同的效果,所以我想我应该在iPhone上保留1.0的同时,在iPad上放大到2.0。低看,现在iPad遭受了和我在iPhone上一样奇怪的外观效果,但要极端得多。

看起来我现在没有太多的选择,只能有两个不同的文件来实现相同的效果,但我松了一口气,我找到了导致这种情况的原因,可以避免过早离开。

我认为缩放效果是很好的,只要它不是动态跟随对象,就像我的例子一样。

我不知道这是否会被认为是一个错误,因为我确信这是cocos2d正在使用的一个数学问题,扩展它会影响它。

TLDR::放大/缩小粒子效果时,当它跟随对象的位置时会产生这种奇怪的效果。不要重新缩放动态跟随对象位置的粒子效果。如果它只在一个地方,那就没问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9858905

复制
相关文章
LeetCode 第一页题目
最近用一些碎片时间刷了LeetCode第一页的题目(https://leetcode.com),除了一些面试中曝光率较高的题目外,有几个题目挺有意思的,恰逢考试季挑出来给大家思考一下。
曲奇泡芙
2019/08/16
5450
LeetCode 第一页题目
PS绘制水晶球
前言:学生们在学习ps软件的过程中非常的认真与努力,所以对于软件的使用可以说已经很熟练了,可是为什么当我们给学生安排一些原创设计需求的时候,学生却有种无从下手的感觉呢,究其原因就是学生在创新制作这方面
用户1730674
2018/05/02
9570
PS绘制水晶球
学会自己制作网线水晶头,水晶头(RJ45)接法
现在是一个电脑普及的时代,但是当自己电脑的网线坏掉的时候,你是不是也想自己学如何制作网线水晶头呢?
zeruns
2020/04/15
6.5K0
学会自己制作网线水晶头,水晶头(RJ45)接法
水晶报表常用公式
A.计量单位转换 这是一个非常简单的例子,主要是为了演示在公式中进行不同变量类型的转换和计算。 有时数据库字段的单位和报表中显示的单位不同,我们需要进行计量单位之间的转换,这时就离不开公式的使用。比如,我们的数据库中有一个Length字段,它记录以米为单位的长度,而在打印时需要以厘米为单位,我们就可以使用下面的函数。 ToText({Order Details.Length} *100) + "厘米" 这里的ToText函数就是转换数字型为字符型。常用的转换函数还有ToNumber等。
斯文的程序
2019/11/07
3.1K0
给网线接水晶头
首先,我们要准备好工具和材料,测线器、网线钳,网线、水晶头、剥线器。如果找不到或者没有剥线器,可以选择用网线钳代替剥线器。
伪君子
2018/09/14
1.2K0
给网线接水晶头
水晶报表的推模式
在一个多层结构中,水晶报表的使用往往比较繁琐:     1、在项目中添加数据集,形成xsd文件     2、利用xsd文件,在水晶报表环境中生成报表     3、回到.net,添加rpt文件 这样做的坏处除了繁琐,就是在UI层直接要访问数据库,将使得层次结构晚节难保。其实利用水晶报表的推模式,将很灵活的实现报表。思路是:事先建立报表的架子,运行时为报表指定数据。具体实现:     1、在水晶报表环境中,建立新数据连结,怎么方便怎么来,建议用oledb,快。     2、然后创建报表     3、回到.net
用户1075292
2018/01/23
9900
只显示指定网卡IP地址命令
export eth=1&&netstat -ie|awk -F'[: ]' 'begin{found=0;} { if (match($0,"eth'"$eth"'")) found=1; else if ((1==found) && match($0,"eth")) found=0; if ((1==found) && match($0,"inet addr:") && match($0,"Bcast:")) print $13; }'
一见
2018/08/07
2.9K0
迅雷红水晶自动收宝箱工具
迅雷于2014年4月启动了“闲置带宽可以赚钱”这一概念,允许用户利用闲置的上传带宽换取收益。该项目经过多次内测调整,与2015年1月4日由原来的蓝水晶更名为红水晶。虽然上传流量换收益的运营模式并未改变,但规则发生了巨大的变化。
reizhi
2022/09/26
3550
迅雷红水晶自动收宝箱工具
让typecho的首页只显示摘要
修改typecho首页显示文章的数量 到后台外观,打开function.php,在末尾添加: / 定义首页文章分布数量 /
李维亮
2021/07/09
5770
Xcelsius(水晶易表)系列——入门篇!
今天是新专题的第一篇——Xcelsius(水晶易表)入门篇! 今天跟大家简单介绍下Xcelsius(水晶易表)这款动态交互式可视化产品。 它是SAP公司首屈一指的可视化利器,拥有豪华的风格与外观,充满
数据小磨坊
2018/04/11
3.9K1
Xcelsius(水晶易表)系列——入门篇!
关于水晶易表的简介及其安装初识
水晶易表是全球领先的商务智能软件商SAP Business Objects的最新产品,通常我们只需要简单的进行点击和拖拽操作,Crystal Xcelsius就可以令您静态的Excel电子表格充满生动的数据展示、动态表格、图像和可交互的可视化分析。
Python进阶者
2018/12/17
8280
关于水晶易表的简介及其安装初识
CESIUM 点只显示一半
使用disableDepthTestDistance: Number.POSITIVE_INFINITY, 圆点完全都在地上了
吟风者
2021/11/24
1.2K0
CESIUM 点只显示一半
Xcelsius(水晶易表)系列2——单值部件
今天专门跟大家分享水晶易表中的一大类部件——单值部件。 单值部件使用频率很高,从它的名称就能猜个大概,它是用来表达单个指标的图表部件。 水晶易表中的单值部件大体上分为两类:输入型单值部件和输出型单值部件。 输入型的单值部件主要包含:滑块、进度条、刻度盘等,而输出型单值部件最典型的就是量表。 输入型的单值部件可以引用并识别excel中带公式的单元格,这样鼠标点击既可以实现动态控制。 量表的最大特色就是呈现简单易懂的指标数据效果,并且添加预警功能(警报)。 首先来看我们今天使用到的数据文件,是一家银行业的收
数据小磨坊
2018/04/11
1.5K0
Xcelsius(水晶易表)系列2——单值部件
解决Echarts的toolbox只显示英文的问题
我们为toolbox中每一个配置项都添加title属性,title属性的值就是你想显示的值,随便写。toolbox的配置代码如下:
别团等shy哥发育
2023/02/25
1K0
解决Echarts的toolbox只显示英文的问题
<input type=”file” />浏览时只显示指定文件类型
1.accept=”application/msexcel” 2.accept=”application/msword” 3.accept=”application/pdf” 4.accept=”application/poscript” 5.accept=”application/rtf” 6.accept=”application/x-zip-compressed” 7.accept=”audio/basic” 8.accept=”audio/x-aiff” 9.accept=”audio/x-mpeg” 10.accept=”audio/x-pn/realaudio” 11.accept=”audio/x-waw” 12.accept=”image/gif” 13.accept=”image/jpeg” 14.accept=”image/tiff” 15.accept=”image/x-ms-bmp” 16.accept=”image/x-photo-cd” 17.accept=”image/x-png” 18.accept=”image/x-portablebitmap” 19.accept=”image/x-portable-greymap” 20.accept=”image/x-portable-pixmap” 21.accept=”image/x-rgb” 22.accept=”text/html” 23.accept=”text/plain” 24.accept=”video/quicktime” 25.accept=”video/x-mpeg2″ 26.accept=”video/x-msvideo”
全栈程序员站长
2022/09/13
6930
<input type=”file” />浏览时只显示指定文件类型
Python提取PDF第一页为封面图片【批量提取】
近期要处理一批PDF文件,大约在20G,具体数量不详,需求是把每个文件的页数和第一页转换成图片,在网上查阅各种类库,最终选择的是PyMuPDF模块。最后核心代码量较少,功能实现效果也比较好。
申霖
2020/02/17
3.3K0
echarts3 地图只显示南沙群岛
产生上述现象后,刷新一下页面看看地图是否显示正常,如果正常请参考我的另一篇文章:http://blog.csdn.net/john1337/article/details/54947787
johnhuster的分享
2022/03/28
8090
FZU 2092 收集水晶(记忆化搜索)
Problem 2092 收集水晶 Accept: 101 Submit: 439 Time Limit: 5000 mSec Memory Limit : 32768 KB Problem Description shadow来到一片神奇的土地,这片土地上不时会出现一些有价值的水晶,shadow想要收集一些水晶带回去,但是这项任务太繁杂了,于是shadow让自己的影子脱离自己并成为一个助手来帮助自己收集这些水晶。 shadow把这片土地划分成n*m个小方格,某些格子会存在一些shado
ShenduCC
2018/04/26
5180
水印只显示一半?帮你还原直播水印
大家在刷抖音或者B站视频时,视频都带有抖音和B站的标示。在腾讯视频、芒果TV等视频网站里观看视频时同样可以找到他们独特的标示。最近有客户在做直播之前,自定义了水印模版,也想将具有代表性的图示展现在视频的右上角。结果直播过程中发现水印被截断只显示了一半。客户坚持模版设置没有问题,是水印自己飘移了,还是视频飘移了?
clairehou
2020/11/16
2.9K0
水印只显示一半?帮你还原直播水印
IOS – OpenGL ES 图像水晶球效果 GPUImageGlassSphereFilter
GPUImageGlassSphereFilter 属于 GPUImage 图像视觉效果相关,用来处理图像水晶球效果。shader 源码如下:
猿说编程[Python和C]
2023/04/01
4320

相似问题

水晶报告xi只显示组标题。

15

水晶报告只显示本地条形码。

14

水晶报告只显示最后一列。

16

水晶报告只显示最后一列

14

如何只打印水晶报告的第一页?

24
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文