Обмен видеоклипами с другими активами во время выполнения в компоненте Flash - PullRequest
0 голосов
/ 03 сентября 2011

У меня есть анимированный персонаж SWC, который в основном является пустым скелетом (содержит все части тела, анимацию и функции / переменные). По сути, я хочу надеть на этого персонажа разную одежду, поэтому мне не нужно иметь много копий этого персонажа в моих ресурсах.

Например, у меня есть «скелет» (модель без одежды) и персонажи «Боб», «Джейн» и «Мэри». «Скелет» анимирован и полностью работает как экспортированный SWC, и чтобы получить других персонажей в их одежде / скинах, я открываю Flash CS5 и заменяю фрагменты роликов «одетыми» версиями компонентов. Чтобы уточнить, у «скелета» есть «части тела» в виде видеоклипов, которые все анимированы на временной шкале, такие как «голова», «лицо», «левая рука», «правая рука» и т. Д. Я открываю «Боб» У него тот же точный дизайн, что и у «скелета», за исключением того, что у «Боба» есть вся одежда, например, по-разному оформленные видеоклипы. Размер, форма, ориентация и правильные точки одинаковы для всех компонентов. После того, как я заменил все фрагменты фильма в «скелете», я экспортирую его как SWC-файл с именем «Bob.swc» и делаю это для всех персонажей.

Я спрашиваю, как я могу выполнить этот процесс ^, но вместо этого во время выполнения, чтобы у меня не было всех этих дублирующих корневых swcs (на «скелете» много кадров), поэтому я могу вырезать вниз на кучу места? Так что я могу сделать что-то вроде:

// bob gets all the actions and animations  of skeleton
var bob:UIMovieClip = new skeleton() 
// replace the body movieclip with a new looking one
bob.body = resources.bodyassets['bob']['body'] 

Или что-то подобное?

1 Ответ

0 голосов
/ 03 сентября 2011

Будет ли добавление частей кожи как детей ваших частей скелета работать?Можете ли вы иметь «направляющий» фрагмент ролика внутри каждой части тела, который поможет вам анимировать другой пустой фрагмент ролика, привязанный к «направляющей», внутри корпуса, куда вы добавите обложку?Если вы добавите обложку в анимированную часть тела, она должна скопировать ее трансформации (положение / вращение / масштаб).что-то вроде:

    var bob:UIMovieClip = new skeleton() 
    bob.body.skin.addChild(resources.bodyassets['bob']['body']);
    bob.body.guide.visible = false;

, если bob.body содержит фигуры или отдельный фрагмент ролика, вы должны иметь возможность что-то вроде:

var bob:UIMovieClip = new skeleton();
bob.body.addChild(resources.bodyassets['bob']['body']);//add skin for body
bob.body.graphics.clear();//clear existing template/helper graphics
//or, depdening on the case
bob.body.removeChildAt(0);

HTH

...