0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

3.便利ツール導入

Last updated at Posted at 2023-06-14

3.便利ツール導入

タイル(画像)を作成し、画面に表示するためタイルを作成する手順をまとめていきます。

・目次
1.GBTDダウンロード&配置
2.GBTDを使用してタイル作成
3.タイルを表示





1.GBTDダウンロード
 以下の記事を参考にしました!
 配置場所は任意




2.GBTDを使用してタイル作成

GBTD.EXEを起動し、基本操作を確認してみる

メニュー
└File
 └Open・・・一度作成済みの".gbr"ファイルを開く
 └Save・・・保存(タイル加工情報)
 └Save As・・・新規ファイルで保存(タイル加工情報)
 └Reopen・・・一度作成済みの".gbr"ファイルを開く(開きなおし)
 └Export・・・GBに表示する用のソースファイルを出力
 └Export to・・・新規でソースファイル出力
 └Import from・・・ファイル取り込み(拡張子不明 そのうち調べる)
 └Exit・・・アプリ終了

└Edit
 └Undo・・・直前操作を取り消す
 └Cut tile・・・GBTDを2画面開いているときにカットし、ペーストできる
 └Copy tile・・・同上
 └Paste tile・・・同上
 └Split Copy・・・16*16のタイルを分割してコピーできる
 └Split Paste・・・同上
 └Split optins・・・分割時のオプション(2枚目を下にするか右にするか)

└Design
 └Pen・・・ペン(線画)
 └Flood fill・・・バケツ(塗りつぶし)
 └Flip Vertically・・・左右反転
 └Flip Horizontally・・・上下反転
 └Rotate clockwise・・・時計回り90度
 └Scroll Left・・・左に移動
 └Scroll Right・・・右に移動
 └Scroll Up・・・上に移動
 └Scroll Down・・・下に移動
 └Clear tiles・・・クリア
 └Flip colors・・・???

└View
 └Tile size・・・タイルサイズ変更(88,816,1616,3232)
 └Tile count・・・タイル数をカウント(何に使う?)
 └Simple・・・右側のプレビュー画面非表示
 └Grid・・・ます目非表示
 └Nibble markers・・・点表示(ます目非表示に見える)
 └Auto update・・・アップデート??(ファイル更新されたら反映??)
 └Color set・・・色変更(プリセット)
 └Palettes・・・色変更
 └Set bookmark・・・ショートカットをカスタマイズ??
 └Goto bookmark・・・ショートカットをカスタマイズ??

└Help・・・ヘルプ(開けない)

Export to時の設定内容

Filename・・・ファイル名(ラベル名と同一のほうが分かりやすい)
Type・・・ファイルタイプ(拡張子) GBDK C FileでOK
Label・・・プログラム内で使用する関数名的なもの
From To・・・複数のタイルを作成した場合何個まで出力するか

image.png

Include palette colors・・・オン 色の引継ぎ?
image.png




3.タイルを表示
以下のコードを"main.c"に記載しタイルを表示させる

main.c
#include <gb/gb.h> 
#include <stdint.h>  //ライブラリ参照
#include "tile.h"

UINT8 p_xy[2] = {0};// [x, y] が入る

void main(){
	set_sprite_data(0, 1, tile); //TileLabelのタイルを登録
	set_sprite_tile(0, 0); // スプライト番号 0 にタイル 0を設定

	//タイル0を表示する位置決め
	p_xy[0] = 10 << 3; //x軸160
	p_xy[1] = 10 << 3; //y軸16
	move_sprite(0, p_xy[0], p_xy[1]); // 0 番目のスプライトを移動
	
	SHOW_SPRITES; // スプライトの表示を ON

◇解説

#include
#include //ライブラリ参照
#include "tile.h"
→GBTDで作成したタイルのソースファイル(tile.h)を記載

UINT8 p_xy[2] = {0};// [x, y] が入る
→配列を定義

set_sprite_data(0, 1, tile); //タイルを登録
set_sprite_tile(0, 0); // スプライト番号 0 にタイル 0を設定
→タイルをスプライト0番目に定義

p_xy[0] = 10 << 3; //x軸160
p_xy[1] = 10 << 3; //y軸16
→配列に初期表示場所のX,Y軸の値を入力

move_sprite(0, p_xy[0], p_xy[1]); // 0 番目のスプライトを移動
→0番目のスプライト(タイル)を配列の値(X,Y軸)の場所に表示

SHOW_SPRITES; // スプライトの表示を ON
→スプライトを表示

コンパイル結果(large_mapサンプルに表示させてます)
image.png




以上!
次回は背景を動かしてみよう!!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?