デバスバスター

わたすのメモ帳を盗み見るあなた的なスタンス

Unity

UnityでSkydome

裏面にテクスチャ表示するシェーダをSphereに貼ってあげるとこんな感じのスカイドームが作れる。 これは3つの球体に空、雲、山のテクスチャをそれぞれ貼って、雲テクスチャが貼ってある球体を回している。 以下シェーダのコード Shader "Custom/Skydome" { …

NGUIでクリックが効かないな〜と思ったらチェックすべきポイント

CameraのClipping Planesの値を確認すべし。 UICameraによって飛ぶRaycastの範囲はこの間のみ。この範囲内にコライダーがないとRaycastが当たらないため、クリックなどのメッセージが飛ばない。

GameObjectをDestroyしたら可能であればDetachChildrenすべし

UnityでGameObjectをDestroyすると即時に消されるわけではなく、Destroyを実行したフレームでは残っている。 単にGameObjectを消すだけならさほど問題ないが、 例えばNGUIのUITableで子オブジェクトを整列させているような時、消したはずの子GameObjectがく…

スクリプト上でTransform.parentを変更する時はスケール値が変わるので注意

例えば、PrefabをInstantiateしようと思った時 GameObject obj = Instantiate(prefab) as GameObject; // この時、objのlocalScaleは ( 1, 1, 1 )で、parentはrootになっている obj.transform.parent = this.transform; // この時、objのlocalScaleはparent…