我想知道为什么AS3 colorTransform 只变换形状的边框?
发布了类似的问题,但是我认为不需要进行如此大规模的解决方法来做到这一点。
我有类似的东西:
var sh:Shape = new Shape();
sh.graphics.lineStyle(4, 0x000000);
sh.graphics.beginFill(0xFFFF00);
sh.graphics.drawRect(0, 0, 200, 200);
sh.graphics.endFill();
addChild(sh);
是的,我知道我们可以with(sh.graphics) do
在这里使用,但是如果我进行如下颜色变换:
sh.transform.colorTransform = new ColorTransform(1, 1, 1, 1, red_offset, green_ofs, b_off, 0);
只有形状的边框会发生变化。我试图用不同的填充在每一帧上重绘对象,但这在性能上是一种过度杀伤,大约 10 个 3d 平面是性能杀手。
我只能想到这一点,因为beginFill()
不使用笔组lineStyle()
,这可能会导致问题,但是我真的很想知道这个问题,因为我需要我的 uber-super-semi3d-spinner 在改变颜色时旋转而不是他的边界!:)
提前致谢!