[総目次] [カテゴリ] [前]

SPRITE - [画像表示]

[次] [次カテゴリ] [索 引]

SPRITE

… スプライトの定義

書  式

SPRITE NO,PNO,MODE, X1,Y1, X2,Y2, V,W, MX,MY
  NO: スプライト番号(1-255)
  PNO: 親スプライト番号(1-255)
  MODE: 0-画面非表示、1-画面表示、5-拡大縮小/反転モード
  X1: 裏画面のX座標
      (表示する位置)
  Y1: 裏画面のY座標
      (表示する位置)
  X2: テクスチャ画面のX座標
      (画像切り取り開始位置)
  Y2: テクスチャ画面のY座標
      (画像切り取り開始位置)
   V: テクスチャ画面のスプライト横幅
      (画像切り取り幅)
   W: テクスチャ画面のスプライト縦幅
      (画像切り取り高)
  MX: 横方向拡大率
      (0〜1未満-縮小、1以上-拡大、
       マイナスの数値-反転)
  MY: 縦方向拡大率
      (0〜1未満-縮小、1以上-拡大、
       マイナスの数値-反転)

説  明

スプライトを定義します。スプライトは、テクスチャ画像から画像の一部分を切り取り、自由な位置で表示する機能です。
スプライトには1つ1つに番号がついています。スプライトが重なっている場合は、番号の若いものほど手前に表示されます。
また、純黒(RGB値が 0,0,0)は透明色として扱われ、後ろの画像(背景や重なっているスプライト)が透けて表示されます。

一度定義した値は、次回値を入れるまで保存されます。変更のないパラメータは省略すると、処理が高速化されます。

SPRITEを実行するだけでは、実際の画面には表示されません。全てのスプライト定義が終わってからREFRESHを実行すると、スプライトが表示されます。

スプライト画像の表示では、
1. テクスチャ画面に画像を読み込む(SETPAGE、JPEG/BITMAP)、
2. SPRITEで切り出して、裏画面に配置、
3. REFRESHで表画面に表示
という処理が行われています。

■ (テクスチャ)
SPRITE
■ (裏)
REFRESH
■ (表)


注意事項

このコマンドだけでは、スプライトは表示されません。REFRESHの実行後、実際に表示されます。
通常は全てのスプライトを配置してからREFRESHを実行してください(スプライトの重なり処理を正しく行うため)。

スプライト番号に自分の番号を設定すると、通常の方法で処理されます。違うスプライト番号を設定すると、親スプライトの座標からの相対座標で表示されます。

表示位置 (X1,Y1) は、スプライトの左上角の位置を表します。ただし、拡大縮小モード(MODEに5を指定)の場合、スプライトの中心点の位置を表します。


関連項目

REFRESHSETPAGEBITMAPJPEG


サンプル

REM 944BASIC 'スプライトデモ'
SETDIRECTORY 'F1:\944BASIC\'
SETPAGE 2
BITMAP "9B_REF.BMP",0,0
CLS

SPRITE 1,1,1, 110,150,0,16,48,48
REFRESH 20,60,20,60,200,200
KEYWAIT
SPRITE 1,1,1, 150,110
REFRESH 20,60,20,60,200,200
KEYWAIT


[総目次] [カテゴリ] [前]

SPRITE - [画像表示]

[次] [次カテゴリ] [索 引]