<img src="http://char-shock.com/image01/infofile/noflash.gif" border="0">


テスト
2013/06/25
更新記録 [バージョンアップ]
2006/06/23
更新記録 [変更]
2006/06/20
更新記録 [ZUMBAKAMERA]
2006/06/08
更新記録 [Animator vs. Animation]
2006/06/07
更新記録 [ビル建設]
2006/06/01
News [全面禁煙]
2006/05/31
更新記録 [みんなのうた その2]
2006/05/29
更新記録 [みんなのうた]
2006/05/28
更新記録 [The Sheep Market]
2006/05/26

    
    
 

84030

Web Diary Professional ver2.26
edit by Char-shock
Backup_FlashMX(ActionScript) Backup_DirectorMX(LINGO) Flash_素材(多分増殖中)
栞奈日記(娘の成長記録) 車改造計画(管理人) News(気になる出来事)
過去更新記録(いろいろ) 現在の更新(全て)

 

Select Page
[1] [2]
Last update... 2004年12月14日(tue)
DirectorMX [音声再生(SWA)]
  今回は音声の再生方法です。音声といってもいろいろ種類がありますが、個人的にSWAサウンドでしかもシーンによって違う音声の再生をよく使いますので、それの方法を簡単に説明します。
まず用意するのは・・・SWAサウンド(当然)。サウンドエディター使ってもできますし、WAVファイルであればDirectorで変換することもできます。
まずはそのサウンドをキャストとして読み込みます。
[挿入]-[メディアエレメント]-[shockwaveオーディオ]を選択すると読み込みダイアログがでますので、ここで再生したいファイルのパスを入力し、ボリューム、チャンネル、プリロード時間の設定をします。この辺りは気にしないでそのままでもいいでしょう。
次に、そのキャストに、0101、0201、0301、とはじめの2文字分を増やしながら再生したい順に名前を付けていきます。これで読み込みは完了です。

ここまできたら、スコア上に音声の再生をしたい個所へマーカーを作成していきますが、これはスクリプトと関係してきますので、マーカー名をmark01とし、増やしていく時はmark02、mark03...という具合になります。
基本的にmark01はSWAサウンドの0101と連動しますので、マーカーの数は読み込んだ音声と同じになるはずです。
これで大まかなとことは完成しましたので、次にビヘイビアスクリプトの作成です。
以下が内容になります。

global gstop,soundswa,gmark

on enterframe
if the framelabel contains "mark" then
gmark= chars(the framelabel, 5, 6)
soundswa="01"
member(gmark&soundswa,1).stop()
member(gmark&soundswa,1).play()
else
nothing
end if

if gstop = 1 then
if soundswa<>VOID then
member(gmark&soundswa,1).pause()
end if
end if
end

とまあこれだけですが、簡単に説明すると、マーカー名にmarkが含まれている場合、その名前の5番目6番目の文字を読みます。
その後のsoundswa="01"とそのマーカーの数字をくっつけたものに対応した同じ名前のswaキャストメンバーを再生する。例えばマーカー名がmark01の場合、5番目と6番目が01なので01、soundswa="01"なのでその二つを合わせると0101となり、同じ名前のメンバーが再生。
ちょっとわかりづらいかもしれませんが、これがあれば、応用として音声の再生、停止、一時停止、なども簡単になるはずです。
以上。
 

Last update... 2004年11月16日(tue)
DirectorMX [ファイルを開く]
  XTRAS・・・BUDAPI.X32
開きたいファイルを他のアプリケーションを使って開きたい場合のスクリプトです。もちろんそのアプリケーションがシステムに入っていないと駄目ですが・・・以下のように記述します。

on mouseDown
set xopenfile = baopenfile(the moviePath & "開きたいよ.pdf","")
if xOpenFile > 32 then
nothing
else
alert "ファイルを開くのに必要なアプリケーションが見つからないか、ファイルが見つかりません"
end if
end

