Ming movieclip

 フラッシュムービーやゲームを作成するときに、キモとなるものがあります。それが movieclipです。 movieclipさえわかれば、あとはactionscriptを理解するだけです。
 今回はMingでMovieClipを使っていろいろしてみます。

とりあえずMovieClipを使ってみる

movieclip
 
四角形を表示するmovieclipを作成する
<?php

$mcRect = new SWFSprite();
$spRect = new SWFShape();
$spRect->setLine(2,0,30,20);
$spRect->setRightFill(10,10,10,100);
$spRect->movePenTo(0,0);
$spRect->drawLine(0,5);
$spRect->drawLine(5,0);
$spRect->drawLine(0,-5);
$spRect->drawLine(-5,0);
$mcRect->add($spRect);

$mcRect->nextFrame();
?>
"四角形を表示するmovieclip"を上下移動させるmovieclipを作成する
$mcMove = new SWFSprite();
$mcMove->setFrames(100);
$rect_move =  $mcMove->add($mcRect);

 for($i = 0;$i < 100;$i++){
   if($i < 50){
    $rect_move->move(0,5);
   }else{
    $rect_move->move(0,-5);
   }
   $mcMove->nextFrame();
 }
"上下移動させるmovieclip"を保持するMoiveを作る
ming_useSWFVersion(5);
$Movie = new SWFMovie();
$Movie->setDimension(10*5,10*5*5);
//$Movie->setFrames(20);
$Movie->add($mcMove);
//for($i=0;$i<20;$i++){
//$Movie->nextFrame();
//}
$Movie->save("Moive.swf");
作成したファイルクリックする

親movieclipと子movieclip
親が移動すると子も移動します。確認しましょう。
◎親が移動すると子も移動する
ming_useSWFVersion(5);
$Movie = new SWFMovie();
$Movie->setDimension(10*5,10*5*5);
$Movie->setFrames(20);
$move_movie = $Movie->add($mcMove);

for($i=0,$m=1;$i<100;$i++){
   if($i%20 == 0){
	$m *= -1;
	}
    $move_movie->move(5*$m,0);
   $Movie->nextFrame();
}
 $Movie->save("Moive.swf");

作成したファイル クリック
◎親が拡大すると子も拡大する
ming_useSWFVersion(5);
$Movie = new SWFMovie();
$Movie->setDimension(10*5,10*5*5);
$Movie->setFrames(20);
$move_movie = $Movie->add($mcMove);

for($i=0,$m=1,$s=1;$i<20;$i++){
   if($i%3 == 0){
	$m *= -1;
   	 if($m < 0){	
	 $s = 1.2;
	 }else{
	 $s = 0.8;
	 }
	}
    $move_movie->scaleTo(2*$s,2*$s);
   $Movie->nextFrame();
}
 $Movie->save("Moive.swf");
ポイントは拡大の仕方です。(0,0)を中心に拡大縮小します。
作成したファイル クリック
最後に
 movieclipを使うと複雑なアニメーションを複数の単純なアニメーションに分けて作成 することができます。これはとても便利ですね。
 それだけではありません。movieclipは替えがききます。回転するmovieclipと移動するmovieclipは まったく違う動作をしますが、それらを扱うmovieclipにとっては  回転していようが移動していようがまったく関係なくプログラムすることができます。
 つまり再利用性も抜群なわけです。
 えーと、actionscript使うともっとすごいことになります。
興味のある方は、次回を待て!!
戻る

PC用眼鏡【管理人も使ってますがマジで疲れません】 解約手数料0円【あしたでんき】 Yahoo 楽天 NTT-X Store

無料ホームページ 無料のクレジットカード 海外格安航空券 ふるさと納税 海外旅行保険が無料! 海外ホテル