この文書の現在のバージョンと選択したバージョンの差分を表示します。
| 次のリビジョン | 前のリビジョン | ||
|
wiki:unity:tips:075 [2014/11/22 00:21] 127.0.0.1 外部編集 |
— (現在) | ||
|---|---|---|---|
| ライン 1: | ライン 1: | ||
| - | ====== 075 カメラの範囲外判定について ====== | ||
| - | |||
| - | ==== 指定の座標がカメラの範囲内に収まっているか? ==== | ||
| - | <code csharp> | ||
| - | bool CheckScreenOut( Vector3 _pos ) | ||
| - | { | ||
| - | Vector3 view_pos = Camera.main.WorldToViewportPoint( _pos ); | ||
| - | if( view_pos.x < -0.0f || | ||
| - | view_pos.x > 1.0f || | ||
| - | view_pos.y < -0.0f || | ||
| - | view_pos.y > 1.0f ) | ||
| - | { | ||
| - | // 範囲外 | ||
| - | return true; | ||
| - | } | ||
| - | // 範囲内 | ||
| - | return false; | ||
| - | } | ||
| - | </code> | ||
| - | |||
| - | ==== MonoBehaviourを継承している場合 ==== | ||
| - | <code csharp> | ||
| - | // 写っている | ||
| - | void OnBecameVisible() | ||
| - | { | ||
| - | Debug.Log("OnBecameVisible"); | ||
| - | } | ||
| - | |||
| - | // 写っていない | ||
| - | void OnBecameInvisible() | ||
| - | { | ||
| - | Debug.Log("OnBecameInvisible"); | ||
| - | } | ||
| - | </code> | ||
| - | こちらはレンダラ-が有効になっている場合に使える。 | ||