研究開発

「はじめてのVectorScript」と題して連載を始めるわけですが、本連載は「Vectorworksは持っているけどVectorScriptって何?」、「プログラミングって難しいんでしょ?」「アイデアはあるんだけど...」という人が「それ、VectorScriptでやれば簡単だよね」と言えるくらいになるのが目標です。

VectorworksはMacintosh版とWindows版とのマルチプラットホーム環境でありながらも、VectorScriptはOSを意識することのなくプログラミングが可能で、どちらでプログラミングしてもソースコードの変更なしでMacintosh、Windowsどちらでも実行が可能です。そしてVectorworksを持っていればいますぐにでも始められます。

ゲーム機の場合、DQ7(ソフト)で遊びたいという理由で3DS(ハード)を選ぶと思います。「このソフト(あなたが書いたスクリプト)を使いたいためにVectorworksを選びました」と言わせるようなプログラムを目指してがんばりましょう。自分のアイデアをプログラム化しブログで公開なんてことも夢ではありません。

第1章 Hello world!

いよいよプログラミングにはいっていくわけですが、VectorScriptはPascal言語がベースになっていますので、
Pascalの言語仕様を覚えなくてはなりません。これを覚えるとコンパイルエラーがでなくなります。
ではまず、Pascalの基本的な記述について説明します。下記のプログラム見てください。

PROCEDURE Sample01;
BEGIN
	Message( 'Hello, world!' );
END;
Run( Sample01 );

一番最初にプログラムに名前をつけます。PROCEDURE(プロシジャー)とは手続きといって、半角スペースのあとに書かれている「Sample01」をプログラム名とする手続きですを意味します。
続いて、BEGINと書かれていますが、ここからプログラムの実行部分です。ENDと書かれているところまでがSample01のメインプログラムにあたります。 プログラムは1行だけです。これはVectorScriptで用意されている手続きMessageを呼んでいるだけです。手続きMessageは引数として渡されたものを、メッセージダイアログ上に表示する機能を持っています。Hello, world!を表示してくださいとVectorworksお願いしているわけです。
最後にRunと書いてありますが、これも手続きで引数に渡された名前のプログラムを実行する機能を持っています。この一文がないとプログラムは動きません。

さて、なんとなくわかったところで実行してみましょう。
プログラムを書いて実行するにはVectorScriptエディタを開きます。
「リソースブラウザ」から新規にVectorScript...を選ぶか、

「リソースブラウザ」の白い所をダブルクリックし

「新規リソース作成」ダイアログのVectorScriptコマンドを選択します。

パレット名を付けてくださいといってきますので、とりあえずそのままOKし、

次に名前をつけてといってくるのでHelloとします。

すると、VectorScriptエディタが現れます。

プログラムを書いてみましょう。文字のサイズはTボタンを押して変更します。

エラーチェックは歯車のようなアイコンボタンを押してください。

コンパイルに成功したら、OKボタンを押してエディタを閉じます。パレット-1に「Hello」という名称でプログラムが並びます。ダブルクリックでプログラム実行です。

「VectorScriptメッセージ」に「Hello, world!」と描かれていれば完成です。

今度は、手続きMessageを手続きCreateTextに変えてみましょう。手続きCreateTextは引数として渡されたものを、用紙上に文字図形として描画します。 手続きTextOriginは続けて実行される手続CreateTextの描く座標を引数で指定します。
PROCEDURE Sample02;
BEGIN
	TextOrigin( 0.0, 0.0 );
	CreateText( 'Hello, world!' );
END;
Run( Sample02 );
実行したらHello, world!とアクティブなレイヤ上に描かれたでしょうか?

さて、ここまでに出てきた、PROCEDURE、BEGIN、ENDは予約語といって、プログラム名やあとででてくる変数名などに使ってはいけません。 そのほかにも、
ALLOCATE、AND、ARRAY、BOOLEAN、CASE、CHAR、CONST、DIV、DO、DOWNTO、DYNARRAY、ELSE、FALSE、FOR、FUNCTION、GOTO、HANDLE、IF、INTEGER、LABEL、LONGINT、MOD、NIL、NOT、OF、OR、OTHERWISE、PI、REAL、REPEAT、STRING、STRUCTURE、THEN、TO、TRUE、TYPE、UNTIL、VAR、VECTOR、WHILE
などがあります。また、C言語などと違い、大文字小文字の区別はありません。

VectorScriptに関するお問い合わせ

VectorScriptに関するお問合せは、以下からお問い合せください。

エーアンドエー株式会社 研究開発室

email:develop@aanda.co.jp