[前へ] [目次へ] [次へ]

DRAnimateAutoTileBitmap (ネイティブクラス)


このクラスはアニメーションオートタイル画像を描画するDRを扱うクラスです。
アニメーションオートタイルは4*2枚のチップを分解合成して256種類のチップを表示します。
素材画像はタイルごとに垂直に並べ、アニメーションは水平に並べます。
ドローリソースとしての描画時には横軸に4096枚分のチップがあるように扱われます。
(256枚分以降はひとつ右のタイル画像領域を組み込みます)

横軸に配置されるオートタイルは周囲8マスの同じグループのオートタイルが配置されている部分を1、
無関係のタイルが配置されている部分を0として、 (0x1<<方向ID) でOR結合したものです。
つまり、上下に同じタイルがある場合 0x11 、左と左上に同じタイルがある場合 0xC0 のタイルを参照します。

DR系クラスは描画に必要な情報を保持するクラスで、
INativeDrawResource での描画に対応したクラスを介して描画されます。
このクラスのインスタンスが消滅した時、
そのインスタンスへのリンクは強制的に解除されます。
描画に使用しているDRインスタンスを消滅させないようにしてください。

一番簡単にDRを画面に表示するには DRWindow クラスを使用します。

●継承

   このクラスは継承をしていません。

●インターフェイスとインターフェイスメソッド

   implements INativeDrawResource
          (C++レベルキャスト)IFGESDrawResource


●クラスメソッド

   このクラスはクラスメソッドを持っていません。

●クラスメンバメソッド

名前概要
public設定メソッド SetAnimateAutoTileBitmapアニメーションオートタイルを設定します
public設定メソッド SetDrawMode描画モードを設定します
public設定メソッド SetAlpha透過度を設定します
public設定メソッド SetTone色変換を設定します
public設定メソッド SetSrcArea描画内容の読み取り元を再設定します
public操作メソッド ShiftSrcXY描画内容の読み取り元をずらします
public取得メソッドconst GetTileSizeタイルサイズを取得します
public取得メソッドconst GetAnimationLengthアニメーションの長さを取得します

●クラス共有変数

   このクラスはクラス共有変数を持っていません。

●インスタンス変数

   このクラスはインスタンス変数を持っていません。


●C++レベル追加情報

クラスID: FGES_CLASSID_DRANIMATEAUTOTILEBITMAP
クラス名: FGES_DRAnimateAutoTileBitmap



DRAnimateAutoTileBitmap::SetAnimateAutoTileBitmap

public void SetAnimateAutoTileBitmap( INativeInteger scenecnt, INativeBitmap bitmap,
             INativeInteger frametiming, INativeInteger x, INativeInteger y,
             INativeInteger tile_width, INativeInteger tile_height,
             INativeInteger? drawmode=NULL, INativeInteger? alv=NULL,
             INativeInteger? tone_color=NULL, INativeInteger? tone_rpow=NULL,
             INativeInteger? tone_gpow=NULL, INativeInteger? tone_bpow=NULL,
             INativeInteger? loop=NULL, INativeInteger? start_sceneid=NULL)


   このオブジェクトが描画するアニメーションオートタイルを設定します。
   アニメーションオートタイルは左から右に向かってアニメーションを配置します。
   指定した座標からシーン数分 tile_width*4 ずつ右にずらしながら設定され、
   frametiming フレーム経過する毎にシーンが切り替わり、
   最後のシーンまで描画した後は loop の指定によって動作が決定されます。
   垂直方向は tile_height*2 を一枚として扱います。
   
   frametiming に32768以上の値を指定した場合、タイミングリストのIDとして解釈します。
   
   このメソッドは指定されたビットマップオブジェクトに対してビットマップ共有を作成します。

INativeInteger scenecnt :設定するシーン数
INativeBitmap bitmap :描画に使用する画像
INativeInteger frametiming :各シーンを描画するフレーム数か、タイミングリストのID
INativeInteger x :1枚目の描画に使用する画像領域の左端座標
INativeInteger y :1枚目の描画に使用する画像領域の上端座標
INativeInteger tile_width :タイル一枚分の描画に使用する画像領域の横幅
INativeInteger tile_height :タイル一枚分の描画に使用する画像領域の縦幅
INativeInteger? drawmode=NULL :描画方法。以下とオプションのOR結合。
識別名内容
DRBitmap::COPY画像の色と透過度で上書きします(デフォルト)
DRBitmap::COPYC画像の色のみを上書きします
DRBitmap::ALPHA画像を透過描画します
DRBitmap::BLEND画像を半透明描画します
DRBitmap::LAYER画像をレイヤー描画します
DRBitmap::BACK画像を背後に描画します
DRBitmap::ALPHABLEND画像を透過半透明描画します
DRBitmap::LAYERBLEND画像をレイヤー半透明描画します
DRBitmap::BACKBLEND画像を背後に半透明描画します
DRBitmap::MIXALPHA画像を透過合成します
DRBitmap::MIXBLEND画像を半透明合成します
DRBitmap::MIXLAYER画像をレイヤー合成します
DRBitmap::MIXBACK画像を背後に合成します
DRBitmap::MIXALPHABLEND画像を透過半透明合成します
DRBitmap::MIXLAYERBLEND画像をレイヤー半透明合成します
DRBitmap::MIXBACKBLEND画像を背後に半透明合成します
DRBitmap::COPYA画像をアルファコピーします
DRBitmap::MULA画像をアルファ乗算します
DRBitmap::REVMULA画像をアルファ逆乗算します
DRBitmap::ADDA画像をアルファ加算します
DRBitmap::SUBA画像をアルファ減算します
DRBitmap::FILLA画像をアルファ設定します
DRBitmap::BLENDALPHA画像をアルファのみブレンドします
DRBitmap::COPYTONE画像を色変換して上書きします
DRBitmap::TONE画像を色変換して色のみに描画します
DRBitmap::ALPHATONE画像を色変換して透過描画します
DRBitmap::LAYERTONE画像を色変換してレイヤー描画します
DRBitmap::BACKTONE画像を色変換して背後に描画します
DRBitmap::MIXTONE画像を色変換して合成します
DRBitmap::MIXALPHATONE画像を色変換して透過合成します
DRBitmap::MIXLAYERTONE画像を色変換してレイヤー合成します
DRBitmap::MIXBACKTONE画像を色変換して背後に合成します
DRBitmap::MULC画像を色のみ乗算します
DRBitmap::REVMULC画像を色のみ逆乗算します
DRBitmap::ADDC画像を色のみ加算します
DRBitmap::SUBC画像を色のみ減算します
DRBitmap::SCREEN画像をスクリーン描画します
DRBitmap::OVERLAY画像をオーバーレイ描画します
DRBitmap::HARDLIGHT画像をハードライト描画します
DRBitmap::MULBLENDC画像を色のみ半透明乗算します
DRBitmap::ADDBLENDC画像を色のみ半透明加算します
DRBitmap::SUBBLENDC画像を色のみ半透明減算します
DRBitmap::SCREENBLEND画像を半透明スクリーン描画します
DRBitmap::OVERLAYBLEND画像を半透明オーバーレイ描画します
DRBitmap::HARDLIGHTBLEND画像を半透明ハードライト描画します
DRBitmap::MUL画像を乗算します
DRBitmap::REVMUL画像を逆乗算します
DRBitmap::ADD画像を加算します
DRBitmap::SUB画像を減算します
DRBitmap::MIXSCREEN画像をスクリーン合成します
DRBitmap::MIXOVERLAY画像をオーバーレイ合成します
DRBitmap::MIXHARDLIGHT画像をハードライト合成します
DRBitmap::MULBLEND画像を半透明乗算します
DRBitmap::ADDBLEND画像を半透明加算します
DRBitmap::SUBBLEND画像を半透明減算します
DRBitmap::MIXSCREENBLEND画像を半透明スクリーン合成します
DRBitmap::MIXOVERLAYBLEND画像を半透明オーバーレイ合成します
DRBitmap::MIXHARDLIGHTBLEND画像を半透明ハードライト合成します
オプション:これらのフラグは同時使用できます。
識別名内容
DRBitmap::DM_HMIRROR左右反転
DRBitmap::DM_VMIRROR上下反転
INativeInteger? alv=NULL :半透明描画時の透過度
INativeInteger? tone_color=NULL :色変換する時の色
INativeInteger? tone_rpow=NULL :色変換する時の赤影響力(0〜256)
INativeInteger? tone_gpow=NULL :色変換する時の緑影響力(0〜256)
INativeInteger? tone_bpow=NULL :色変換する時の青影響力(0〜256)
INativeInteger? loop=NULL :アニメーションのループモードを指定します。
識別名動作
0最後のシーンの描画時間が経過すると非表示になります。
DRAnimateBitmap::ROTATION最後のシーンの描画時間が経過すると最初のシーンからループ再生します。(デフォルト)
DRAnimateBitmap::ROUNDTRIP最後のシーンの描画時間が経過すると逆再生し、最初のシーンまで戻るとループします。
DRAnimateBitmap::ONEPLAY最後のシーンに到達すると以降最後のシーンを描画し続けます。
DRAnimateBitmap::ONEROUND最後のシーンの描画時間が経過すると逆再生し、最初のシーンまで戻ると以降最初のシーンを描画し続けます。
INativeInteger? start_sceneid=NULL :再生開始するシーンIDを指定します。
      空参照を指定した場合は0として扱います。

先頭へ


DRAnimateAutoTileBitmap::SetDrawMode

public void SetDrawMode( INativeInteger drawmode)

   このドローリソースの描画方法を設定します。
   
INativeInteger drawmode :設定する描画方法。以下のいずれかとオプションのOR結合。
識別名内容
DRBitmap::COPY画像の色と透過度で上書きします
DRBitmap::COPYC画像の色のみを上書きします
DRBitmap::ALPHA画像を透過描画します
DRBitmap::BLEND画像を半透明描画します
DRBitmap::LAYER画像をレイヤー描画します
DRBitmap::BACK画像を背後に描画します
DRBitmap::ALPHABLEND画像を透過半透明描画します
DRBitmap::LAYERBLEND画像をレイヤー半透明描画します
DRBitmap::BACKBLEND画像を背後に半透明描画します
DRBitmap::MIXALPHA画像を透過合成します
DRBitmap::MIXBLEND画像を半透明合成します
DRBitmap::MIXLAYER画像をレイヤー合成します
DRBitmap::MIXBACK画像を背後に合成します
DRBitmap::MIXALPHABLEND画像を透過半透明合成します
DRBitmap::MIXLAYERBLEND画像をレイヤー半透明合成します
DRBitmap::MIXBACKBLEND画像を背後に半透明合成します
DRBitmap::COPYA画像をアルファコピーします
DRBitmap::MULA画像をアルファ乗算します
DRBitmap::REVMULA画像をアルファ逆乗算します
DRBitmap::ADDA画像をアルファ加算します
DRBitmap::SUBA画像をアルファ減算します
DRBitmap::FILLA画像をアルファ設定します
DRBitmap::BLENDALPHA画像をアルファのみブレンドします
DRBitmap::COPYTONE画像を色変換して上書きします
DRBitmap::TONE画像を色変換して色のみに描画します
DRBitmap::ALPHATONE画像を色変換して透過描画します
DRBitmap::LAYERTONE画像を色変換してレイヤー描画します
DRBitmap::BACKTONE画像を色変換して背後に描画します
DRBitmap::MIXTONE画像を色変換して合成します
DRBitmap::MIXALPHATONE画像を色変換して透過合成します
DRBitmap::MIXLAYERTONE画像を色変換してレイヤー合成します
DRBitmap::MIXBACKTONE画像を色変換して背後に合成します
DRBitmap::MULC画像を色のみ乗算します
DRBitmap::REVMULC画像を色のみ逆乗算します
DRBitmap::ADDC画像を色のみ加算します
DRBitmap::SUBC画像を色のみ減算します
DRBitmap::SCREEN画像をスクリーン描画します
DRBitmap::OVERLAY画像をオーバーレイ描画します
DRBitmap::HARDLIGHT画像をハードライト描画します
DRBitmap::MULBLENDC画像を色のみ半透明乗算します
DRBitmap::ADDBLENDC画像を色のみ半透明加算します
DRBitmap::SUBBLENDC画像を色のみ半透明減算します
DRBitmap::SCREENBLEND画像を半透明スクリーン描画します
DRBitmap::OVERLAYBLEND画像を半透明オーバーレイ描画します
DRBitmap::HARDLIGHTBLEND画像を半透明ハードライト描画します
DRBitmap::MUL画像を乗算します
DRBitmap::REVMUL画像を逆乗算します
DRBitmap::ADD画像を加算します
DRBitmap::SUB画像を減算します
DRBitmap::MIXSCREEN画像をスクリーン合成します
DRBitmap::MIXOVERLAY画像をオーバーレイ合成します
DRBitmap::MIXHARDLIGHT画像をハードライト合成します
DRBitmap::MULBLEND画像を半透明乗算します
DRBitmap::ADDBLEND画像を半透明加算します
DRBitmap::SUBBLEND画像を半透明減算します
DRBitmap::MIXSCREENBLEND画像を半透明スクリーン合成します
DRBitmap::MIXOVERLAYBLEND画像を半透明オーバーレイ合成します
DRBitmap::MIXHARDLIGHTBLEND画像を半透明ハードライト合成します
オプション:これらのフラグは同時使用できます。
識別名内容
DRBitmap::DM_HMIRROR左右反転
DRBitmap::DM_VMIRROR上下反転

