【问题标题】:Can I mask a Sprite in Haxe NME HTML5 target?我可以在 Haxe NME HTML5 目标中屏蔽 Sprite 吗?
【发布时间】:2012-06-10 17:56:32
【问题描述】:

我有一个非常大的 PNG 文件,我想随着时间的推移制作动画。基本上是一个使用普通旧 HTML div background-position-xy 的“精灵表”,你可以很容易地做到这一点。在 Haxe NME 中,我想像下面这样。

var sprite1 = new Sprite();
addChild(sprite1);

var spriteSheet = new Bitmap(Assets.getBitmapData("assets/someasset.png");
sprite1.addChild(spriteSheet);

var spriteMask = new Sprite();
spriteMask.graphics.beginFill(0xff0000, 1);
spriteMask.drawRect(0,0,400, 330);
spriteMask.endFill();
addChild(spriteMask);

sprite1.mask = spriteMask;

在 Flash 目标中,这似乎工作得很好,但在 HTML5 目标中,我得到的只是我的精灵顶部的一个红色方块。

关于如何让它发挥作用的任何想法。使用这样的东西创建动画真的很有帮助。

【问题讨论】:

    标签: html haxe


    【解决方案1】:

    遗憾的是,Jeash(NME 的 HTML5)中既没有实现 mask 也没有实现 scrollRect。 https://bugs.launchpad.net/jeash/+bug/1001797

    【讨论】:

    • Philippe,我实际上发现我可以进行位图数据交换来解决我的问题,但如果他们将掩码添加到 html5 目标,这样我就不必创建 20-30位图并将它们保存在某种数组中只是为了做某种复杂的动画。
    • 您也可以在 bitmapData 中“绘制” - 它实际上就像您绘制的图像的方形蒙版。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多