Join Michael House for an in-depth discussion in this video Object pools, part of Advanced Unity: 3D Game Programming.
…In this video, I'm going to show you how…you can implement and when to use an object pool.…Object pools are used to reduce the number of memory allocations a game has.…In Unity, when creating a game object, memory is set aside for that object.…When that object is later destroyed, the memory has…to be reclaimed by a process called garbage collection.…Allocation and garbage collection are somewhat heavy tasks…that can take a significant amount of time.…Further garbage collection is something that we for…the most part don't have direct control over.…
So we don't know when it's going to happen.…This can cause unexpected delays.…Object pools avoid this by recycling.…Instead of throwing away an object with when we're done…with it, we just mark it as not in use.…Then when we need a new object, we take this object…that's been marked not in use, dust it off and reuse it.…This does mean that more memory might be…in use throughout the course of your program.…But it's typically worthwhile since memory usage is more predictable.…
NOTE: This course requires Unity 4.5.5. The newer versions of Unity have done away with the GUI system used in this course, so the interfaces included for many of the scenes will not work with 4.6 and higher. You can download Unity 4.5.5 at http://unity3d.com/get-unity/download/archive.
- Enabling/disabling with scripts
- Translating, rotating, and scaling objects with scripts
- Working with mouse and keyboard input
- Creating custom GUI controls like progress bars
- Loading assets with scripts
- Saving games
- Creating prefabs dynamically
- Making remote procedure calls
- Synchronizing object transforms
- Finding slow code
- Optimizing data access
- Extending the editor
Skill Level Advanced
Q: In the Chapter 3 file EntityLoader.cs, I get an error: DirectoryNotFoundException: Directory 'Assets\' not found. Removing the backslash after 'Assets' fixes it, but then I run into a different error. How do I fix this?
Q: What version of Unity does this course cover?
A: This course requires Unity 4.5.5. The newer versions of Unity have done away with the GUI system used in this course, so the interfaces included for many of the scenes will not work with 4.6 and higher. You can download Unity 4.5.5 at http://unity3d.com/get-unity/download/archive.
Q: The game object in the first chapter's Mouse Input Raycasting sample doesn't appear to follow the mouse. What's wrong?
A: Please enable the Box Collider component (by activating the checkbox next to the component name) on the game object. This is not explicitly mentioned in the video, but it will ensure the raycasts collide with the game object.
Unity 3D: 3.5 Essential Trainingwith Sue Blackman10h 52m Beginner
Animating Characters with Mecanim in Unity 3Dwith Sue Blackman5h 28m Intermediate
Animating for Unity 3D in 3ds Maxwith Adam Crespi1h 19m Intermediate
1. Basic Scripting
2. Using the Debugger
An advanced prefab system6m 12s
4. Advanced Scripting
5. Dynamic Terrain
6. Creating Custom GUI Controls
9. Extending the Editor
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
This will not affect your course history, your reports, or your certificates of completion for this course.Cancel
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.
Notes are saved with you account but can also be exported as plain text, MS Word, PDF, Google Doc, or Evernote.