コレクティブ:
単一プロジェクトへのファイルのグループ化

コレクティブとは?

Max パッチャーを開く場合、1 つのファイルだけを開くように見えて、実際にはいくつかの他の Max ファイルを開く必要がある場合があります。

  • パッチャーが特定のエクスターナルオブジェクトを必要とする可能性がある場合。

  • パッチャーがサブパッチ(パッチャーの中でオブジェクトとして使用される他の Max ドキュメント)を含んでいる可能性がある場合。

  • パッチャーが、Max オブジェクトで使用される他のファイルをロードする可能性がある場合。このカテゴリの中には、MIDI ファイル、coll ファイル、env スクリプトファイル、funbuff ファイル、mtr ファイル、preset ファイル、seq ファイル、table ファイル、timeline ファイル、アクションパッチ、PICS ファイル、PICT ファイル、Quicktime ムービー等が含まれます。

Max で書いたプログラムは、実際には、多くの異なったファイルとして分割されている可能性があります。そして、それらのファイルのいずれかが無い場合、プログラムが正しく機能しなくなる可能性があります。この問題を避けるために、Max では、プログラムにとって必要なファイルのほとんどを集め、コレクティブと呼ばれる1 つのグループとして書き出すことが可能です。一度これを行なうと、パッチがすべての必要なファイルとデータを得られることを保障できるようになります。また、すべての必要なファイルを同梱したかどうかを心配することなく、そのコレクティブを他の人の使用のために提供することもできるようになります。コレクティブを提供する相手が Max 自体を持っていない場合、コレクティブと共に MaxMSP ランタイム を提供することができます(販売はできません)。これによって、受け取った人があなたのプログラムを実行できるようになります。

加えて、コレクティブとMaxMSP ランタイムのコピーを結合させて、スタンドアロン・アプリケーションを作成することも可能です。このアプリケーションを実行するためには、Max も MaxMSP ランタイムも必要ありません。

また、Max/MSP によってオーディオ・プラグイン(VST、RTAS、AU)を作ることもできます。Max/MSP によるプラグインの作成に関する詳細と実例は、Pluggo Developer Materials を参照して下さい。これは、Pluggo と一緒にインストールされるもので、www.cycling 74.com からダウンロードすることができます。

あなた自身のプログラムを作成

Max で書かれるプログラムの最も一般的なものは、他のサブパッチをサブパッチとして内部に持つ1 つのメインパッチ(Max ドキュメント)からできています。あるいは、別々のタスクを行なう2 つ以上の異なったパッチをユーザが同時に開いたままにしておくようなプログラムの設計を選択する場合があるかもしれません。どちらのケースでも、ユーザによって最低 1 つのパッチャーウィンドウが開かれます。これを、トップレベルパッチといいます。コレクティブは 1 つ以上のトップレベルパッチを持つことができ、コレクティブが開かれる際にはそれぞれが開かれます。トップレベルパッチの内部でオブジェクトとして使用されるパッチはサブパッチと呼ばれます。

自作のプログラムをコレクティブにするためには、どのパッチ(複数の場合もあります)をプログラムのトップレベルパッチにするかを決める必要があります。このパッチを使ってコレクティブをビルドする場合、Max はコレクティブの中に、トップレベルパッチが操作する必要がある任意のエクスターナルオブジェクト、またはサブパッチを含めます(コレクティブのスクリプトに "exludeexternals ture" コマンドを追加した場合を除きます)。

また、コレクティブを完全なものにするために、いくつかの他のデータファイルを明示的に含める必要があります(データファイルは、collseq のようなオブジェクトによって使用されます)。これによって、完全に動作するプログラムを得ることができます。このプログラムは、本来多くの様々なファイルから作られているものが 1 つのファイルとして保存されたものです。

コレクティブを保存した後、このコレクティブは他の Max ドキュメントと同様、File メニューから Open... コマンドを選択するか、Macintosh では ファインダ、Windows では ファイルブラウザでダブルクリックすることによって、開くことができます。

コレクティブは、オブジェクトボックスに名前を入力することによって、他のパッチのサブパッチとして開くことはできません(同様に、bpatcher にロードすることもできません)。コレクティブの中のサブパッチとして使われている任意のパッチを変更した場合でも、これらの変更によってコレクティブは更新されません。コレクティブの中のサブパッチは、コレクティブを保存したときの状態のままです。

