NGUIのアトラス画像で管理している画像にこういう線がはいる事がある。
Unity NGUI UILabel周りをスクリプトを扱う方法一覧
Unityの便利なasset NGUI。
そのNGUIの「UI Label」をスクリプトから扱う方法
テキストの基準位置の変更(左寄せや、下寄せ等)
GetComponent<UIWidget>().pivot = UIWidget.Pivot.Center; //センタリング
または
GetComponent<UILabel>().pivot = UIWidget.Pivot.Center;
でもOK
テキストの表示領域のサイズ変更
GetComponent<UIWidget>().width = 60; //幅
GetComponent<UIWidget>().height = 60; //高さ
Unity5で対象物を一定速度でドラッグ&ドロップ
Unity5で、タップした位置に対象物を移動。
タップした位置に、パズルのピースのようにものを移動する場合。
using UnityEngine;
using System.Collections;
public class dragSample : MonoBehaviour {
float touchX;
float touchY;
void Update(){
touchX = Input.mousePosition.x;
touchY = Input.mousePosition.y;
if(Input.GetMouseButton(0)){
OnDrag();
}
}
void OnDrag(){
gameObject.transform.position = Vector3.MoveTowards (gameObject.transform.position,Camera.main.ScreenToWorldPoint(new Vector3(touchX,touchY,10.0f)), 0.1f);
}
}
解説
- Camera.main.ScreenToWorldでタップ位置の座標に変換
- MoveTowordsで、対象物と、持って行きたい位置、それとそこまで移動する速度
マウスのドラッグ&ドロップするように移動する場合は、
MoveTowordsを除けばOK、下記のように。
transform.position = Camera.main.ScreenToWorldPoint(new Vector3(touchX,touchY,10.0f));
Unity5 rigidbody2Dで、x,y,zの軸を固定する
x,y,zのいずれも固定する場合。
GetComponent<Rigidbody2D> ().constraints = RigidbodyConstraints2D.FreezeAll;
固定を解除する場合。
GetComponent<Rigidbody2D> ().constraints = RigidbodyConstraints2D.None;
z軸(回転)以外だけ解除する場合。
GetComponent<Rigidbody2D> ().constraints = RigidbodyConstraints2D.FreezeRotation;
条件式で、どのタイプで固定されているか判別する場合
if( GetComponent<Rigidbody2D> ().constraints == RigidbodyConstraints2D.FreezeAll){
// すべて固定されていたら
}
iTunesでmp3ファイルの圧縮方法!!
下手に知識がない状態で圧縮をすると逆に容量が増えたり、
音質が必要以上に悪くなることがありました。。が!
iTunesさえあれば、簡単にmp3(音源)ファイルを、
いい感じに圧縮できました!
(音源のビットレートを小さくすることで圧縮率を変更します。)
個人的に、忘れそうなのでメモ!!!
手順
1. ituneアプリまず起動。
2. メニューから、「環境設定」を開く
3. 一般環境設定のダイアログが表示されるので、「一般」タブを選択。
4. 続いて「CD がセットされたとき:」の項目で、「読み込み」を選択し、右側の「読み込み設定…」をクリック。
5. 読み込み設定のダイアログが表示されたら、「読み込み方法:」の項目で、「MP3 エンコーダ」を選択。
Unity5(C#) 2Dで物理ゲーム使う際によく使うメソッド一覧
回転角度取得
transform.localEulerAngles.z
左右方向への速度
GetComponent<Rigidbody2D> ().velocity.x
上下方向への速度
GetComponent<Rigidbody2D> ().velocity.y
全方向への速度を取得
GetComponent<Rigidbody2D> ().velocity.magnitude
重力や速度が早すぎてものを貫通する時等の制御に。
指定角度への力を加える
void Boost(float,direction,float speed){
Vector2 v;
v.x = Mathf.Cos(Mathf.Deg2Rad * direction) * speed;
v.y = Mathf.Sin(Mathf.Deg2Rad * direction) * speed;
GetComponent<Rigidbody2D> ().AddForce (v); //力加算
}
「cocos2d-x 3.5」 と 「cocos studio 2.2」の開発環境構築。
cocosインストール
http://www.cocos2d-x.org/download
こちらcocosというランタイム?をインストール。
またcocos studio2.2をインストール。
起動時のメニューにて、storeというのがあるので、
そこからcocos2d-x 3.5をダウンロードし、インストール。
初期セットアップ
$python setup.py
$source ~/.bash_profile
テンプレートプロジェクトを作成 (ios&android)
$cocos new MyGame -p com.example.hoge -l cpp -d ~/project_folder/hoge_cocos2dx
iOSで開発
$cd ~/project_folder/hoge_cocos2dx/
のxcodeファイルを開けば、iosの確認が可能。
アンドロイドで開発(IDEつかわずに直接端末つないでadbのパターン)
$cd proj.android/
$python build_native.py
android端末にインストール
$cd ~/project_folder/hoge_cocos2dx/MyGame/proj.android/bin/
$adb install MyGame-debug.apk
Unity 初歩的ミス 早見表
1. iOS/Androidでビルドできない
- バンドル名や、アプリ名を設定したか。Player Settingで確認。
- xcodeでビルドできない場合は、UnityのFree版でスプラッシュ画像を等をいじっていないか確認。(Pro版大丈夫)
2. リドゥ・アンドゥ(一つ前、戻す前に)ができない
- ファイルの削除は本当にもどせないので注意!
- プログラム自体がエラーなど吐いていると、リドゥ・アンドゥ自体がきかなくなったりする(再起動などしてみる)
- capsロックになっていない?
- オブジェクトのアクティブON/OFFをカスタマイズしたショートカットにしていると、その分は戻せない。
3. Materialの編集ができない。
- Materialのインスペクタのアイコン部分をクリックするとアコーディオンが開ますw
4. Mesh Colliderをいくら設定しても、あたり判定がきかない。
Unity 自分自身を削除 (C#)
何かのオブジェクトにアタッチしているスクリプトから、
本体を削除したい場合。
Destroy(this);
や、
Destory(transform);
でも
削除されませんでした。
Destroy(this.gameObject);
で無事削除!
Unity toon shader(トゥーンシェーダー)で、iphone,androidの実機が陰影がついてしまう
環境:Unity4.6 MacOSX yosemite
Unityの便利な機能toonで、アニメ調に3Dモデルを表示をしたい時
でいろんなタイプの設定が可能。
陰影をなくしたり、枠線をつけたり。
高機能!
ただそのまま、iPhone端末や、Android端末の実機で実行すると、陰影がなくしたはずなのに、適応されてない!!
そんな時は、iphoneとandroidである、プラットフォーム別の設定を変えてみると、
無事実機でも反映されておりました!
iOS / Android のPlayer Settingをいじる
PlayerSettingsの、
Graphics API を[automatic]から[Open GL ES 2.0]に変更すると無事、実機でも反映確認できました。
Androidも同様な設定項目があるので同じく設定
参考になれば幸いです!!!