■序章 : Flashゲーム制作の基礎(簡易)
[2010年04月09日 更新]
◆まず、はじめに◆
このFlashゲーム制作講座はGon-fla.netで公開していた講座をこちらへ移設し、
且つ、第09回まではブログでの講座をリニューアルしたものになります。
私、【ごんたろう】と申します。よろしくお願い致します。
私はプログラマではございません。そして、グラフィックデザイナーでもなければ、
イラストレーターでもありません。言ってみれば、Flashというソフトを扱うには
向いていない方の人間であります。
そういう人間がFlashでゲーム制作をしていると言うことを頭に置いてこの講座を
御覧になっていただくと助かります。私、こういう講座をHPで公開したことなど
ございませんので、お手柔らかにお願いしたい次第でございます…。
ちなみに当講座のサンプル、スクリプティングで使用しているFlashのバージョンは
■Flash MX[Version6]-Action Script1.0?1.1?です。
最新のFlashはFlash CS4[Ver10?](2009年4月現在)というバージョンですが、
FlashMXでも充分すぎるくらいのゲームを作ることが出来ます。
この講座はFlashゲーム制作ということなので、
Flashの基本的な「シンボル」
「インスタンス」「ボタン」「グラフィック」「ムービークリップ」「モーショントゥイーン」
「シェイプトゥイーン」などの細かい点についてはご自身で調べていただく必要が
ございます。このページでは上記の簡易的な説明を紹介いたします。
この講座の目的は、Flash教則本の系統はたくさんありますが、その本を読むための
説明書的な本が必要なものが多いので、少しでもFlash初心者、プログラマーじゃ
ない人向けにかみ砕いて伝える事でございます。
では、ご挨拶はこの辺にして始めてみようではありませんか。
Flashの参考書なども役に立ちます。特にAction Scriptのリファレンスなどは
必須ですよ。
■Flash でオリジナルゲームを作る。(Version:MX以降)
(当講座のサンプルはFlash MXで制作しています。)
●まず、基礎●
Flashを始めてゲームを作ってみたいという方は多いのではないでしょうか。
しかし、Flashを始めていきなりその日からゲームを作ることは不可能です。
ですが、C言語やC++、Java、BASICなどのいわゆるプログラミング言語を
勉強してゲームを作るより少しは難易度が低いように思います。
ゲームを作るのに必要な知識として、
まず、Flashの基本的な機能を知る、これは絶対必要不可欠です。
たとえば
シンボル、インスタンス、ムービークリップ、グラフィック、ボタンなどの
Flashの基本機能はもちろん、そして、ステージ、フレーム、塗りと線の関係、
ビットマップ形式、ベクター形式なども少し知っておくとずいぶん違うでしょう。
グラフィックは静止画の集まり、ボタンはマウスで直接クリックしたり、
キーボードのキー押しに反応するオブジェクト(物体)、
ムービークリップは静止画の集まりを素早く切り替えて動画のように再生する
オブジェクトであり、アクションスクリプトを記述できるオブジェクトである。
ということなどを多少理解しておかないとゲーム制作はできないと思います。
ちなみに上記の説明は簡易的な物で特にムービークリップについては
Flashの様々なオブジェクトを統括できるものなので詳細はここでは省いています。
・1.シンボル(A-01)
ライブラリウインドウに登録される
オブジェクト(ムービークリップ、グラフィック、ボタン)
が表示されます。登録した
オブジェクトの実体
です。ここからオブジェクトを編集すると
インスタンス
に
反映します。ステージに描いたもの(ビットマップ含む)などをシンボルにすることを
「シンボル化」
といいます。
・2.インスタンス(A-02)
ライブラリに存在するシンボルをステージへドラッグアンドドロップすると
生成されるオブジェクトが「
インスタンス
」です。
若干意味合いは違いますが、
「シンボル」は実体、「インスタンス」は
実体(シンボル)のショートカット
と考えるとイイと思います。
・3.ムービークリップ(A-03)
静止画の集まりを素早く切り替えて動画のように再生する
オブジェクトであり、アクションスクリプトを記述できるオブジェクトである。
アクションをインスタンス別に書いたり、シンボル毎に書いたりと
状況に応じて記述する場所を変えることができます。
・4.ボタン(A-04)
マウスで直接クリック
したり、
キーボードのキー押しに反応する
オブジェクト(物体)です。
ボタンにマウスやキーを押した場合の処理などを書く時と
(
on()イベント
)
ムービークリップに記述するキー押しなどの
結果は若干変わります。
ボタンを一回一回押して放してという処理をする場合は
「ボタンオブジェクト」に、キャラクターをスムーズに動かすなどの場合は
「ムービークリップオブジェクト」にスクリプトを記述するのが
良いと思います。
・5.グラフィック(A-05)
静止画の集まり
です。グラフィックオブジェクトをムービークリップに
配置し、最終的にムービークリップで処理をすることも可能です。
・6.ステージ
描いたオブジェクトなどを配置する土台といえばよいのかな……。
・7.フレーム(fr)
画面の1コマ1コマのこと。呼び方がコマなのかフレームなのかというだけ
のコトなのです。Flashではフレームと言いましょう。
・8.フレームレート
秒間○コマという言い方をしますが、それと一緒なのです。
フレームレートはFPS(Frame Per Second)と表されます。
フレームレート=秒間コマ数なのです。このフレームレートの値が大きければ
大きいほど、アニメーションをなめらかに表現できます。
その反面、容量とCPUの使用率も上がりますので、大きければいいと
言うわけではありません。初期値の12以外では15、24、30程度で
問題ないと思いますが、必要であるならば60で制作しても良いと思います。
Flashのフレームレートのデフォルト(初期値)の値は12ですが
値は変更できます(最大120)
■絵(グラフィック)が描けない人もあきらめないで。
私はイラストなどの経験はありませんし、絵は下手な方で正直描けません。
私と同じような方もあきらめないでほしいと思います。
今は絵など様々なフリー素材があります。
それをアレンジして自分で描くのも良いですし、フリー素材であればそれを
そのまま使っても良いですし、もちろん有料のモノを購入しても……。
ゲームを作る際、いきなり絵を全部作ってしまおうと考えなくて良いと思います。
ある程度の仕組みさえ理解していれば、差し替えが可能なので
ざっぱな絵を描いて一度動かしてみる…そんな感じで良いと思います。
ただ、仮絵と最終的な絵とスクリプト的に手を加えたりする場合には
それらも考慮しておく必要がありますが、それは別として
まず、矩形(四角)のムービークリップが正常に動くか、ジャンプするか
などを組めるようになることが大事だと思います。
小さな作業を数こなし、どんどん規模を大きくしていくことが
遠道なようで実は近道なのです。焦らずじっくり固めていきましょう。
●ゲーム作りに最低限必要な知識●
■変数
■座標(X,Y)
■Flag[フラグ](変数)
上記3つ(正確には2つかな)をわからないとゲーム作りはむずかしいでしょう。
逆を言えば、わかればゲーム作りへの道を1歩進むことができるのです。
では、変数の説明から。
・変数(スコアや残機、HP、MPなどの表示)
算数の時間に出てきたものです。変数、変わる数です。
変数というものがなければゲームはなりたちません。
ゲームだけにとどまらず、ソフトウェアすべてに対してです。
変数が理解できないとゲーム作りは不可能になります。ここはしっかりと
マスターしましょう。
変数というものはよく「
値を入れる箱
」と言い換えられます。
まさにその通りなのですが、これはどういうコトかというと、
たとえば、スコア(得点)や残機、HPやMPは数値が状況によって
変わりますよね。これらは変数とよばれるものなのです。
ゲームを作る時にHPの変数、MPの変数などを作ります。
そしてプログラム上で「今あるHPの変数に10を足す」とか
敵から攻撃を受けたので「今あるHPの変数から10を引く」
HPが1以上残っていたら再度攻撃可能、HPが0以下になったら
ゲームオーバー、という具合に変数を駆使して様々な条件に
分岐させていきます。それらを集まりがゲームになります。
変数には「型」というものがあり、数字が入る箱や文字の入る箱などが
あります。後述のフラグのように「はい、いいえ」的な2種類の値しか
もたない変数も存在します。
(他にもたくさんありますがここでは省略します。)
変数について、なんとなくわかりましたか?
変数は必ず出てくるので、徐々に理解していくといいでしょう。
実際にサンプルなどを使用したときにも変数の説明が入ると思うので
今は100%理解できなくても大丈夫です。
・座標(XとY)
座標はFlashでは基本的に左上がX=0、Y=0となり、
右上がXの最大値(ステージの最大値)、Y=0
左下がYの最大値、X=0、右下がXY両方とも最大値になります。
Flashでは元となるステージの左上が「0,0(X,Y)」となりますが
シンボルの編集画面などでは中央が「0,0」となることがあります。
座標を扱う場合にはご注意ください。
・X座標(えっくすざひょう)←→左右の座標
算数の時間に出てきたかと思います。横軸を数値的に表したものです。
たとえばキャラクタを右に1つ移動させる時に「あるキャラのX座標を1加算(+1)」
などと言います。
・Y座標(わいざひょう)↑↓上下の座標
同じく算数の時間に出てきたかと思います。縦軸を数値的に表したものです。
たとえばキャラクタを上に1つ移動させる時に「あるキャラのY座標を1減算(-1)」
などと言います。
・Flag[フラグ](変数)
さて、このフラグというものですが。これも先ほど出てきた変数です。
なぜ分けて書いたか。このフラグも変数なのですが、ブログなどで
「フラグの使い方」などを検索される方が多くいらっしゃるので
分けてみました。フラグというのは基本的に
「ON、OFF」「0と1」のみの
値を持つものをフラグと呼びます
。値が複数あるフラグもあります。
そこは軽く考えてください(笑)フラグフラグというとわかりづらいですが
呼び名は「フラグ」ですが、頭の中では「
スイッチ
」という風に思ってください。
「RPGツクール」などでRPGを作った経験のある方はご存じかと思いますが
「ゲームスイッチ 001をオン」とかってありましたよね。
これがまさに「フラグ」なのです。さて、このフラグはどういう時に使うか。
たとえば何かのイベントをクリアしたという証明、ある重要アイテムを
入手したという証拠、などに使用するのがフラグです。
フラグをオンにすることを「フラグを立てる」といいます。
あるボスを倒したら、「ボスを倒しましたフラグ」をたてる。
このボスを倒しましたフラグが立っていたら、もうこのボスは出てこない。
という処理や、あるアイテムを入手して、街の人に話しかけると別のイベントが
開始されるなどの処理に使用します。
なんらかの事を起こした印になるのがフラグ
です。
さて、序章は以上です。
次の回までしばらくお待ちください……。
ご意見、ご感想はGon-Fla.netのコメント掲示板に書き込みください。
2011/03/10 現在スパム対策のためBBSは使用できなくなっております・・・
申し訳ございません。