MMF2 の基礎概念 19


「標準」といって良い基本機能を提供するエクステンションを選ぶ

ビルドするアプリケーションの種類に関係なく使えるエクステンションをまず選び使いこなそうという趣旨です。

MMF2 の「標準機能」を使って作れば理論的には対応エクスポータを利用することで異なった環境でもアプリケーションとして共通動作させることができます。

しかしエクステンション(機能拡張)に頼らなければならない場面が発生すると、エクステンションの利用に気を付けなければならない点があります。

例えばファイル入出力の暗号化は「完全な標準」が無いので、なんらかのエクステンションに頼らなければいけない。エクステンションの選択は基本的に自由だけど、最初は PC で動くのは当たり前、そこから発展してエクスポータを利用する場合、エクスポータでの動作に対応しているエクステンションが必要になってきます。

異なった環境でも共通化して使える便利なエクステンションに言えることは…

  1. 開発された時期が古くて枯れていて単純な機能を持ったものが多い
  2. 開発者が変化する環境に対してなんらかの対応や手を加えられる
  3. 使っているユーザの数が多い

つまり過去から現在まで継続したサポートがされているという点が挙げられます。サンプルや類例を探すのが容易だと言う点も大事です。

あまりユーザ数の多くないエクステンションに頼り切った開発というのも結構危険です。エクステンションにバグが含まれていても、それを作者さんに報告して直してもらえる可能性自体が低い。

機能拡張は異なった専門知識が必要になる場合も

用途が限られていて専門性が高いものになればなるほど、高機能だがそのエクステを使いこなすために相応の専門知識などが必要になります。

例えば筆者の得意技は XLua とバイナリオブジェクトの複合技、この二つで「ファイル入出力」、「文字列操作」、「データ暗号化」、「復号化」、「 Zlib アルゴリズムを使った圧縮」、「解凍」、「 Script 」と「配列」「データベース」などなど…最強タッグというか使える組み合わせです。

で、自分は使うんだけど今ではこれを人にはお勧めしません。なぜかというと

だって PC でしか動かない上、人に説明もできないから

自由度が高すぎると、逆にあらゆるパターンで便利に使えるかと言ったらたぶんそうじゃないです。場合によってはもっと便利で楽な方法があるはず。

ビルドするアプリケーションの種類がひどく限定的だということも弱点として意識するべきです。多少の不便は覚悟してでも普遍的な機能やエクステンションを選び利用すること、その組み合わせで工夫して使いこなしながら作れるものを作る。

MMF2 を使う理由は人それぞれだけど、外部エクスポーターの充実は MMF2 のユーザの強い武器です。だったらエクスポータ間での動作互換性を確保・意識しながらゲームやアプリを作れればその方が良いと考えてます。

独断と偏見で選ぶ機能別エクステンションの選択例

ファイル入出力なら:「 ini 」

暗号化なら:「 AESFusion 」

配列なら:「 Array (配列)」

日本語表示なら:「 String (文字列)」

ウェブコンテンツ用なら:「 SWF Exporter 」か「 HTML5 」

プラットフォーム動作なら:「 PMO 」

tenkoji

最強タッグといえば・・・

MMF2 の「 Ini オブジェクト」はセーブデータを扱う場合には重要なエクステンションで互換性が非常に高い。「 PMO 」はすべてのエクスポータでサポートされています。「文字列」は自由度が無いけどとにかく安定した動作。「配列」に関しては他にも利用できるものがあるけど、基本はコレです。


>>次のページ