コレクティブをビルドする場合のステップ

1. トップレベルパッチを最前面にして、File メニューから Build Collective / Application / Plugin... を選びます。

スクリプトウィンドウが表示されます。このウィンドウで Max がコレクティブを作るために実行しなければならないことを記述したリストを作成します。Max はすでにスクリプトの最初のエントリである open thispatcher を作っています。これは、トップレベルパッチで自分自身をロードするよう指示するものです。パッチで必要となるエクスターナル・オブジェクト、トップレベルパッチ(あるいは、bpatcher の中)でオブジェクトとして使用されているサブパッチ、ネストされたサブパッチ(トップレベルパッチのサブパッチの中で使用されるサブパッチのサブパッチ)は、すべて自動的にコレクティブにインクルードされ(含まれ)ます。加えて、jsfpichi、のような特定のオブジェクトは、使用しているファイルをコレクティブの中にコピーしてくれます。js オブジェクトでは、スクリプトファイルはコピーされますが、スクリプトの中で使用するファイルはコピーされません。

プログラムで複数のトップレベルパッチを使用する必要がある場合、Toplevel Patcher ボタンをクリックして、ファイルダイアログボックスからパッチャーを選択することによって、それらののパッチを指定することができます。Max は新しい行をスクリプトに書き込み、新しく選択されたファイルが開かれることを表示します。

次の例は、Arpeggiator という名前のパッチがコレクティブのトップレベルパッチとして保存され、2 番目のトップレベルパッチとして Controls という名前のパッチが追加されています。

ユーザがコレクティブを開いたとき、このウィンドウのリストにあるトップレベルパッチャーが、表示されている順序で開きます。パッチャーが開く順序を変更したい場合には、このスクリプトを編集することができます。

2. 自動的にインクルードされるエクスターナルやサブパッチの他に、トップレベルパッチで使用されるファイルがあるかもしれません。コレクティブに他の必要なファイルを追加する場合、Include File... ボタン(あるいは、その必要なファイルが Max パッチである場合は、Patcher ボタン )をクリックし、表示されたダイアログボックスで、適切なファイルを選びます。

このように、明示的にファイルを含める必要があるかもしれないということには、 3 つの理由があります。まず第1 に、よくあるケースとして、パッチの中のいくつかのオブジェクトが別のファイルからデータをロードする場合です。次の例を参考にして下さい。

このパッチは、ロードされた場合に volume.t というテーブルファイルと、Schene1.sc という seq ファイルを探します。これらのファイルはパッチャーでも、エクスターナルオブジェクトでもないため、自動的にインクルードされません。そのため、スクリプトにこれらの名前を入力する必要があります。前に述べたようないくつかのオブジェクトでは、このようなファイルのインクルードを扱ってくれます。

現時点では、movie および imovie オブジェクトは(同様に Jitter オブジェクトも)、コレクティブにインクルードされません。

第 2 に、プログラムが追加のパッチを動的に(例えば、pcontrol オブジェクトに対する load メッセージによって)ロードする可能性がある場合です。このようなパッチはトップレベルパッチャーのオブジェクトボックスとして表示されないため、自動的にインクルードされません。手動でインクルードする必要があります。次の例では、ファイル panic はトップレベルパッチのサブパッチではありませんが、必要なファイルであり、コレクティブに明示的にインクルードされなければなりません。panic は Patcher... ボタンを使って追加します。これによって、パッチで使用される任意のエクスターナルオブジェクトがコレクティブにインクルードされるようになります。同じように、MultiTrack というタイムラインファイルもインクルードされなければなりません。timeline オブジェクトによって使用されるアクションパッチは自動的にインクルードされます。

データファイルのあるフォルダ全体をインクルードしたい場合、Include Folder... ボタンをクリックし、表示されたダイアログボックスでフォルダを選択してインクルードすることができます。この場合、直接フォルダ内に置かれたファイルのみがインクルードされ、選択したフォルダの中にあるフォルダはインクルードされない点に注意して下さい。

