BlueMSX:GWでアニメをプロジェクト

ドローソフトGW-[FULLMSX ドットエディタ(DE)]

FULLMSX BLOG:http://blog.goo.ne.jp/u-yans/

FULLMSX:GW

この画面はGWの画面です。パースを描いたり、キャラクタを描くことができます。

GW-DEの特別パックはMSX2のSCREEN5を使った
ドローソフト(GW)とドットエディタ(DE)が含まれるパックです。
GWはマウスを使ってフリーハンドで描くアプリでDEはドット(点)で描くアプリです。

ここではGWの説明をしています。2021/01/02更新

操作方法 - コマンドリスト - コマンド説明 ― コマンドの拡張

■操作方法

マウスまたはカーソルで描き、数字やコマンドはキーボードで入力します。

BlueMSXまたは1chipMSXで使用するキー
FULLMSX:GWDE-keys

DOS/Vキーボードでは、このような配列になっています。
ファンクションキーのF6~F10まではシフトキーを押しながら使用します。
Shift+F1がF6でロード、Shift+F5がF10でセーブになっています。

F1:マウス/カーソル F2:拡大(ルーペ)、始点指定 F3:終点指定
F6:ロード F7:パレットファイル名 F10:セーブ

ESC:コマンド入力

最初にF1キーを押してマウスモードにします。

-- BlueMSXの場合 --
BlueMSXであればPCマウスをMSXマウスのように活用することができます。
ツール-コントローラ/キーボード編集からJoystick1を選びマウスを選択しましょう。
F8キーで切り替えできます。

背景の黄色を指定
まず、黄色を選び、ESCキーで描画プロンプトに入ります。
描画プロンプトはポインタで得た情報から命令を実行させることができます。
ここで、CLSと入力することで選択された色で画面を消します。

FULLMSX:CLS

塗りつぶす
灰色を平行四辺形で囲みます。
白の色を選び、塗りつぶしたいところで、ESCキーを押します。
PAINT 14と入力します。
周辺が白色になります。
ここで色の変更の確認が出ます。
Are you sure? OK:[Enter]
Enterキーを押してください。
FULLMSX:KEIKOU

もし、思ったとおりにならない場合は何かキーを押します。
大きな変更になった場合に表示されるメッセージです。

こんな感じに使っていきます。


FULLMSX:GW16e

■GWの概要

GWはロゴ、イラストなど輪郭を描くツールです。
下書きからペン入れまでを行うことができます。
例えば下書きのペンを緑色にして、
緑色の線からペン入れのペンの白をなぞっていきます。
もちろん、緑色の下書きをしたものは消すことができます。
15色の重ねた下書きを同時に消すことができます。

最新版、SCREEN8バージョンは水色で変更点をまとめてみました。

■コマンドリスト(ver1.7M)

CIRCLE 指定された点から円を描きます

TURN_Right
TURN_Left  キャンバスを90度左右に回転

OVAL 楕円を描く、分割点を出す(SEC_HAND)。実行後に指定可能

CLS 指定された色で画面を消す

PAINT 指定された座標から塗りつぶす

RGB カラーコードの色を変えるRGBコントローラを起動

TAIL_On
TAIL_Off 色を複数、偶数ドットごと変えタイルモード

BSAVE MSXビットマップ形式の画像で保存

LINE 指定された点を線で結ぶ

ERASE_On
ERASE_Off  消しゴムモード

END 終了します


■コマンド説明

・2点座標の計測と表示

画像の右上にある数値はX,Yの2点の座標です。
この座標を取得することで、この指定点からの描画ができます。
画像の表示は旧バージョンですが、
最新バージョンでは2点目の座標が
1点目からX、Y座標が計算された相対座標表示になっています。
これによって、図形の大きさを計算することが可能になります。
正確な図の作成もできます。

・ルーペ(拡大鏡)

ルーペをクリックして、拡大したい部分をクリックすると
メッシュ画面が現れます。これがルーペ機能です。
ルーペではカーソルで操作してください。
選択した色をプロットすることができます。

新バージョンでは[Enter]キーを押すと色を取得します。
今までルーペを抜けて色設定する手間がなくなりました。
正確な点を指定する場合にも拡大表示されます。

・点を打つ

[SPACE]または左クリックで打つことができます。
点を基準にしたい場合などに使うことができます。

・マウス操作の改良

[F1]キ-でマウスモードに入ります。
 今までのMSXBASICのマウス操作は小さな動きで
細部まで描きにくい部分がありました。
 
新バージョンではマウス/キーボードの交互切り替え(トグルスイッチ)
方式を採用しました。[F1]キーをおすごとにモードが変わります。
キーボードで計測移動、マウスで広範囲移動ができるようにしました。


