Хотелось бы узнать, почему 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 трехмерных самолетов были убийцами производительности.
Я могу думать только об этом, потому что beginFill()
не использует ручку, установленную lineStyle()
, и это может вызывать проблему, однако я действительно хотел бы знать проблему, так как мне нужен мой uber-super-semi3d- прядильщик крутится при изменении цвета, а не его границ! :)
Заранее спасибо!