先頭へ


DRAnimateAutoTileBitmap::SetAlpha

public void SetAlpha( INativeInteger alv)

   このドローリソースを半透明描画する場合の透過度を設定します。
   現在の描画モードが透過度を必要としない場合、設定はされますが表面上の変化はありません。
   
INativeInteger alv :設定する透過度(0〜255)

先頭へ


DRAnimateAutoTileBitmap::SetTone

public void SetTone( INativeInteger tone_color,
             INativeInteger tone_rpow, INativeInteger tone_gpow, INativeInteger tone_bpow)

   
   このドローリソースを色変換描画する場合の色を設定します。
   現在の描画モードが色変換を必要としない場合、設定はされますが表面上の変化はありません。
   
INativeInteger tone_color :色変換に使う色
INativeInteger tone_rpow :色変換する時の赤影響力(0〜256)
INativeInteger tone_gpow :色変換する時の緑影響力(0〜256)
INativeInteger tone_bpow :色変換する時の青影響力(0〜256)

先頭へ


DRAnimateAutoTileBitmap::SetSrcArea

public void SetSrcArea( INativeInteger? x, INativeInteger? y,
             INativeInteger? width=NULL, INativeInteger? height=NULL)


   このドローリソースを描画する場合に使用する画像の読み取り元座標を再設定します。
   
INativeInteger? x :1枚目の描画に使用する画像領域の左端座標。
      空参照を指定した場合、現在の値を維持します。
INativeInteger? y :1枚目の描画に使用する画像領域の上端座標。
      空参照を指定した場合、現在の値を維持します。
INativeInteger? width=NULL :タイル一枚分の描画に使用する画像領域の横幅。
      空参照を指定した場合、現在の値を維持します。
INativeInteger? height=NULL :タイル一枚分の描画に使用する画像領域の縦幅。
      空参照を指定した場合、現在の値を維持します。

先頭へ


DRAnimateAutoTileBitmap::ShiftSrcXY

public void ShiftSrcXY( INativeInteger x, INativeInteger y)

   このドローリソースを描画する場合に使用する画像の読み取り元座標をずらします。
   
INativeInteger x :X軸の読み取り元移動量(ピクセル単位)
INativeInteger y :Y軸の読み取り元移動量(ピクセル単位)

先頭へ


DRAnimateAutoTileBitmap::GetTileSize

public Bool GetTileSize(editable INativeInteger? width,editable INativeInteger? height)const

   現在設定されているタイルサイズを取得します。

戻り値:取得に成功すると真を返します。

editable INativeInteger? width :[出力]タイルの横幅を出力するオブジェクト。
      空参照を指定した場合、無視します。
editable INativeInteger? height :[出力]タイルの縦幅を出力するオブジェクト。
      空参照を指定した場合、無視します。

先頭へ


DRAnimateAutoTileBitmap::GetAnimationLength

public Integer GetAnimationLength()const

   現在の設定でのアニメーションの長さを取得します。

戻り値:現在の設定でのアニメーションの長さを返します。

先頭へ


[前へ] [目次へ] [次へ]

最終更新 2023/09/11