Int32




Sprite.Drawメソッドの引数は下のようになっている(C#)

public void Draw(

Texture srcTexture,

Rectangle srcRectangle,

Vector3 center,

Vector3 position,

int color

);

最後のcolorはint型で指定し、掛け合わせる色とα値を指定する。ARGB:8888であるので、そのまま表示したいときは0xFFFFFFFFを指定する、とヘルプにも書いてあるのだけれど。

Delphiの場合。

D3DSprite.Draw(SpriteTexture, FRect, Center, Pos, $FFFFFFFF);

と記述すると、

[警告]XXXX.pas(120): 定数式が範囲を超えました

と警告が出てくる。たかが警告と無視していたら

「プロジェクトXXXX.exeに処理されない例外クラス Borland.Delphi.System.ERangeErrorがあります。」

( ゜Д゜)ハァ?

対処法としてはColorをColor.Whiteとすればいいのだけれど、α値を適当にいじれないし。

とりあえずキャストしてみたら上手くいった。

D3DSprite.Draw(SpriteTexture, FRect, Center, Pos, Integer($FFFFFFFF));



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です