2013年12月25日水曜日

スプライトの行動範囲指定方法 [Unity C# Orthello]

スプライトの行動範囲指定方法

① 動的対象のスプライトを作成
  1.ここでは「MoveMan」で作成
  

②行動範囲用のスプライトを作成
  1.ここでは「AreaSpace」で作成

③行動範囲制御
  1.新規でC#ファイルを作成。ここでは「MoveManL」
  2.下記の通り修正する

public class MoveManL : MonoBehaviour {
OTObject otObject = null;
// Use this for initialization
void Start () {
otObject = GetComponent<OTObject>();
otObject.BoundBy(GameObject.Find("AreaSpace").GetComponent<OTObject>());
OT.Persist(otObject);
}
void OnLevelWasLoaded (int level) {
otObject.BoundBy(GameObject.Find("AreaSpace").GetComponent<OTObject>());
}
}


④C#「MoveManL」を①で作成した「MoveMan」にドラッグ&ドロップ

⑤スプライト「MoveMan」のInspector「Draggable」「RegisterInput」のチェックを入れる
「Draggable」→ドラッグ可不可
「RegisterInput」→押下可不可

※スプライト「MoveMan」がスプライト「AreaSpace」で隠れている場合は、スプライト「MoveMan」の「Depth」を調整。







2013年12月18日水曜日

クリックorタップ処理 [Unity Android C#]

1.OnMouseDown()イベント


2.Update()内に記述

if (Input.GetMouseButtonUp(0)) {
   //左クリックの場合orタップ時の処理

} else if (Input.GetMouseButtonUp(1)) {
   //右クリックの場合orダブルタップ?時の処理

} else if (Input.GetMouseButtonUp(2)) {
   //中クリックの場合or???の処理

}



2013年12月13日金曜日

実機orローカル実行時の区別 [Unity C# Android]

実機またはUnity上で実行する場合に処理を分けたい場合は下記を実装する


#if UNITY_EDITOR
//Unityで実行する場合の処理を記述
#else
//実機で実行する場合の処理を記述
#endif






2013年11月14日木曜日

Unityでビットマップフォントを使用する [Unity Orthello C#]

Orthelloのインポートとビットマップフォントの作成は終了している状態で進めます

※Orthelloのインポートはこちらから
※ビットマップフォントの作成はこちらから

1.Projectの「Assets」「Orthello」「Objects」「Sprites」「SpriteAtlas」「SpriteAtlas-Cocos2D-fnt」を「Hierarchy」にドラッグ&ドロップします


この部分が追加されます
「StatusFnt」に変更





















2. 「Assets」-「Orthello」-「Objects」-「Sprites」-「TextSprite」を「Hierarchy」にドラッグ&ドロップ













この部分が追加されます
「StatusSprite」に変更



















3.作成した「xxxx.txt」と「xxxx.png」を適当な場所に移動する
  ここでは「Assets」に「status.txt」と「status.png」を作成

4. 「StatusFnt」-「Inspector」の「Texture」を作成した「xxxx.png」に変更する





















5. 「StatusSprite」-「Inspector」の「Sprite Container」に「StatusFnt」を設定
  ※フォントカラーを変更したい場合は「TinColor」で色を選択























6.ステータス値の出力
  「Status.cs」を作成し、下記プログラムを書き込む

public class status: MonoBehaviour {
  OTTextSprite text;
  // Use this for initialization
  void Start () {
  text = GetComponent<OTTextSprite>();
  }
  int tick = 100;
  // Update is called once per frame
  void Update () {
  if (tick > 0) {
  tick -= 1;
  text.text = (tick) + "/100" ;
  }
  }
}

「Status.cs」を「StatusSprite」にドラッグ&ドロップ
実行すると「100/100」から「0/100」にカウントダウンする



Unityにデータ保存 [Unity C#]

1.保存
  EditorPrefs.SetInt("名前", 数値);

2.取得
  EditorPrefs.GetInt("名前", 0);

3.削除

  指定削除 EditorPrefs.DeleteKey("削除する名前");
  全件削除 EditorPrefs. DeleteAll();



※他にも[Bool][String][Float]があるようです
詳しくはこちらを参照。

2013年10月20日日曜日

OrthelloのSpriteで深度を設定する [Unity Orhtello]

OrthelloのSpriteを複数使用してpng画像の重ね合わせなどを行いたい場合


「Inspector」の「Depth」の値を変更すると深度[Z軸]を変更することが出来る。
※「Transform」の「position」のZ軸は変更できない。値が戻ってしまう



2013年10月16日水曜日

ビットマップフォントの作成

今回はUnityでOrthelloを使用して数値カウンターを作成します

※Orthelloのインポートがまだの方はこちらで確認してください


1.BMfontのダウンロード
 ビットマップフォントの作成ツールは幾つかあるみたいですが無料の「BMfont」を使用します。
 ここから「BMfont」をダウンロードしてください













2.ビットマップフォントの作成
 1) 「Options」-「Font settings」



















 2) 「Font」を指定して「OK」






















3) 「Options」-「Export options」



















4) 「Font descriptor」で「Text」を選択
 「Textures」で「png ~~~」を選択
 ※PaddingやSpacing・WidthやHeightについては必要があれば変更する






















5) 使用する文字の選択
 必要な文字をクリックすると文字色が薄く変わる
 「/0123456789」を選択















6) 「Save bitmap font as ...」を選択
 保存ダイアログが出るので好きな所に保存してください





















7) 6で保存したファイルのファイル名を変更する
 ① 「xxxx.fnt」→「xxxx.txt」
 ② 「xxxx_0.png」→「xxxx.png」
 ③ 「xxxx.txt」を開き、「xxxx_0.png」→「xxxx.png」と変更する



次はUnityに導入です→こちら