Chapter 01

前書き

sh1ch
sh1ch
2020.09.23に更新
このチャプターの目次

この記事は「Unity開発に関する50のTips 〜ベストプラクティス〜(翻訳)」を読んでとても参考になったので、その続編になる「50 Tips and Best Practices for Unity (2016 Edition)」の内容を超訳(勉強のため個人的に意訳・誤訳)したものです。

ブログにも掲載していますが、5日作業の結構な労力だったので Zenn にも掲載しておきます。(辺境のブログtwitter をよろしくしてくれると幸いであります😃)

変なことを書いていたり、誤訳等あったらごめんなさい。仕事から帰ってきてから趣味でやっていたので、疲れたところなんかは、翻訳ツールが増えてます。まわりくどく感じた文の省略や、省略による文脈の欠落もあるかもしれません。(そのあたりは、2012 年版の翻訳と同じで、諸々あらかじめご了承ください)
コメントに書いているのは、個人的にメモとして加筆しています。
(括弧)の内容は、訳した元々の文章から括弧をされていたり、個人的に加筆したものがあります。


前書き

以下の記事の内容は、Gamasutra のコミュニティメンバーによって書かれたものです。考えや意見は執筆者のものであって、Gamasutra や Unity(公式)のものではありません。

約4年前にオリジナルの「50 Tips for working with Unity」の記事を公開しました。その内容の多くはいまでも関連性がありますが、多くのことが変わっています:

  • Unity がよくなったこと
    たとえば、今では FPS カウンターを信用しています。(Tips 42 のこと)Property Drawer が使えるようになったことで、カスタムエディターを書く必要がなくなりました。Prefab の働きによって、明示的にネストされた Prefab や代替案を用意する必要が減りました。Scriptable object はより便利になりました。
  • Visual Studio との統合が改善された
    デバッグが各段に楽になり、引っ掻き回すようなデバッグが減りました。
  • サードパーティ製のツールやライブラリーが改善された
    Assets Store には、デバッグやロギングを改善するよいものがあります。
  • バージョン管理がよくなった
    Prefab の複製やバックアップコピーを用意する必要がなくなった。(というか、バージョン管理の効果的な使い方がわかってきた)
  • 私がより多くの経験を得た
    過去4年間、私は多くの Unity で仕事をしました。その中には、たくさんのゲームのプロトタイプ(30日で30個のゲーム)を作った経験、Father.IO のような(執筆者が作った)プロダクションゲームの経験、そして、私たちの代表的な Unity Assets である Grids(現在は非推奨になって使えない)が含まれます。

ここでの Tips は、上述のすべてを考慮してオリジナルの Tips を修正したものです。Tips に入るまえに、ここで免責事項を述べておきます。(基本的にオリジナルと同じ)

これらの Tips はすべての Unity プロジェクトに当てはまるわけではないとした上で:

  • Tips は、3~20人ほどの小さなプロジェクトでの私の経験に基づいている。
  • 構造、再利用性、明確さなどには(時間のように)対価がある。チームの規模、プロジェクトの規模・目標によって、その対価を支払うべきかどうかが決まる。たとえば、GameJam(クリエイターが集まって短時間でゲームを作るイベント)ではこれらの多くは使うことはない(リファクタリングの条件を説明しているのだと思います)
  • 多くの Tips は好みの問題になる。(ここで挙げた Tips は衝突するものがあるけど、どの Tips にも優れたメリットがある)
  • Unity のサイトにもいくつかのベストプラクティスが掲載されている。(ただ、多くはパフォーマンスの観点によるもの)