メインコンテンツまでスキップ

プロジェクトを改造する

プロジェクトは自由に改造していってもらって問題ありません。

ただ、リポジトリ(つまり、ダウンロードしてきた元) の方のコードに変更があった場合(例えば機能を追加したなど)にそれを、みなさんが改造しているプロジェクトに取り込む際に、自分のコードが消えてしまわないようにしなければいけません。

Git を使っている場合

Git を利用している場合は、コードの変更に関しては問題無いと思いますが、シーンに関してはここのガイドライン通りの方が安全かもしれません。

シーンについて

このサンプルプロジェクトは Assets/FirstPersonLikeKarlson/Scenes にシーンを配置しています。

ここにあるシーンを改造する場合には必ずコピーして、コピーしたシーンを改造してください

コードについて

Assets/FirstPersonLikeKarlson/Scripts にあるコードはリポジトリ側でも変更される可能性があります。

一方で PlayerMovement 等は改造する場合には変更するしかないかもしれません。

できるだけ自分が変更した箇所を分かりやすくしておく

  • ファイルの最後にだけ付け足す
  • #region #endregion で変更箇所を明確にしておく

partial を利用する

C# の機能に partial クラス/メソッドがあります。

PlayerMovement に関しては PlayerMovementPatch というファイルを用意しています。

alt text

PlayerMovementPatch.cs
using UnityEngine;

public partial class PlayerMovement : MonoBehaviour {
// 学習者の改造コード
}

このファイルからは PlayerMovement の内容も参照できるのですが、Update/FixedUpdate/Start などに手を加える場合にはどうしても、PlayerMovement 本体を改造するしかありません。

本体の改造箇所を最小限にし、自分のコードは partial の方に記載することで、多少楽になるかもしれません。

Git を使えるようになると楽

Git を使わない場合だと、リポジトリを毎回 Zip ダウンロードして置き換えるか、リポジトリのサイトから変更されたファイルだけを探してコピーペーストするような操作が必要になります。

リポジトリサイトは Github なので、Git を使えると、最新のコードの取り込みが楽になります。

参考