웹디자인 강의
Flash 카드를 만들어 보자(눈내리는 효과)
2002.12.04 11:17
크리스마스와 연말연시가 다가오니 지금부터 부지런히 가까운 분들에게 보낼 카드를 준비해야 될 것 같습니다. 겨울하면 눈이 제일 먼저 떠올라서인지 카드에 가장 많이 쓰이는 효과가 바로 눈내리는 모양입니다.
멋진 카드만들기을 위해 눈내리는 효과를 내어 봅시다.
[따라하기]
눈송이 모양을 만듭니다. image심볼로 등록을 합니다.
Insert>Symbols를 선택한 후 image심볼로 등록된 눈송이를 드래그해서 좌우로 모션트위닝을 줍니다. 이것은 눈이 약간씩 떨리면서 내려오기 때문입니다. 그리고는 movieclip으로 등록합니다.
이름은 "좌우이동snow"입니다.
눈이 내려오는 무비클립을 만들 차례입니다. Insert>Symbols를 선택한 후
좌우로 이동이 되는 무비클립 "좌우이동snow"를 작업창으로 가지고 와서 다음과 같은 액션을 줍니다. 3개의 프레임에 각 각의 액션이 들어갑니다. 완성된 후의 이름은 "떨어지는snow"입니다.
//1frame에 넣으세요
snow_speed = Math.floor(Math.random() * 10) + 2;
snow_size = Math.floor(Math.random() * 50) + 20;
snow_x = Math.floor(Math.random() * 500);
vector = Math.floor(Math.random() * 60) -30;
_y = 0;
_x = snow_x;
_rotation = vector;
_xscale = snow_size;
_yscale = snow_size;
this.move_LR.gotoAndPlay(Math.floor(Math.random() * 70) + 1);
//2frame에 넣으세요
_y += snow_speed;
if (_y > 370) this.gotoAndPlay(1);
//3frame에 넣으세요
this.gotoAndPlay(2);
좌우로 떨리는 눈이 내려오는 효과를 만들었습니다. 이제 그 눈이 복제를 시키면 완성이 됩니다. 역시 Insert>Symbols를 선택한 후 "떨어지는snow"를 라이브러리 창에서 드래그한 후 레이어를 추가해서 역시 3개의 프레임에 각 각의 액션을 넣습니다. 완성된 후의 이름은 "duplicate_snow"입니다.
//1번 frame에 넣으세요.
snow_Num = 50;
count = 0;
//2번 frame에 넣으세요
if (count < snow_Num) {
duplicateMovieClip ("snow", "snow"+count, 100 + count);
count++;
}
else this.stop();
/*
this.stop();
for (i = 0; i < snow_Num; i++)
duplicateMovieClip ("snow", "snow" + i, 100 + i);
*/
//3번 frame에 넣으세요
this.gotoAndPlay(2);
"떨어지는snow"와 "duplicate_snow" 무비클립의 구조는 아래 그림과 같이 됩니다.
이제 본 무비를 만들 차례입니다. 적당히 배경이 될만한 그라데이션 이미지를 만들고 놓습니다. 다음엔 완성된 무비클립 "duplicate_snow"를 드래그해서 놓기만 하면 됩니다. 더이상의 액션스크립트를 넣을 필요가 없습니다. 이미 눈이 어떻게 떨어지며 복제해야 되는지를 넣어주었기 때문입니다.
각자 그밖의 효과를 내어주면 완성이 됩니다.
*스테이지에 놓인 최종 무비클립 "duplicate_snow"를 해부하면 다음과 같은 구조로 이루워집니다.
조금은 복잡해 보일 수가 있지만 무비클립속에 무비클립이 들어가 있는 것에 불과합니다. 이제 모두 멋진 카들르 만들어 봅시다.
*다른 플래시 강좌는 http://www.goody.pe.kr 에 있습니다.
멋진 카드만들기을 위해 눈내리는 효과를 내어 봅시다.
[예제 - 눈내리는 효과]
[따라하기]
이름은 "좌우이동snow"입니다.
좌우로 이동이 되는 무비클립 "좌우이동snow"를 작업창으로 가지고 와서 다음과 같은 액션을 줍니다. 3개의 프레임에 각 각의 액션이 들어갑니다. 완성된 후의 이름은 "떨어지는snow"입니다.
//1frame에 넣으세요
snow_speed = Math.floor(Math.random() * 10) + 2;
snow_size = Math.floor(Math.random() * 50) + 20;
snow_x = Math.floor(Math.random() * 500);
vector = Math.floor(Math.random() * 60) -30;
_y = 0;
_x = snow_x;
_rotation = vector;
_xscale = snow_size;
_yscale = snow_size;
this.move_LR.gotoAndPlay(Math.floor(Math.random() * 70) + 1);
//2frame에 넣으세요
_y += snow_speed;
if (_y > 370) this.gotoAndPlay(1);
//3frame에 넣으세요
this.gotoAndPlay(2);
//1번 frame에 넣으세요.
snow_Num = 50;
count = 0;
//2번 frame에 넣으세요
if (count < snow_Num) {
duplicateMovieClip ("snow", "snow"+count, 100 + count);
count++;
}
else this.stop();
/*
this.stop();
for (i = 0; i < snow_Num; i++)
duplicateMovieClip ("snow", "snow" + i, 100 + i);
*/
//3번 frame에 넣으세요
this.gotoAndPlay(2);
"떨어지는snow"와 "duplicate_snow" 무비클립의 구조는 아래 그림과 같이 됩니다.
*스테이지에 놓인 최종 무비클립 "duplicate_snow"를 해부하면 다음과 같은 구조로 이루워집니다.
조금은 복잡해 보일 수가 있지만 무비클립속에 무비클립이 들어가 있는 것에 불과합니다. 이제 모두 멋진 카들르 만들어 봅시다.
*다른 플래시 강좌는 http://www.goody.pe.kr 에 있습니다.
댓글 11
-
키드~!
2002.12.04 11:23
-
崔ちゃん
2003.01.01 23:12
쿠오옷..이거닷..+_+ -
수라
2003.01.22 06:14
눈이 왜 한개씩 밖에 안 내리죠?
복사해서 여러게 놔야 하나? -
이동한
2003.01.23 17:00
라이브러리에서 여러게 놓으면 될꺼예요 -
수라
2003.02.17 07:50
아뇨..이거 fx 용이네요. 어쩐지..5.0은 안돼는군요. -
[CuTE_YaaKi]
2003.02.22 18:12
fx가 뭐죠????????? 5.0??
mx를 말하는건가?? 무식티가 절절~~ -
이현희
2003.03.06 16:55
-
sselang
2007.06.11 23:05
좌에서 우측으로 보낼려면 어디를 바꿔줘야 하나요 -
슈이`__`a
2004.01.14 13:27
MX인데 인서트에 심볼스메뉴가없군요..ㅡ.,ㅡ -
ssine
2005.03.09 20:26
눈이 하나만 나오능데....왜 그런거예요? -
하이롱
2006.07.24 09:37
대단하시네여 좋은 효과 같아여^^
옌날에 눈내리는거 만든다고 노가다했던 기억이 나는군요...ㅜ.ㅡ