こんな感じで"開きたいよ.pdf"の所のファイル名を置き換えればオッケ〜です。一応アプリケーションがインストールされていなかった場合や、自分のミスでファイル名が間違っていた場合などのためにアラートを付けると良いかもしれません。
 

Last update... 2004年11月16日(tue)
DirectorMX [フォルダを開く]
  XTRAS・・・BUDAPI.X32
ムービーと同一階層にあるフォルダをボタンを押すことで開きたい場合は以下のスクリプトをボタンにアタッチするか、ここで紹介したプッシュボタンの設定でおこないます。以下のスクリプトはムービーと同一階層にあるDataというフォルダを開きます。

on mouseDown
baopenfile(the moviePath & "Data","")
end

確かWinとMacで表記の仕方が違ったような気がしますが、そんな大それたことでもなかったと思われます。
フォルダを開きまくってみましょう・・・必要性ゼロ。
 

Last update... 2004年11月05日(fri)
DirectorMX [フルスクリーン3]
  フルスクリーン第3弾です。
元のmainmovie.dirに戻るボタンなどの設定をします。
ところがフルスクリーンにすると元が800×600のサイズで作成していますので、そこで配置していたボタンがフルスクリーンにしても位置が変わらずとても見苦しいことになるので画面のサイズに合わせて変更するようにします。
まず、ボタンのセンターポイントを以下のように変更します。

このセンターポイントを画面の基準点(0,0)に合わせます。
次にこのスプライト5のボタンに以下のビヘイビアをアタッチします。

property pstagewidth
on enterframe
pstagewidth = the stageright - the stageleft
sprite(5).locH = pstagewidth-800
end

これは以下のようにするための設定です。

例えば画面の解像度が1152×870だった場合元に作成したfullmovie.dirのサイズが800×600なので差分がでてボタンの位置がおかしくなるため、上記のスクリプトで常にボタンのセンターポイントを画面のサイズから800ピクセル引いた場所に置くというふうにさせます。
つまり元の画面が800×600なら位置はそのまま。1152×870なら左上から352ピクセル右の位置。
これで常にボタンの位置は比率に合わせて画面の右上にくるようになります。
う〜説明しづらくなってきた・・・
これでボタンの設定もできましたので、後は元のmainmovie.dirに戻るためのスクリプトです。
これも戻るボタンにプッシュボタンをアタッチし、メッセージをgobackmainとする。
次にムービースクリプトに以下のように記述します。

on gobackmain
tell the stage"・・・ステージから実行しないとエラーになる
the windowlist = []
go to movie "mainmovie"
end tell
end

これでばっちりフルスクリーンから戻れます。
もっと簡単なのあるよ〜なんていうのがあれば笑って見過ごしてやってください。
フルスクリーン作成バックアップは以上で終了です。
 

Last update... 2004年11月05日(fri)
DirectorMX [フルスクリーン2]
  フルスクリーン第2弾です。
前回の時点で別ウインドウでムービーを開くところまできましたが、その開いたウインドウを擬似的にフルスクリーンにします。
今回はデジタルムービー(DirectMediaXtra使用)を再生させることを目的に作成します。
まず、デジタルムービー再生用にステージに配置した枠のスプライト(サイズは任意。どちらかと言うと画面マックスにしておくのがフルスクリーンらしくていいかな〜)に下のように作成したビヘイビアをアタッチします。

property spriteNum

