【问题标题】:Can I change the fullscreen scaling algorithm in Flash when using fullScreenSourceRect?使用 fullScreenSourceRect 时可以更改 Flash 中的全屏缩放算法吗?
【发布时间】:2012-08-30 14:26:54
【问题描述】:

当我将我的 Flash 游戏设置为全屏交互显示模式并设置 stage.fullScreenSourceRect 以便它使用硬件缩放时,任何分辨率下的性能似乎都比不使用 fullScreenSourceRect 时要好得多。我真的很想使用这个功能,但问题是它似乎使用了 4 倍模糊或一些类似的缩放算法,这使得一切看起来都非常模糊。

将模糊作为唯一可用的缩放模式似乎是一个奇怪的选择。我会更高兴有一个简单的最近邻居。我在文档中找不到有关更改比例算法的任何信息。有什么方法可以在仍然使用硬件加速的同时做到这一点?

【问题讨论】:

  • 我认为你总是会在某种程度上得到模糊,因为它必须缩放到可变分辨率。你可以有一些目标分辨率(最常见的)并将你的原生宽度/高度设置为一半,或者使用 system.capabilities 类来获取实际的屏幕分辨率并将你的窗口设置为那个大小。
  • 感谢 LondonDrugs,但是当使用硬件加速时,即使 fullScreenSourceRect 恰好是全屏大小的宽度和高度的一半,也会出现模糊的缩放效果。问题不是分辨率可变导致的失真,问题是缩放算法模糊。

标签: actionscript-3 actionscript fullscreen hardware-acceleration


【解决方案1】:

这款游戏的预期平台是什么?如果这是移动的,那么可以实施一些标准来确保理想的分辨率。如果这是针对网络的,那么我建议定义刚性尺寸。否则,根据我的经验,最好开发到显示器理想的原始分辨率。除非您的代码动态地将对象绘制到您的舞台上,否则总会有某种光栅/插值。您还可以获取屏幕分辨率并让代码进行相应调整:How do I get the user's screen resolution in ActionScript 3?

我开发了许多触摸屏应用程序,这些应用程序跨越具有不同分辨率的多个显示器,AIR 在它的“屏幕”类中有一些很好的选项,可以使过程更容易。

【讨论】:

  • 嗨。这是一款浏览器游戏。感谢您的回答,但我认为您没有理解这个问题。获得屏幕分辨率不是问题。在全屏模式下使用软件缩放已经可以正常工作了。问题是我想使用硬件加速来进行缩放以提高性能。 Flash 有一个内置功能可以做到这一点,我想问是否有办法将它使用的缩放算法更改为比 4 倍模糊更清晰的东西。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-06-11
  • 1970-01-01
  • 2016-05-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多