3. コレクティブを作った後は、それを簡単に変更することはできません。そのため、実際に Build ボタンをクリックしてコレクティブを構成する前に、Save Script... ボタンをクリックしてスクリプトを別のテキストファイルとして保存しておきたいことがあるでしょう。こうしておくと、後になってコレクティブに含まれるパッチャーやファイルを変更した場合、つまりコレクティブのリビルドや修正が必要になる場合に、単に Open Script... をクリックしてオリジナルのスクリプトを開くことで、コレクティブのリビルドを手早く行なうことができます。

4. すべてのトップレベルパッチを追加し(これらはスクリプトの open 命令として表示されます)、必要なファイルやフォルダをすべてインクルードした後(これらはスクリプトのinclude、およびfolder 命令として表示されます)、コレクティブは完全なものになります。Build ボタンをクリックして、コレクティブに固有な名前をつけて下さい。

非Max ファイルの、コレクティブへの追加

コレクティブを作る際に、コレクティブスクリプトのダイアログの Include File... ボタンをクリックして、任意のタイプのファイル( Max 以外のアプリケーションで作られたものでも構いません)をインクルードすることができます。これによって、例えば、グラフィックスファイルをコレクティブに追加して、fpic オブジェクトで使用することが可能になります。コマンド "excludeexternals true" をコレクティブスクリプトの最初の行に追加すると、コレクティブからエクスターナルを除外することができる点に注意して下さい。これは、"open thispatcher" コマンドの前に置く必要があります。エクスターナルオブジェクトのインストールをコレクティブからではない方法で管理したい場合にこれを使います。コレクティブの中へいくつかの指定されたエクスターナルだけをインクルードする "include" コマンドと共にこれを使うことができます。VST プラグインをビルドする場合、そのエクスターナルは、include コマンドを使って明示的に追加を行なわない限り、常に除外されてしまうという点に注意して下さい。

コレクティブのテスト

コレクティブは完全なプログラムとして動作します。これは、正しい動作に必要な他のファイルを伴った、1つ、または複数の(トップレベル)Max パッチです。コレクティブを他のユーザの使用のために提供する前に、実際に完全なものかどうか、そして必須のファイルをインクルードするのを忘れていないかどうかを確認しなければなりません。これを行なうために最も良い方法は、File メニューの Open... でコレクティブを選ぶか、Macintosh ではファインダ、Windows では Windowsブラウザでコレクティブをダブルクリックして開くことです。

コレクティブのフォーマット

Macintosh では、コレクティブを保存する場合のポップアップメニューで、Max collective format あるいは、Old Format Collective を選ぶことができます。Old Format Collective を使う理由があるとすれば、Pluggo で使うプラグインをビルドする場合、または、Max の古いバージョンで使用したい場合のみです。しかし、古いバージョンとの互換性のためには、コレクティブに Max/MSP 4.6 に特有のエクスターナルオブジェクトを含めることができないという点に注意して下さい。これらは、Resourcerer のようなMacintosh のリソースエディタを使ってすべての mAxL リソースを削除することによって、手動で除外することができます。

「新しい」 Max のコレクティブフォーマットはクロスプラットフォームになっています。しかし、インクルードされるエクスターナルオブジェクトはクロスプラットフォームではありません。そのため、コレクティブが標準以外のエクスターナルを使っている場合、これらをプラットフォームごとの別ファイルとして提供しなければなりません。Macintosh で作成したコレクティブを Winndouws XP ユーザに提供したいときには、ファイル拡張子 .mxf を使うことを強く推奨します。そうでない場合、Windows XP ユーザがファイルを開けない可能性があります。

スタンドアロン・アプリケーションのビルド

「コレクティブ・エディタ」で Build ボタンをクリックすると、標準の Save As ダイアログが表示され、コレクティブの名前を入力して、ディスクに保存できるようになります。このダイアログの下の部分にフォーマットのためのメニューが表示されます。このメニューは、デフォルトでは Max コレクティブファイルを保存するように設定されていますが、パッチをスタンドアロン・アプリケーションとして保存しようとする場合には、このメニューから、Application を選択するだけで可能になります。Max は自動的にコレクティブと MaxMSP ランタイムアプリケーションを結合し、それを、Max も MaxMSP ランタイムも必要としないスタンドアロンアプリケーションとしての外観と機能を持った1 つのファイル( Windows の場合には、1 つのフォルダ)として保存するため、これを簡単に行なうことができます。Max フォルダに複数のバージョンの MaxMSP ランタイムがある場合、Max は ファイル名に "Runtime" という語を含んだ、最も最近の日時に作成されたアプリケーションを使用します。オーディオプラグインのビルドも、ドロップダウンメニューから Plug-in を選択するだけで全く同様に行なうことができます。