・直線描画コマンド

[F2]で始点指定、[F3]で終点指定し、LINEコマンドを入力します。

構図によっては直線を使うことがあります。
マウスではできない部分を直線でつなぎ、
鋭利な剣の輪郭線などを引くことができます。
最新バージョンでは2点目の座標は1点目から
X、Y座標が計算された相対座標表示になっています。
これによって、図形の大きさを計算することが可能になります。
正確な図の作成もできます。

・ピンポイントカラー表示と座標表示

[F2]キーを押すとこの機能も機能します。
ポインタ部分のドットの色を表示します。
さらに座標表示もできます。
F2キーを押すとピンポイントルーペ(拡大鏡)
になります。ドット編集は直接できません。
なお、割り込み処理を使っている為に

割り込み禁止状態で
[F2]キーを押しても動作しない場合があります。
何度か押してみてください。

割り込み禁止状態とは?
実行中プログラムが中途で
割り込みプログラムに入らないようにする為
のものです。
特に座標表示しているプログラムで表示のための座標指定部分と
F2キーを押した直後から座標が表示されるまでの間の2つです。

・画像を開く、画像の保存

[F6]キーで画像を開きます。
190190以上の規格外のサイズを読み込むと
表示が消えます。サイズを変えたい場合は
[F10]キーで画像を保存します。
この保存をすることで190190のサイズに変わります。
ただ、この保存によって読み込んだ画像が
小さくなることに注意してください。

・図形描画プロンプト
ESCキーで拡張コマンドに入ることができます。
図形描画プロンプトは
ポインタで得た情報から命令を実行させることができます。

プロンプトを抜けるには[Enter]キーを押してください。

座標へ移動する

<X座標>,<Y座標>

プロンプトで100,100と入力すると
ポインタを100,100に移動させます。

 ・外部アプリの起動

ENDは保存をしないで終了します。
MENUは保存をしてメニュープログラムへ進みます。

・円または楕円を描画

CIRCLEまたはOVAL

構図によっては円を使うことがあります。
マウスではできない円を
半径で指定したり、縦横比で楕円を描くことができます。
X=100,Y=100から半径30の円を白で描きます。
CIRCLE 100,100,30,15
::ポインタの位置を中心にする場合は
F2キーを押してからプロンプトに入ってください。
また、中心に点を打つことで読み取り点を作ることができます。

 新バージョンではOVAL機能を統合した
CIRCLEウイザード機能をつかうことができます。
描きたい円の半径、比率などがわからない場合に
数値を入れる必要なく、CIRCLEのみ入力すれば機能します。
 この機能を使うとキーを押すごとに
半径10ごとに円が表示されます。描きたい近い円を選んでください。
次に細かな円の大きさを決めます。
 OVAL機能では
長円形、楕円を描くもので、
横の半径と縦の半径の比率が変わっていきます。
 SECHAND機能では秒針のように点を打ちます。
このプログラム時計プログラムのモジュールを応用したものです。
正三角形、正方形、正六角形、正八角形、
12分割、24分割、60分割、100分率などの点をつくることができます。

くわしくはブログをご覧ください。

コマンド:TURN_Left,TURN_Right

画面全体を左右に回転させます。
描きにくいラインを補助するための機能です。
全てのドットを置き換えるのでかなりの時間がかかります。
BlueMSX 10倍速モード推奨です。
実機では時間がおよそ10~20分程度かかります。

コマンド:CLS

画面全体を選択した色で塗りつぶします。

コマンド: PAINT

選択した色で塗りつぶします。
黒の境界線まで塗りつぶす場合はPAINT 1と指定します。

コマンド: RGB

色を変更したり、色を隠したりすることができます。
背景が黒の場合はRGB 000とすることで、
パレットの色を隠すことができます。
ラフの下書きの下書きをしたい時に便利です。

▼エラーで止まった場合の画像の保存

エラーでテキスト画面になった場合は次の方法で保存できます。
DEとGW共通の方法です。旧バージョンは除きます。
例えばTEST.CP5というファイル名で保存する。
SCREEN5:SETPAGE1,1:COPY(0,0)-(255,211)TO"TEST.CP5"

付録:コマンドの拡張

 配布されたプログラム以外のオリジナルに作ったプログラムを拡張することができます。
テストプログラムはSCREEN5の(0,0)-(190,190)の範囲で動作するものであればOKですが、
デバッグ時は変数の影響を受ける場合があります。動作する変数が重ならないようにしてください。

GW MSX 外部コマンド 拡張

プログラムはこのように拡張することができます。
次のような構文を入れます。

IF INSTR(II$,<コマンド名>)GOTO 拡張ルーチンの行