我读过几篇关于在 Air for iOS 上优化 Flash 性能的文章,其中许多建议使用 StageQuality.LOW 模式。但似乎 Air(我使用的是 3.6)不允许您使用 StageQuality.LOW,它必须是 HIGH 或 BEST 质量。
我错过了什么吗?有没有办法把它变成低质量模式?
我读过几篇关于在 Air for iOS 上优化 Flash 性能的文章,其中许多建议使用 StageQuality.LOW 模式。但似乎 Air(我使用的是 3.6)不允许您使用 StageQuality.LOW,它必须是 HIGH 或 BEST 质量。
我错过了什么吗?有没有办法把它变成低质量模式?
事实上,性能上是有区别的。StageQuality 渲染性能的差异,例如位图或文本字段。StageQuality Lower 不应用抗锯齿矢量图形,不应用位图图形绘制不流畅。更高质量的设置会产生更好的缩放位图渲染。此外,更高质量的设置计算成本更高。特别是在渲染缩放视频时,使用更高质量的设置会降低帧速率。
你在做什么工作?如果使用 BitmapData,推荐如下。
AIR 3.3 后来添加了一个新的特色绘图方法,称为drawWithQuality,它允许您以独立于应用程序中使用的舞台质量设置的质量绘制资产。
过去,必须修改舞台质量才能更改 BitmapData.draw 的质量。位图数据。drawWithQuality 是 BitmapData.draw 的扩展,它添加了一个可选参数来指定矢量渲染的质量。
function drawWithQuality(source: IBitmapDrawable, matrix:Matrix=null, colorTransform: ColorTransform =null, blendMode:String=null, clipRect:Rectangle=null, smoothing:Boolean=false, quality:String=null): void
以下是支持的质量值:
- 舞台质量.LOW
- StageQuality.MEDIUM
- StageQuality.BEST
- StageQuality.HIGH_8X8_LINEAR
- StageQuality.HIGH_16X16
- StageQuality.HIGH_16X16_LINEAR
它确实有效,只是在 AIR 模拟器中总是显示为 HIGH。将在实际设备上更改。即使在 GPU 模式下的低质量下,位图也会变得平滑。