Windows のスタンドアロン・フォーマット

Windows のスタンドアロン・アプリケーションは、実際にはフォルダで、実行可能な MaxMSP Runtime に、パッチとファイルを含んだ .mxf コレクティブファイルを加えたものです。次のリストは、ファイルとフォルダの配置を示しています。

YourApplication [ folder ] YourApplication.exe [modified MaxRT.exe ? launch this to launch your app ] YourApplication.mxf [ new format collective containing your patches ] msvcr70.dll [ Microsoft C Runtime Library used by MaxRT.exe and externals ] support [ folder] ad [ folder containing MSP audio driver objects ] mididrivers [ folder containing Max midi driver objects ] MaxAPI.dll [ Max API for external objects ] MaxAudio.dll [ MSP library ] MaxQuicktime.dll [ Max QT interface ] YourApplication.rsr [ Mac style Resources for your application ] asintppc.dll [ Support DLL needed for Max ] asiport.rsr [ Support resources needed for Max ] asifont.map [ Support file needed for Max ]

Macintosh のスタンドアロン・フォーマット

Macintosh では、Max はユニバーサルバイナリなスタンドアロン・アプリケーションをビルドします。スタンドアロンはアプリケーションパッケージで、ファインダ上では 1 つのファイルのように見えますが、これもフォルダです。アイコンをダブルクリックすると、アプリケーションが起動します。パッケージ上で [Control] + クリックし、コンテキストメニューから Show Package を選ぶと、パッケージの中を見ることができます。Windows のスタンドアロンと同様、Contents/MacOS フォルダの中には、.mxf コレクティブ、ランタイムアプリケーション、support フォルダがあるのがわかるでしょう。

YourApplication.app [ note: the .app is not shown in the Finder ] Contents [ folder ] Frameworks [ folder ] ? needed for external object support Info.plist [ copied from your .plist if included in a collective ] YourApplication.mxf [ collective containing your patches ] MacOS [ folder ] YourApplication [ actually Max/MSP Runtime ] support [ folder ] ? audio and MIDI support filess Resources [ folder ] [ custom icon file goes here ]

開発者は、Max オブジェクトに対する sendappath メッセージの動作を記録しておきたい場合もあるでしょう。このメッセージは、MaxOS フォルダ内の実行ファイルではなく、アプリケーションバンドルのファイルパスを報告するものです。これは、一般的に開発者が第一に望んだものであるため、私たちはこれが問題を起こさないことを期待します。

標準のファイル保存ダイアログボックスを使ってプラグイン、コレクティブ、スタンドアロンに名前をつける場合、それぞれの出力タイプを選択するとファイル名の拡張子は自動的に変更されます。Mach-OVST プラグインは .vst、アプリケーションは .app で終わらなければなりません。また、コレクティブの名前を .mxf で終わるような名前にすることは、特にそのファイルを Windows 上で開きたいと思う場合には良い方法です。

スタンドアロンの中の .mxf ファイルのファイル名を変更しないで下さい。そうでないと、ランタイムが起動されたときにファイルがロードされなくなります。

スタンドアロンのカスタマイズ

オーバードライブ設定、アプリケーションアイコン、ユーザがトップレベルパッチを閉じることを可能にするかどうかといったような、スタンドアロン・アプリケーションのいくつかの機能をカスタマイズすることができます。これを行なうためのメカニズムは 2 つあります。第 1 に、スタンドアロン・アプリケーションのみに適用される、コレクティブ・スクリプトメッセージを追加する方法、第 2 に、特定のオプション設定を行なうためのスタンドアロン・オブジェクトをメインのトップレベルパッチに追加する方法です。

appsplash appsplash という語の後に、Macintosh では PICT、Windows では BMP ファイルのフルパス名を続けることによって、その画像をMax about ボックスの中でスプラッシュ・スクリーンとして使うことができます。
appicon appicon という語の後に、Windowsでは、プラットフォームに固有なアイコンファイル(Windows の icon リソース、または MacOS X の icns リソース)のフルパス名を続けることによって、アプリケーションで使用するアイコンを指定することができます。

アプリケーションで Javascript または Jitter を使っていない場合、application パッケージの中からMaxJSRef.framework や JitterAPI.framework を削除し、アプリケーションのダウンロードサイズを減らすことができます。この Frameworks フォルダの中の他の framework 項目を削除しないで下さい。

ユーザに対して、古いバージョンの Max からのエクスターナルオブジェクトのサポートをインストールするかどうかを尋ねるダイアログを見せないようにしたい場合、スタンドアロンの Resoures フォルダから、MaxMSPCFMSupport.pkg ファイルを取り除きます。

スタンドアロンのアイコンや他の Finder 関係のカスタマイズのために、スタンドアロン・アプリケーションは、スタンドアロンの中にある Contents フォルダの中の Info.plist ファイルと、Resource フォルダの .icns ファイルを使います。以前のバージョンでは、BNDL、FREF、icn# リソースを使っていました。Info.plist ファイルについて、および、.icns ファイルの作り方や使い方についてより詳しく学ぶためには、次の Apple ドキュメントが役に立つでしょう。

http://developer.apple.com/documentation/Carbon/Conceptual/DesktopIcons/ch13.html

http://developer.apple.com/documentation/MacOSX/Conceptual/BPRuntimeConfig
   /Articles/ConfigApplications.html

スタンドアロン・オブジェクトインスペクタ

他の設定をコントロールするためには、メインのトップレベルパッチにスタンドアロン・オブジェクトを追加し、そのインスペクタでパラメータを編集します。スタンドアロン・オブジェクトとその設定はパッチに保存されるため、スタンドアロン・アプリケーションの新しいバージョンを保存するたびに設定を行なう必要はありません。

次は、スタンドアロン・オブジェクトのインスペクタの中で行なうことができる様々な設定の概観です。

Application Creator Code は、Macintosh だけで使用する設定です。これは、ファインダがアプリケーションを他のもの(Max や MaxMSP ランタイムを含みます)から識別するために使用するキャラクタ ID を指定します。デフォルトのクリエータ ???? は一般的なファイルとアプリケーションに割り当てられています。これを、任意の 4 文字の組み合わせに変更することができますが、他のアプリケーションですでに使用されているものを選んでしまった場合には、そのクリエータを使っているアプリケーションのドキュメントをダブルクリックすると、スタンドアロン・アプリケーションが実行されてしまいます。例えば、クリエータに max2 を使った場合、Max ドキュメントをダブルクリックすると、Max の代わりにスタンドアロン・アプリケーションが起動してしまいます。

使用したキャラクタの組み合わせがユニークであることを保証したい場合、それを Apple の次の URL で登録する必要があります。

http://developer.apple.com/dev/cftype/

File Options セクションでは、スタンドアロン・アプリケーションがファイルとファイルシステムを扱う場合の状況をカスタマイズすることができます。

パッチのMax/MSP オブジェクトによって使用されるサポートファイルのいくつかがコレクティブそれ自身にインクルードされない場合、Search for Files Not in the Application's Collective オプションをチェックします(デフォルトでチェックされています)。このオプションを外すと、スタンドアロン・アプリケーションを作成する際に、すべての必要なファイルがコレクティブの中にインクルードされているかどうかを確認するために役に立つはずです。このオプションをオフにしてアプリケーションを作成すると、アプリケーションがロードしようとしたシーケンスファイルやcollファイルのようなファイルがない場合、見つからないファイルを探すためにコレクティブの外部を検索しないようになります。そのため、Search for Files Not in the Application's Collective のチェックを外してアプリケーションを作り、それを実行して、適切に動作するかどうかを見ることができます。アプリーケーションが必要なファイルを見つけることができない場合、それを表すエラーメッセージが表示され、スタンドアロン・アプリケーションをリビルドしなければならないことがわかるでしょう。

しかし、ある場合には、アプリケーションにコレクティブの外部にあるファイルを探させたいことがあるでしょう。例えば、アプリケーションのユーザによって提供される MIDI ファイルを探させたい場合があるかもしれません。この場合、当然、Search for Files Not in the Application's Collective オプションをオンにしておきます。この機能には、ネストされたフォルダの中を探す場合には、3 レベルの深さまでに制限されるという点に注意して下さい。

アプリケーションがコレクティブの外部にあるファイルを探す場合、その探索場所を Utilize Search Path in Preferences File オブションによってコントロールすることができます。このオプションがオンの場合(デフォルトではオンになっています)、アプリケーションはデフォルトのサーチパスの代わりに、Max Preferences ファイルの中に保存されているサーチパス設定を使います。

このフィールドに初期設定ファイルの名前を入力することによって、デフォルトの Max Preferences の代わりに、アプリケーション自身の初期設定ファイルを使用するように指示することができます。Utilize Search Path in Preferences File がチェックされていて、デフォルトの Max 4 Preferences 以外のファイル名が入力されている場合、アプリケーションは、最初に実行されたときに、独自の初期設定ファイルを ~/Library/Preferences ( ~ はホームディレクトリを表します)の中に作ります。それ以降は、アプリケーションはその初期設定ファイルを使って、Overdrive や All Windows Active のようなオプションの設定を復元します。

インスペクタの Options セクションでは、スタンドアロン・アプリケーションの、様々なユーザに関係したオプションを変更することができます。

Status Window Visible at Startup オプションのチェックが外されている場合、アプリケーションが開かれたとき、ステータスウィンドウ(標準のMax アプリケーションにおける Max ウィンドウと同じもの)は表示されません。このオプションのチェックを外すことは、アプリケーションに特別な外観(おそらく、明白に Max のようでない外観)を与える助けになります。このオプションはデフォルトでは使用可になっています。

通常、パッチ(またはコレクティブやスタンドアロン)がロードされている間、Macintosh では [Shift] + [Command] キー、Windows では [Shift] + [Control] キーを押し下げたままにしておくことによって、すべての loadbang オブジェクトを停止させ bang メッセージを送信しないようにすることができます。Prevent loadbang Defeating with Cmd-Shift オプションをチェックすることによって、この loadbang を無効にする機能を使用不可にすることができます(デフォルトでは、このオプションはオフになっています)。

Overdrive Enabled および All Windows Active Enabled オプションは、これらのメニューオプションをプリセットし、アプリケーションの動作の初期値として設定することができるようにします。デフォルトでは、これらは両方ともオフになっています。

User Can’t Close Toplevel Patcher Windows オプションをチェックした場合、トップレベルパッチャーのタイトルバーにはクローズボックスが表示されなくなり、トップレベルパッチャーがアプリケーションの最前面のウィンドウの状態のときには File メニューの Close コマンドが使用不可になります。ほとんどの場合、トップレベルパッチャーを閉じるとアプリケーションは使用できなくなるため、このオプションは、デフォルトではチェックされた状態になっています。

最後の 2 つのオプションは、すべてのオーディオと MIDI ドライバオブジェクトだけでなく、MIDI セットアップ と DSP ステータスウィンドウを見るために必要なファイルすべてをインクルードできるようにするものです。このオプションは、MIDI や オーディオに必要な可能性がある非Max ファイルはインクルードしません。例えば、Audio Support をチェックした場合でも、MSP Rewire ドライバはインクルードされません。このドライバはスタンドアロンのフォルダに属するものではありません。これを使いたい場合には、アプリケーションのユーザに対してドライバを正しい場所にコピーするように指示するか、これを行なう独自のインストーラをビルドしなければなりません。

Mac OS X 用のカスタムアイコン

スタンドアロン・アプリケーションでのカスタムアイコンの使用は以下のようなステップで行ないます。

  1. ファインダ上で、スタンドアロンを [Control] + クリックし、表示されるポップアップメニューから「パッケージの内容を表示」を選びます。
  2. アップル の Icon Composer ツールや他のアイコンファイル作成用アプリケーションで作成したアイコンファイルを、スタンドアロンの Resources フォルダの中に置きます。
  3. スタンドアロンの Contents フォルダの中にある Info.plist を、アップルのプロパティリスト・エディタやテキストエディタ(この場合、XML を直接編集します)を使って編集します。CFBundleIconFile エントリをMax.ics から追加したアイコンファイル名に変更します。

場合によっては、スタンドアロンのアイコンを表示させるために、一度ログアウトして、再びログインする必要があるかもしれません。

Windows 用のカスタムアイコンとスプラッシュスクリーン

