IMW3の仕様
変数
変数はすべてグローバル変数です。グローバル変数とは、プログラムの中のどこでも値の参照、代入ができるタイプのもので、便利である反面、プログラムが長くなると、値がどこでどうなっているのか、分かりにくくなってしまう事があります。できるだけ区別しやすい変数名をつけることで解決してください。
変数の使用数は512個まで可能で、512個で不足の場合は配列変数を利用します。配列変数はサイズとは無関係に使用数1個として扱われます。
配列変数のサイズは1個につき 65535 まで可能で、Data コマンドで宣言するときに
必要なメモリーを確保しています。
宣言した配列変数は、
n = name(3,8) ;
のように使用します。
変数や配列変数は、そのままで小数を扱えます。IMW3内部で変数データは8バイトデータ(double型)で処理しています。
予約変数
予約変数はIMW3が自動的に値をセットしている変数で、ユーザーは自由にどこでも
値を参照できます。
参照 予約変数の一覧
演算
演算子は、加、減、乗、除、剰余( + − * / % )が
あります。演算の優先順位については、一般的な数学や
プログラミング言語と同等です。
算術関数には、三角関数と平方根を求める
関数などがあります。
注意 演算子と−符号がつながらないように記述してください。
悪い例: n = s * -5 ; // * と - がつながっている
良い例: n = s *(-5) ; または n = -5 * s ;
カラーパレット
IMW3は実行時に0番から15番まで16色のパレットを準備し、標準的な色を
設定しています。
この16色のパレットは、2次元のグラフィックコマンドや文字列表示コマンドでの
描画色の指定に使います。3次元キャラクタを描画するコマンドでは使われません。

パレット番号に対応する色は SetPal コマンドによりプログラムの
なかで自由に設定できます。
グラフィックコマンド(2次元)でパレット番号の値を「−1」とすると透過色で
塗りつぶします。(輪郭のみが描かれる)
描画スクリーン指定
グラフィック、文字列などを描画するコマンドでは描画するスクリーンを数値で指定します。
スクリーン番号「0」は実行ウィンドウ、「1〜8」は裏画面、「-1」を指定するとダイアログボックスになります。
裏画面を準備していない状態で「1〜8」を指定するとエラーを出します。ダイアログボックスが開いていない状態で「-1」を指定してもエラーを出します。
コントロール
コントロールとは、プッシュボタン、エディット、リスト、などをさします。
CreateControl コマンドにより作成し、利用することが
できます。
コントロールのタイトル文字列と認識文字列の文字数は32文字(全角で16文字)まで、
コントロールの使用数は256個までです。
メニュー
メニューは16個まで、各メニューに設定するポップアップメニューは各16個まで、
メニュー名、ポップアップメニュー名のタイトル文字数と認識文字列の文字数は
32文字(全角で16文字)までです。
3Dグラフィック
座標は右手座標です。3Dパック(3Dキャラクタ)は256個
まで使用できます。
詳細はグラフィック(3次元)についてを参照してください。
サウンドデータ
WAVEファイルとMIDIファイルの再生が可能です。
内部にWAVEデータ用のバッファを作成して、WAVEデータ(音データ)の編集、
再生、保存が可能です。
WAVEバッファは32個まで確保でき、オーディオ形式は
「 PCM 22.050kHz 8ビットモノラル 」です。
ビデオファイルの再生
ビデオ再生コマンドにより主なビデオファイルの再生・制御ができます。
複数のビデオファイルの同時再生はできません。
再生可能なファイル形式は下記になります(全ての確認はできていません)
*.mp4 *.wmv *.mov *.avi *.asf *.wav *.mp3 *.wma
*.3g2 *.3gp *.3gp2 *.3gpp *.aac *.adts *.m4a *.m4v *.sami *.smi
カメラ制御
カメラ制御コマンドによりカメラ画像の表示ができます。
複数台のカメラ画像を切替えられますが、同時に複数の表示はできません。
カメラは一般的なUSBカメラやノートPCなどの内臓カメラに対応しています。(全ての確認はできていません)
データの破棄について
IMW3には、メモリーなどを確保するコマンドがいくつかあります。一般的なプログラミング言語では、確保したものは必ず破棄していますが、IMW3では内部で自動的に破棄を行っているため、特に破棄について意識する必要はありません。