Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash 闪存AS3-分数计数器_Flash_Actionscript 3_Frame_Counter - Fatal编程技术网

Flash 闪存AS3-分数计数器

Flash 闪存AS3-分数计数器,flash,actionscript-3,frame,counter,Flash,Actionscript 3,Frame,Counter,显然有很多关于分数计数器的帖子,我有一个计数器,它可以更新每一帧(Enter_frame函数),效果很好。score变量每帧增加一次,因此文本字段将更改以显示分数 我的问题是,在iOS上,它会使应用程序出现一些严重的帧速率问题,我说的是,当记分器启用时,速度会下降5-10 fps,非常不稳定等等。我只是想知道是否有办法解决这个问题,我想这是因为它必须在每一帧更新和重新绘制文本字段,但我看不到解决方法 欢迎提出任何建议 谢谢 你应该将分数重新定义为时间的函数 score = t / 100; //

显然有很多关于分数计数器的帖子,我有一个计数器,它可以更新每一帧(Enter_frame函数),效果很好。score变量每帧增加一次,因此文本字段将更改以显示分数

我的问题是,在iOS上,它会使应用程序出现一些严重的帧速率问题,我说的是,当记分器启用时,速度会下降5-10 fps,非常不稳定等等。我只是想知道是否有办法解决这个问题,我想这是因为它必须在每一帧更新和重新绘制文本字段,但我看不到解决方法

欢迎提出任何建议


谢谢

你应该将分数重新定义为时间的函数

score = t / 100; //where t is in milliseconds
在游戏开始时,初始化计时器变量

var start:Number = getTimer();
然后在您的
输入\u FRAME
侦听器中,根据实际时间而不是帧数计算分数:

score = (getTimer() - s) / 100;

这是一种与性能无关的方法,用于根据时间计算分数。

使用不透明背景的文本字段,或更改为位图字体,可能有助于您的性能

例如,您可以提前创建单独的位图图像,或者在运行时使用bitmapData.draw为需要的每个数字生成单独的bitmapData实例。然后可以交换位图以显示正确的分数计数

你也可以考虑使用NME,它与Flash非常相似,但比移动平台的Adobe Air要快三到九倍。例如,Iain Lobb的BunnyMark基准可以在iPhone4上使用AdobeAIR以16 FPS的速度渲染500只兔子,带有旋转和alpha。NME在同一台设备上以每秒30帧的速度渲染4750只兔子

这就是我用来避免性能问题的方法


好主意,谢谢!我将实现这个,但是,它仍然不能解决fpsissue@Artharos您应该采取不同的步骤来优化移动应用程序。为移动设备开发总是比较困难,因为您在目标设备上获得的资源通常较少。您应该确保最大程度的优化。我建议您查找有关“针对移动设备/iOS优化flash”的信息,并检查您是否遵循了概述的最佳实践。@joncys我正在考虑移动设备进行优化。其他一切都很好(即生成对象并管理它们)只是这个功能有点奇怪,我相信我能找到一些更具搜索性的东西,谢谢你的回复!使用位图数字并将其更改为显示新数字的想法是一个好主意,我没有想到这一点。谢谢你告诉我有关NME的情况,我只是快速看了一下,它看起来真的很好,fps的增加真的很好!我会安装它,等我回家后再做报告。