【问题标题】:Gaps appear inside the sprites from SWFSWF 的精灵内部出现间隙
【发布时间】:2019-09-22 20:31:27
【问题描述】:

我正在使用 Adob​​e Animate 为我的游戏绘制资源,但是,精灵的不同部分之间会出现小间隙。如何解决?

它在 Adob​​e Animate 中的显示方式与它在游戏中的显示方式的比较:

【问题讨论】:

    标签: flash sprite haxe openfl adobe-animate


    【解决方案1】:

    (澄清一下,我不是专家,只是让你知道我的想法和经验)

    这是我一直在努力解决的问题;我认为问题在于如何在 Animate/Flash 与 OpenFL 中完成抗锯齿。在 OpenFL 中禁用抗锯齿将消除小的差距,但艺术看起来会很差。我相信 Flash 首先在图层上渲染所有内容,然后在继续之前使用 4x4 像素网格对该图层进行抗锯齿处理,而另一方面,OpenFL 对每个绘制的形状都使用抗锯齿,因此您看到的间隙是您的混合对象颜色及其周围环境(通常是 Alpha 通道)

    我已尝试通过针对 OpenFLs Cairo 目标的各种技巧来解决此问题,但取得了一些成功,但对于所有非 Cairo 目标,该问题仍然存在。例如 HTML5。

    Experimental OpenFL branch

    在消除这些伪影/差距时,我的最佳建议是将问题区域分成不同的层,或者如果使用层太不方便,则使用导出为位图。

    顺便说一句,OpenFL 有官方论坛和 Discord 频道,您可能会在那里得到更好的答案/建议。

    【讨论】: