カレンダー

09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

FC2ブログランキング

気に入ったら押してくださいな~

FC2ブログランキング

1日1回のクリック有効です。

HSPについて

おにたま氏作成の無料で使える プログラム言語です。

こちらからダウンロード出来ます。

最近の記事

最近のこめんと~

最近のトラックバック

月別あ~かいぶ

かてごり~

ぷろふぃ~る

BYTE

Author:BYTE
QMAプレイヤー。
もはや1ヶ月に10プレイ程度の
今も昔も鍍金賢者。

カード名は明かせないな(w

りんく~

ブロとも申請フォーム

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

lesson 四文字 5-1 四文字のボタンを複製するのだ!

四文字ボタン描画


文字はまだ書かれてないけど、
きちんとボタンが10個描画されています。

★ lesson 四文字 5-1.hsp.txt のダウンロード ★
右クリックで対象をファイルに保存
.txt なので lesson 四文字 5-1.hsp にリネームして実行してみてください。

今回のポイントの所だけ載せます。


//仮想画面 2(ID_BUTTON)に画像を読み込み
buffer ID_BUTTON
picload "./image/4moji.bmp" , 1 // , 1 を付けると仮想画面は画像の大きさぴったりになります

//仮想画面 3(ID_BUTTON_BUF)
buffer ID_BUTTON_BUF , 390 , 150 // 390*150 の仮想画面を用意(必要な分だけ確保する(省エネ))
color 0 , 255 , 0
boxf 0 , 0 , 390 , 150 ;黄緑色で四文字ボタン10個分塗りつぶす

repeat 5
//上段の四文字ボタン描画
pos cnt*80 , 0
gcopy ID_BUTTON , 0 , 0 , YONMOJI_SIZE , YONMOJI_SIZE ;仮想画面2 からボタン画像を転送
//ついでに下段の四文字ボタン描画
pos cnt*80 , 80
gcopy ID_BUTTON , 0 , 0 , YONMOJI_SIZE , YONMOJI_SIZE
loop

//メイン画面に仮想画面3の画像を転送
gsel 0
pos (ginfo_winx - (YONMOJI_SIZE*5 + 10*4))/2 , 250
gcopy ID_BUTTON_BUF , 0 , 0 , 390 , 150



仮想画面2の押されていないボタンの画像だけを、
仮想画面3に10個描画して、
メイン画面に転送しています。

この処理は並べ替えでも使うので覚えておいてください。
もちろん仮想画面は通常見えないので、想像してプログラムを書くんですよ。
仮想画面2

見えるようにすれば仮想画面2はこうなっています。

仮想画面3

見えるようにすれば仮想画面3はこうなっています。
70*70 のボタンがあり、上下左右の隙間は 10 になっています。
つまり
Xのサイズ = 70+10+70+10+70+10+70+10+70 = 70*5 + 10*4 = 390
Yのサイズ = 70+10+70 = 70*2 + 10*1 = 150
の仮想画面3を用意しています。
特にサイズ指定してなくても動きますが、
HSPでは指定しないと、 640*480 の仮想画面が出来ます。
余白の分のメモリが無駄なので、使う分だけにしています。

ちなみに今までのプログラムでは全部指定していないので、
640*480の仮想画面がいたるところに存在している事になります。
なぜ今まで放置していたかというと、
こんなことを初歩の段階で書いてもよく分からない、
サイズの出し方が分からない等色々ありますね。

まあ今のPCならメモリは無尽蔵なので、あんまり気にする事も無いんですが、
一応、大量のグラフィックを扱うには
この部分にも触れておかないと駄目なんで今回書いてみました。

今回はやや複雑なんで、これだけです。
今までのペースが速すぎたので、しばらくのんびりと、
1つ1つ詳しく書いていこうと思います。

参考になった!と思ったらクリックしてくださいな

スポンサーサイト

テーマ : クイズマジックアカデミー - ジャンル : ゲーム


コメント

コメントの投稿


管理者にだけ表示を許可する

 BLOG TOP 


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。