Publisher | Deep Space Labs |
---|---|
File size | 1.76MB |
Number of files | 70 |
Latest version | 1.5.0 |
Latest release date | 2024-03-14 11:17:20 |
First release date | 2023-07-10 10:03:13 |
Supported Unity versions | 2018.4.2 or higher |
S.A.M. is an offshoot of the Terrain Slicing & Dynamic Loading Kit, which was created and has been supported since 2012. That kit has been converted into the Streamable Worlds Bundle, which includes S.A.M. as well as Terra Slicer. If you previously purchased the TS&DLK, when you add S.A.M. to your cart and check out, it should show as costing 0$. If it does not, please contact me!
Website Contact Form | Forum Thread | Discord | API
S.A.M. - The Streamable Assets Manager unlocks a new way to build complex Game Worlds with Unity.
The traditional approach of placing the entire game world in a single scene has several problems which become magnified as your project grows.
1) Large scenes incur a high RAM usage cost, as all assets are loaded into memory even though many are not needed at any given time.
2) CPU/GPU resources can be wasted on assets that aren't strictly needed.
3) Scenes which cover a large area may run into floating point issues.
4) Many operations (such as simply saving the scene) can stall the editor for short burst, resulting in the dreaded Hold On (Busy . . .) dialog box to appear.
5) Simple procedures like moving a transform can become laggy.
6) Large scenes can cause the Unity Editor to run out of memory.
7) Working with a single scene can present conflict issues when working in teams.
Working with Streamable Assets allows you to avoid these issues (and more), as you are able to load only those Assets that are needed at any given time.
What You Get With Our Streaming Solution
Break Down Large Scenes - The World Designer Tool enables you to break down large over bloated scenes into our Streamable Asset format with minimal effort.
Easily Work With Streamable Assets - Game development is an iterative process. As such, we've designed the World Designer Tool to allow you to load, modify, save, and unload Streamable Assets within the Editor in a way that is both intuitive and effortless.
Build Complex Worlds - In S.A.M. Grouping's (a set of related Streamable Assets; terrain could be in one grouping, forest assets in another, and so on) are setup individually then combine them to form complex game worlds.
Use The LODs You Want - Use as many LODs as you wish with our system (a mechanism for adding transition effects between LODs is also included), or use Unity's built in LOD system.
Load Prefabs, Scenes, and More - Mix and match asset types within the same game world. Via scripting, add support for custom asset types or assets that are procedurally generated!
Use Addressables - Use the Addressable System for some Assets, all Assets, or none. We provide default implementations for creating, managing, and streaming Addressable assets, or you can create your own implementations via scripting (Note, Addressables Package must be installed to use).
Control Exactly What Is Loaded And When - Define simple or complex patterns that are loaded/unloaded based on the position of one or more players, or load pre-defined regions configured in the Editor. Via scripting, you can also write custom solutions to basically load whatever you want.
Eliminate Floating Point Issues - We track your Player's position and automatically re-center the World when they travel too far from the origin (if you wish). You have a high level of control over how the actual re-centering mechanism operates.
Create Endless Worlds - Repeat your World on one or more Axes in order to create a looping, endless World. Combined with our world re-centering solution, we challenge you to make your player go too far.
Mix and Match Pooling Solutions - S.A.M. includes default pooling solutions that should work in a majority of cases, however you can also add your own via scripting. Pooling is configured on a per LOD basis, so you can choose to use it or not depending on the requirements of each Asset.
Control how objects transition into/out of the scene and between LODs - Eliminate popping using our included crossfade implementations or add your own implementation via scripting for advanced effects.
Plug Into The Streaming Pipeline - Our event like system allows you to hook into the streaming process via scripting, which can be used to build complimentary systems or support Third Party Tools.
Work with 2D or 3D Worlds - Create something as simple as a side-scroller or as complex as a space simulation.
Easily Understand Everything With Our Robust Documentation - All of our configuration settings include tooltips to give detailed information, and our In Editor Guide ensures you don't need to search complicated Developer Websites to find the answers you need.
Do More With Our Comprehensive API - Our API covers all of the public members in our code base, and is absolutely gorgeous. Use it to perform advanced operations like creating/destroying Worlds at runtime, initiating saving/loading, and transporting the player across the game World.
Additional Features
- Use Multi Chunking to split streaming work into different operations, reducing/eliminating single frame lag spikes.
- Use our Binary Serialization based save solution or easily integrate directly with your existing save solution.
- Convert groups of prefabs to scenes easily with our Scene Generator Tool.
- Access a more efficient Terrain Neighboring solution compared to Unity's built in system.
- Use miniaturized assets to better visualize your assets when defining loading patterns or working with the World Designer Tool.
- Gain fine-tuned control over the per frame execution time of our streaming solution.
- Use existing Assets from external tools easily via our Naming Convention system.
Features Shared With Terra Slicer
- Prefab Creator tool allows you to batch convert multiple game objects to prefabs.
- Terrain Duplication command that allows you to batch duplicate Terrain (to create unique duplicated assets).