如何将应用于 Sprite 的 BitmapFilter(例如 DropShadowFilter)渲染到单独的 BitmapData 层?然后将其放置在所有对象的下方。
例如,如果您有两个相互重叠的矩形 sprite,每个都应用了 DropShadowFilter,结果将是滤镜覆盖并遮挡另一个矩形 sprite - 如下所示。
注意:每个过滤器可能有不同的设置,所以我不能只对包含的 Sprite 应用统一的过滤器。 另外:理想情况下,此解决方案可扩展以同时处理许多动画 Sprite 。
最佳答案
我想说最简单的方法是保留每个 Sprites 的轮廓副本,然后对其应用 DropShadowFilter。在过滤器上,设置 dropShadowFilter.hideObject = true;
- 这将只渲染阴影。然后将所有轮廓阴影添加到单个容器 Sprite 并使用 addChildAt(container,0)
,因此它将呈现在其他所有内容下方。
关于flash - 如何只渲染一个 BitmapFilter 到 BMD?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9096820/