2011-05-03 2 views
0

Я пытаюсь замаскировать мувиклип, используя маску, созданную с помощью AS3, но меняет цвет маскируемого мувиклипа. Я хотел бы, чтобы маска не меняла цвет маскированного мувиклипа. Вот мой код:AS3 Mask меняет цвет маскируемого мувиклипа

mask_mc.mask=masked_mc; 

drawMask(); 

function drawMask():void { 
    mask_mc.graphics.clear(); 
    mask_mc.graphics.beginFill(0x000000,1); 
    mask_mc.graphics.drawRect(0,0,750,250); 
    mask_mc.graphics.endFill(); 
} 

мувиклип замаскированный становится таким же цветом, как цвет, определенным в beginFill. В приведенном выше примере masked_mc становится черным (как определено в beginFill). Удаление beginFill замаскировало все и ничего не показывало. Я не нашел никого другого, у кого эта проблема. Возможно, я ошибаюсь. Заранее благодарим за любую помощь по маскировке с AS3, не изменяя цвет замаскированных мувиклипов.

ответ

0

Вы также должны добавить маску в список отображения:

SomeClip.addChild(masked_mc) 

и я вижу, что вы рисуете на ваш клип, а не на вашей маске, так что может объяснить цвет вы видите:

var g:Graphics = masked_mc.graphics 
g.clear() 
g.beginFill(0x000000,1) 
g.drawRect(0,0,750,250) 
g.endFill() 
+0

Большое спасибо за помощь. Я допустил несколько ошибок, но моя самая большая ошибка заключалась в том, что mask_mc помещал туда, где должен был быть masked_mc. Мой синтаксис читает mask_mc.mask = masked_mc. Он должен был прочитать masked_mc.mask = mask_mc. Это заставило маскированные элементы изменить цвет маски или beginFill. Еще раз спасибо за вашу ценную помощь. – B6431

Смежные вопросы