Designing an Object Pool for Unity - Overview (1)
Anytime we are writing production worthy code an emphasis should be placed on efficiency and performance. This is especially true when developing games with Unity. With games, memory footprint and/or performance issues are often exaggerated and lead to degradation of the overall user experience. Object Pooling is a form of reuse/recycling of resources which allows for better efficiency and performance by reducing the number of resource allocations/deallocations, and as a result, the amount of memory used and the amount of garbage collection performed by the system. By making more efficient use of resources you can do more with less, allowing you to take your game experience to the next level.
Our goal is to write a series of short posts on how we approach designing and writing an object pooling system that enables efficient re-use of Plain Old CLR Objects (POCO) and can be easily leveraged and extended for use with Unity Game Objects. Along the way we are likely to throw in a few interludes that allow us to discuss alternative ideas, non-sequiturs, and other thoughts/topics that deviate from the main thread. Interludes also provide an opportunity for us to be more interactive with our audience so let us know you know you are listening!














