2015-04-20 3 views
0

У меня есть простая анимация - фон, который я написал в P/Shop и овце. Овцы - это анимированный мувиклип, чья голова поворачивается и тело движется.Можно ли замаскировать анимационный клип? Flash as3 cs4

Мне нужно, чтобы, когда овцы идут под деревом - он находится в полной тени - пока он не выйдет из-под дерева.

До сих пор мне удалось одеть овцу под слой тени .. замаскируйте тень и используйте прямоугольник размером с апельсиновый овец - он затем движется вдоль твина так же, как и овцы .. Это довольно неуклюже, хотя и займет много работы, изменит форму маски каждый раз, чтобы покрыть точную овцу. Даже тогда я не смогу точно следить за анимацией.

Итак, есть ли способ, чтобы анимированные овцы были клипом и маской - так, чтобы он в полной темноте каждый раз проходил под деревом.

Или есть другой способ достичь этого? Thx

ответ

0

Можете ли вы положить свою овцу на слой между тенью и фоном? Наверное, не потому, что вы хотите овцу перед деревом - Возможно, вам нужно поместить теневой элемент в клип овец и использовать сценарий для его угасания или выхода в зависимости от теста ударов с деревом. Вы можете добавить дублируемую копию овец, которая будет использоваться в качестве маски, хотя для тени, вероятно, потребуется более мягкая грань, чем эта маска даст вам.

+0

Спасибо за это - Возможно, теневой элемент может работать. Я посмотрю, как создать область хита, но я просто заблуждаюсь при кодировании этих вещей. Если нет, возможно, мне придется сделать это вручную - то есть - когда он войдет в рамку на временной шкале, которая соответствует временной шкале, где он ходит под деревом - я просто покачаю его темнее .. –

+0

Я думаю, что, возможно, низкий уровень толщины. Я могу просто поднять яркость, когда овцы идут под деревом ... Не совсем то же самое, что иметь «пятнистую» тень дерева, но, вероятно, достаточно хорошо. –

1

Проблема заключается cacheAsBitmap свойство,

вы должны назначить maskclip и ваше maskedclip свойство cacheAsBitmap = истина

Например:

maskmc.cacheAsBitmap = true; 
myMaskedClip.cacheAsBitmap = true; 
myMaskedClip.mask = maskmc; 

Я добавил образец файла FLA, что вы можете проверить его здесь: FLA

+0

Эй, спасибо. Я закончил избавляться от проблемы, а не пытался ее исправить. Спасибо все равно. Мой Flash CS5 не позволит мне получить доступ к вашему файлу. –

+0

круто, если это помогает вам проголосовать, а другие могут видеть, что это работает, счастливое кодирование –

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