Download this documentation page as a PDF.

Contents

Troubleshooting

Unfortunately, even the best software sometimes has undiscovered issues, or behaves in unexpected ways. If you need help, please check the sections below to see if your issue has already been addressed. If you don't find anything relating to your issue, feel free to contact us or write a post in our support forum.

Meta Files - Missing Script

When using any external libraries (DLL files) with Unity, there is the possibility for GUID-related issues to occur. These issues manifest as "Missing (Mono Script)" messages in the inspector, and messages in the console along the lines of "The referenced script on this Behaviour is missing!".

Read how to fix this issue.

'IPunPrefabPool' could not be found

When using the Photon Unity Networking (PUN) integration script for Pure Pool, you may encounter the following error message:

Assets/Plugins/Umbrace.Unity.PurePool/Integration Libraries/Photon Unity Networking/PrefabPool.cs(25,28): error CS0246: The type or namespace name `IPunPrefabPool' could not be found. Are you missing an assembly reference?

This error indicates that the IPunPrefabPool interface from PUN cannot be found. In most cases, the fix is simply to move the PrefabPool.cs integration script out of the Plugins folder, to another location in your Assets folder. In addition, please ensure you have the latest version of Photon Unity Networking installed.

ArgumentException: The Assembly UnityEditor is referenced by Umbrace.Unity.PurePool

When you try to build your Unity project for one of the available Unity players, you may encounter the following error message:

ArgumentException: The Assembly UnityEditor is referenced by Umbrace.Unity.PurePool ('Assets/Plugins/Umbrace.Unity.PurePool/Umbrace.Unity.PurePool.dll').

But the dll is not allowed to be included or could not be found.

This error indicates that you are using the Debug (Editor) binaries of Pure Pool, which are the default binaries installed from the Asset Store, but they are only suitable for use inside the Unity editor. To build your project, you should instead use either the Debug or the Release binaries, which can be found inside the Pure Pool Binaries.zip archive, in the Assets\Plugins\Umbrace.Unity.PurePool\Binaries folder.

Simply extract the appropriate binaries to your Assets\Plugins\Umbrace.Unity.PurePool folder, following the Installation guide if you have any doubts.

For more information about the binaries and their intended usage, please refer to the Conditional Compilation article.

ArgumentException: The manager must be set to load from Resources to use it with Photon. Set UseResources to true.

When running your Unity project with Photon Unity Networking integration, you may encounter the following error message:

ArgumentException: The manager must be set to load from Resources to use it with Photon. Set UseResources to true.

Umbrace.Unity.PurePool.Photon.PrefabPool.set_Manager

This error indicates that the NamedGameObjectPoolManager being assigned to PrefabPool.Manager has its UseResources property set to false. The UseResources property must be set to true to assign the Manager property. This is required as most of the GameObjects being spawned by PUN will not have been set up in the NamedGameObjectPoolManager manually, and should instead be loaded from the Resources folders.

To fix this, simply set the UseResources property of the NamedGameObjectPoolManager to true before assigning the manager:

// Set the manager to load by name from the Resources folders.
// This is required as most objects spawned by PUN will not be set up in the manager already, and will need to be loaded.
NamedGameObjectPoolManager.Instance.UseResources = true;

// Assign the manager, so it knows how to acquire and release from the pools.
this.punPrefabPool.Manager = NamedGameObjectPoolManager.Instance;