on beginSprite me
sprite(spriteNum).rect = rect(0,30,the stageRight - the stageLeft,the stageBottom - the stageTop)
end
ここでデジタルビデオの位置とサイズを設定しています。中にrect(0,30,the〜なぜ位置が上から30ピクセルのところなのかと言うと、もろもろの事情でこのデジタルビデオの前にボタンなどを配置できないため、その30ピクセルの中にボタンを仕込もうとしているからです。

ここですでにデジタルビデオだけはフルスクリーンになるはずです。
 

Last update... 2004年11月05日(fri)
DirectorMX [フルスクリーン1]
  今回はプロジェクターに書き出した時のフルスクリーンではなく、ムービーの途中で別ウインドウで仮想フルスクリーン状態にするためのスクリプトです。もっとうまくやる方法があるかもしれませんがこれが今の私の限界。
とりあえず、これは少しめんどくさいので(私が勝手にめんどくさくしてるだけ・・・)何回かに分けてバックアップをとります。

まず準備するのは、メインで走るムービーの)mainmovie.dirと別ウインドウを立ち上げたときに表示されるfullmovie.dir画面のです。
基本画面サイズは800×600の設定で作成しますが、このサイズですでにフルスクリーンになってるのは構いませんが、モニタが1024×768などの場合フルではうまらないので、これを擬似的にフルにもっていきます。

とりあえず第一回目はmainmovie.dirの設定からです。
まずはフルスクリーン用のボタンにこのバックアップですでに説明したプッシュボタン)(管理人お気に入り)をアタッチします。ボタンが押されたときに発信するメッセージをgofullなどとつけ、他にムービースクリプトを作成してその中に以下のように記述します。

on gofull
size = the desktopRectList[1]
WindowName = "fullmovie"・・・開いた別ウインドウの名称
close window WindowName
window(WindowName).windowtype = 2・・・開いたウインドウのタイプ(影付とか)
window(WindowName).rect = size
open window WindowName
tell window "fullmovie"・・・ここはフルスクリーンで表示されるfullmovie.dirのこと
go to marker ("movie01")・・・以下は各個人の設定
end tell
go to marker ("top")
end

とこんな感じで、まずはメインのムービーの設定が終わります。これでとりあえず別ウインドウで立ち上げるところまではきました。まだここではフルスクリーンになっていないので次回はその立ち上げた別ウインドウをフルスクリーンにするための設定を説明します。
 

Last update... 2004年10月26日(tue)
DirectorMX [キューポイント]
  今回はムービーと音声を同期させる場合によく使うキューポイントについてです。基本的にキューポイント自体それほど難しいことでもないですが、この項目のポイントはそのキューポイントの落とし穴についてです。
まず、使用する音声を音声編集ソフト(多分Director8以降からDigiOnSound Lightが同梱されているはずなのでこれを使用)で必要な箇所にキューポイントをつけてます。
Director側でのLINGOは

on exitframe
go to the frame
end

on cuePassed
go to the frame+1
end

としてビヘイビアチャネルに配置します。あとは再生したときにちゃんと同期されていればオッケーなのですが、ここでちょっとした落とし穴があります。
それは音声のキューポイント間とムービーのタイムラインがほぼ同時でギリギリで通過する場合のスピードの速いマシンと、遅いマシンの読み込み速度の問題です。
速いマシンではなんの問題もないようなときでも遅いマシンの場合は、ムービーの進みが遅くなりますのでポイントがギリギリですと、ポイントなしと認識してムービーが止まってしまいます。

こんな事にならないためにも、回避策としてはムービーを縮めることが可能であれば、通過箇所の距離を縮めてムービーのポイント到達を早めるか、音声を問題がおきない程度に伸ばしてキューポイントの通過の時間かせぎをして対応しましょう。
根本的に問題が起こらないようなLINGOにすればいいのでしょうが、できないときはこれがオススメです。
 

Last update... 2004年10月22日(fri)
DirectorMX [URLを開く]
  ボタンを押したらそのURLを開きたい!!
まずは設定したいボタンにBackupですでに説明したプッシュボタンのスクリプトを使い、それのカスタムメッセージにgourlと記述します(別にこのスクリプトを使う必要はないですが・・・他に機能どうとかないならもっと簡単にすみます・・・管理人が好きなだけ)。
あとは別にムービースクリプトを新規で作り、その中に以下のように記述します。

on gourl
gotoNetPage "http://char-shock.com(開きたいURL)"
end

以上。かんた〜ん。
 

Select Page
[1] [2]