2017-08-24 2 views
0

2〜3日後にこれを探していますが、解決策が見つかりませんでした。シーンに固有のスクリプトの一部をunity3dに書き込む方法はありますか

github/bitbucketのブランチ機能としてすべてのシーンを統一して処理するため、特定のスクリプトでコードの行の一部を変更して、シーンごとに異なるようにすることができます。

ゲームでシーンを変更した場合、ゲームにこのシーンに固有のスクリプトを読み込ませます。

例:私のゲームは、xyz.csの変更いくつかのコード行をSCENE1を再生している場合という名前のスクリプトがあり、

をxyz.cs。 私のゲームがscene2をプレイしている場合、xyz.csのコードの一部の行が上記のシーン行と同じでないことがあります。

私のゲームでは、基本的にgit to scenesのブランチ機能(ブランチ)が統一されています。

ありがとうございました。

+0

理由だけではgitに支店を使わないのでしょうか?一見すると、これはあなたが問題を複雑にするのと同じようです。 –

+2

これはバージョンコントロールに関する質問ではなく、似たようなスクリプトにシーンに基づいて少し異なる実装が必要な場合は、抽象クラスまたはインターフェイスを使用することを検討し、各シーンに対して継承するクラスを作成します。 –

+0

上記のように、抽象メソッド(および実装されたもの)を持つSceneAbstractクラス、Level1:SceneAbstractなどのサブクラスです。 – Everts

答えて

0

gitでunityプロジェクトを管理するにはOKです。各シーンにおける.csファイルは随時変更する必要がある場合は

  • は、Gitの中で異なるブランチ内の各シーンを管理し、することができます。しかし、異なるブランチ内の各シーンを管理するかどうか、それはあなたのニーズや状況に依存しますそれは別々のシーンのそれぞれのバージョンを別々に追跡するのに役立ちます。
  • .cdファイルがシーンごとに一定であれば、同じブランチ内の異なるシーンを管理し、サムがコメントで述べたように使用することができます。

異なるブランチで各シーンを管理した場合は、各ブランチに.csファイルのエンティティ(スクリプトの一部ではない)を保持する必要があります。しかし、必要に応じて別のシーンに基づいて.csファイルを変更することができます。

あなたはSCENE1内のファイルxyz.csに基づいてSCENE2でxys.csファイルを変更すると、あなたはコマンドの下に使用することができ、このような:

# On scene2 branch 
git checkout scene1 xyz.cs 
# the xyz.cs in scene2 branch will be same as scene1 
# change the part you want to modify 
git add . 
git commit -m 'change part of xyz.cs file in scene2 branch' 
+0

ええ、ありがとうが、私はゲームで同じシナリオについて話しています。ゲームでシーンを変更した場合は、新しい変更されたスクリプトを読み込む必要があります。シーンのために私のゲームでgit分岐機能が欲しい。 – djkp

+0

あなたの質問は、gitをバージョン管理に使用することとは関係がありませんが、シーンが変更された後に更新されたスクリプトを読み込む方法(問題のためにスクリプトAPIを試すことができます)。また、あなたの質問がよりよく記述され、理解されるように、 'version-control 'タグを削除することができます。 –

関連する問題