« 【よみもの】もーりおのつぶやき 第34回 | メイン | HSPTV!メルマガ 第66号 »

2008年10月14日

【講座】HSP3ワンポイントテクニック 第34回

このコーナーでは、HSP3の変わった使用例や、気付きにくい機能
などを紹介していきたいと思います。
今回は、ゲームなどで使われる動きのある処理(アニメーション)
について取り上げてみましょう。
実は、HSP3.1のサンプルフォルダには、ゲームで使われる際の
ひな型となるスクリプトが用意されています。
HSPがインストールされているフォルダ以下の、sample/gameに
ある、いくつかのスクリプトが参考になるはずです。
以下のスクリプトは、絵を動かす場合の処理を単純にしたもの
です。このスクリプトは、face.bmpという画像ファイルを使って
いますので、スクリプトを保存したフォルダに必ずファイルを
用意しておいてください。face.bmpは、sample/gameフォルダに
収録されています。

buffer 3 ; バッファを用意
picload "face.bmp" ; 画像ファイル読み込み
screen 0,640,480 ; 画面サイズ指定
mx=0 ; X座標初期値
my=240 ; Y座標初期値
*main
redraw 0 ; 描画始め
color 0,0,64:boxf ; 背景を消す
gmode 2,64,64 ; 画像サイズ
pos mx,my:gcopy 3 ; 画像コピー
redraw 1 ; 描画終わり
await 20 ; 時間待ち
mx=mx+1 ; 座標を動かす
goto *main ; 繰り返す

上のサンプルでは、「顔」の絵が左から右に動きます。
1コマ1コマを、少しずつ絵をずらして描くようにするのが
基本です。表示する座標は、「mx=mx+1」の部分で変化させて
います。もっとスピードを変えてみたり、上下にも動くように
する方法を考えてみてもいいでしょう。
他にも、キー操作で動かすものや、複数の絵を同時に動かす
方法について、サンプルフォルダのスクリプトが用意されている
ので、勉強になると思いますよ。
ゲーム作りなどに応用してみてください。ではでは、また。

(おにたま)

投稿者 usuaji : 2008年10月14日 23:26

口臭チェッカー市場