Unity初心者が全財産200万投じて、チーム開発に挑戦してみた。【Prefab2D開発ノウハウ】 - NAVER まとめ
http://matome.naver.jp/odai/2139014619023230301
私的まとめ
- Prefab毎にテスト用のシーンを用意する
本番用のシーンにPrefabを置いておく必要がなくなるため - Prefabの階層は2階層までに留める
3階層目以降が必要な場合は別のPrefabを用意して動的に作成する - Prefabの親のTransformは初期値にする
動的に生成された場合に変な座標とサイズで表示されるのを防ぐため - 親オブジェクトにUI系のコンポーネントをアタッチしない
- PlayMakerは弱小チームでは使うべきではない
デバッグやリファクタリングが難しい、メソッドの使用箇所を抽出できない - SendMessageなどの文字列指定によるメソッドの呼び出しは極力控える
コンパイルエラーが発生しないため
感想
Unityの個人開発におけるノウハウはいろいろなブログやサイトさんで見かけるのですが
チーム開発におけるノウハウは意外と見かけないのでスゴく参考になりました!
特に下記の項目はスゴく共感しました
アジャイルな開発をするには、全てC#のコードで出来るだけ、直接コードを叩くべきだ。
(SendMessageやInvoke等の文字列によるメソッドの呼び出しは極力控えるべきだ。)
UnityはSendMessageもLoadLevelも文字列指定ができてしまうので
呼び出す関数やシーンの名前を変更した場合にコンパイルエラーにならないんです
なので僕はSendMessageは使用しないように、LoadLevelに関しては
シーン名を定数で管理するクラスを自動で作成するエディタの拡張機能を用意して
シーン名が変わった時にコンパイルエラーが発生するようにしています
詳しくはこちらの記事が参考になります
けいごのなんとか • スクリプトでシーン名を扱うのをタイプセーフにしてみた
http://anchan828.tumblr.com/post/37544410340