Photon Unity Networking  v1.84
English | 日本語 | 한국
Public Member Functions | List of all members
IPunPrefabPool Interface Reference

オブジェクトプールが実装すべきメソッドを定義しています。PUNで使うことができます。 More...

Public Member Functions

GameObject Instantiate (string prefabId, Vector3 position, Quaternion rotation)
 これはPUNがPrefabの新しいインスタンスを生成したい時に呼ばれます。PhotonViewを伴った有効なGameObjectを返さなければなりません。 More...
 
void Destroy (GameObject gameObject)
 これはPUNがPrefabのインスタンスを削除したい時に呼ばれます。 More...
 

Detailed Description

オブジェクトプールが実装すべきメソッドを定義しています。PUNで使うことができます。

インスタンス化のためにオブジェクトプールを使うには、PhotonNetwork.ObjectPoolに設定してください。 ObjectPoolがNULLではない、すべてのオブジェクトに使われます。 PUNでインスタンス化を呼ばれたら、プールはNULLでない有効なGameObjectを返します。 また、PositionとRotationは値をもたなければなりません。

プールされたGameObjectは通常のAwake()やStart()は呼ばれないことに注意してください。 OnEnable()がPoolより呼ばれますが、呼ばれた時にネットワークの値はまだ更新されていません。 OnEnable()でのPhotonViewの値(isMineなど)は古い値になります。 スクリプトで調整する必要があるかもしれません。

PUNはOnPhotonInstantiate()を呼びます(IPunCallbacksを参照)。 これはネットワークの値や所有者に関して再利用されたオブジェクトの セットアップに使用される必要があります。

Member Function Documentation

void IPunPrefabPool.Destroy ( GameObject  gameObject)

これはPUNがPrefabのインスタンスを削除したい時に呼ばれます。

プールはDestroy()で返されたGameObjectの種類を見つけるためにいくつかの方法が必要です。 それはタグや名前、その他である必要があります。

Parameters
gameObject削除したいインスタンス
GameObject IPunPrefabPool.Instantiate ( string  prefabId,
Vector3  position,
Quaternion  rotation 
)

これはPUNがPrefabの新しいインスタンスを生成したい時に呼ばれます。PhotonViewを伴った有効なGameObjectを返さなければなりません。

Parameters
prefabIdPrefabのID
position生成したInstanceのPosition
rotation生成したInstanceのRotation
Returns
新しい生成されたオブジェクト、またはprefabId のPrefabが見つからない場合はNULL。