スタンドアロン・アプリケーションでのカスタムアイコンの作成は以下のようなステップで行ないます。

  1. Windows の ".ico" フォーマットを使ってアイコンを作ります。
  2. コレクティブエディタを使って、コレクティブスクリプトに次のような構文を 1 行追加します。

    appicon ファイル名

    ヒント: "Include File" ボタンを使って、.ICO ファイルを選択し、"include" コマンドを "appicon" に変更することもできます。

スタンドアロン・アプリケーションのカスタムスプラッシュスクリーンの作成は、次のようなステップで行ないます。

  1. Windows の ".bmp" フォーマットを使ってスプラッシュスクリーンを作ります。

  2. コレクティブエディタを使って、コレクティブスクリプトに次のような構文を 1 行追加します。

    appsplash ファイル名

    ヒント: "Include File" ボタンを使って、 .bmp ファイルを選択し、"include" コマンドを "appsplash" に変更することもできます。

スタンドアロン・アプリケーションのサーチパス

スタンドアロンの開発者にとって、Max がファイルを探す場所の順序を知ることが重要なことがあるでしょう。探索の順序は、Max/MSPの編集可能なバージョンとは少し違っています。この情報は比較的高度なもので、スタンドアロン・アプリケーションを開発しないユーザにとっては、おそらくあまり興味のないことでしょう。

Mac OS X上では、Utilize Search Path オブションがクリックされている場合、スタンドアロンのサーチパスは次のようになります。

  1. スタンドアロン・アプリケーションを含むフォルダ(すなわち、Contents フォルダ、およびその中のすべてのサブフォルダ)にあるすべてのフォルダを追加します。
  2. Cycling'74 フォルダを追加します。アプリケーションと同じ場所に Cycling'74 フォルダがあれば、それを使います。存在しない場合には、/Library/Application Support/Cycling ’74 があれば、それを使います。

Windows XP 上では、Utilize Search Path オブションがクリックされている場合、スタンドアロンのサーチパスは次のようになります。

  1. アプリケーションフォルダ(すなわち、Application.exe が置かれているフォルダ)の中のすべてのフォルダを追加します。
  2. Cycling'74 フォルダを追加します。アプリケーションと同じ場所に Cycling'74 フォルダがあれば、それを使います。存在しない場合には、c:\Program Files\Common Files\Cycling '74\ があれば、それを使います。

Utilize Search Path がチェックされていない場合、スタンドアロン・アプリケーションのフォルダの内部にある support フォルダと、そのサブフォルダだけがサーチパスに追加されます

探索されるフォルダの順序は次のようになります。

  1. コレクティブファイル(および、任意の、他の開かれているコレクティブファイル )
  2. support フォルダ
  3. アプリケーションが含まれるフォルダ、およびそのサブフォルダ(オプション:Utilize Search Path がチェックされている場合)
  4. Cycling'74 フォルダ(オプション:Utilize Search Path がチェックされている場合)

Search for Files Not in the Application's Collective オブションは、Utilize Search Path オプションとは違います。これは、Max が開かれているコレクティブの中に存在しない任意のファイルを探索しないようにします。その中には support フォルダも含まれるため、オーディオまたはMIDI サポートのどちらかを使用している場合、Search for Missing Files のチェックを外すことができないことになります。このことは、現時点では、Search for Missing Files は、スタンドアロンでの有効性には限界があるということを意味しています。

前に述べた Search for Misssing Files の役割は、コレクティブにすべての必要なファイルをインクルードしたかどうかをテストするものでした。support フォルダの出現、および、それがオーディオと MIDI ファイルを含むことができる可能性によって、このテストの役割の大部分は Utilize Search Path オプションに取って代わられます。Utilize Search Path は、特に、Cycling'74 フォルダの中にスタンドアロン・アプリケーションによって必要とされるファイルがあるかどうかのチェックを可能にします。Utilize Search Path をオフにした後、Max ウィンドウに"no such object" や "can't find files" というエラーメッセージが表示された場合、必要な、すべてのサポートファイルを適切にインクルードしていないということがわかります。

パスの問題を選別するためのヒント:パッチのメッセージボックスの中にMax パスを入力しておくと、スタンドアロンの実行中に、それをクリックすることができるようになります。path メッセージは現在使用されているファイルパスを表示します。

参照

カプセル化 パッチはどの程度までのことを行なわなければならないか?
standalone スタンドアロン・アプリケーションのパラメータ設定