アーカイブ: 2015年1月
【ハピネスチャージプリキュア!】第49話 愛は永遠に輝く!みんな幸せハピネス!【他まとめ】
「ゲーム」を作るのは簡単じゃない
いよいよこういう記事を残していかなアカン頃合いだと思ったので。
ゲームオブジェクトのTransformを全取得するスクリプト その2
もう大分前に気付いていた事なんだけど、ちゃんと記事にしておこうと思ったので。
以前にあるゲームオブジェクトのTransformを全取得するスクリプトを公開したが、
もっと簡単に書ける方法があったのでGistに例を上げておいた。
GetComponentsInChildren<取得したいコンポーネント名>で、
そのゲームオブジェクトの子供以下(自身を含む)のオブジェクトの指定コンポーネントを全てかっさらってきてくれる。
結構便利なので覚えておいて損はない。
が、想像に難くないと思うが処理自体は結構重いので、毎フレームこれを呼んだり
これを1度だけ呼ぶオブジェクトが同時に大量生成されたりといった事があると負荷が高い。
(そんな事はほぼないだろうけど・・・)
ちなみにMac PC上で同じ条件で処理速度を測ってみたら、
以前に作った自前のやつ
→約 0.00030 秒
GetComponentsInChildren<>
→約 0.00064 秒
とほぼ倍ぐらいの差があった。
スマホだともっと差が顕著になる可能性があるので、乱用は避けたい所。
記述が短いからといって速度が速いとは限らない典型である。
Singleton.cs更新
GetInstance内のインスタンス比較処理が、Unity APIの処理なのでスレッドから
シングルトンを扱えない問題の対応策を入れただけの更新。
(GetInstanceWithoutFinding関数とプロパティを追加)
地味に重要。
どうでもいいけどなぜC#ファイルとして扱ってくれないのだGistは。
Smalltalkとかいうのにされてしまう。