We know that navigating a new product is not always easy. Not only do you have to learn a whole new way of doing things, often times something as simple as finding the location of a file, the means of opening a tool/window, or adding a component can be downright painful. Consider this section a reference. If you ever cannot find out where something is located, or how to perform some action, return here!
If you are a previous user of the Terrain Slicing & Dynamic Loading Kit, you will have noticed that this product comes with an entirely new folder structure. This new folder structure has been designed with the future in mind, and I hope you like it ;)
Most files related to the Streamable Assets Manager (and some other of my creator's products, like the Terra Slicer) can be found in the root Deep Space Labs folder, found directly within the Assets Folder. While I suggest leaving the Deep Space Labs folder where it is, it should be safe to nest it within another non special folder if you feel the need. Just note that future updates of the product may detect that the folder is missing and attempt to install all assets again.
In addition to this folder, two other folders have been placed in special Unity folders called Editor Default Resources and Gizmos. Any folders found within these folders must remain as is, or you will break the normal functioning of the Streamable Assets Manager.
--Upgrade Note--
You may have also noticed that your previous folder structure is intact, and no errors were thrown when you imported the Streamable Assets Manager. This was made possible because all code assets have been placed in new DLL's, leaving the old DLL's intact. My creator elected to choose this path because it keeps previously created scenes/assets intact, which can be used as a reference for building new scenes/assets that function with the Streamable Assets Manager. The chapter on Upgrading contains information on removing this folder and other related assets once you have completed the upgrade process.
The Streamable Assets Manager makes heavy use of Scriptable Object Assets, as a means of storing important data that is used in game, but also as a technique for making editor tools that can be reused effortlessly during the iteration process that is game development, which often calls for the same tool to be run over and over again over the lifetime of a project, using the same exact data.
All of the Scriptable Object assets can be created using the asset creation menu, which an be utilized in two ways.
Using the Top Menu Bar via:
Assets -> Create -> Deep Space Labs -> SAM -> Asset Type
By right clicking a folder (or inside a folder) and selecting:
Create -> Deep Space Labs -> SAM -> Asset Type
The assets available include (Control + Click each link open a new browser tab on that subject):
There are a single preconfigured Game Objects that contains all components needed to begin working with Dynamic Streaming. You can add this Game Object to a scene via the Menu Bar option:
GameObject -> Create Other -> Deep Space Labs -> SAM -> Default SAM Setup.
In addition to the components included by default with the Game Object described above, there are even more Components/MonoBehaviours that you can add to your game objects. These components can be added to a game object via the Menu Bar option:
Component -> Deep Space Labs -> -> SAM -> Category -> Component Name
Or via the Add Component Menu directly with the Game Object's inspector:
Add Component -> Deep Space Labs -> -> SAM -> Category -> Component Name.
Note that in the majority of cases, you will also need to assign these components to an appropriate field (usually on the World or Active Grid component) in order for them to do anything.
Most if not all of these components contain helpful tooltips on their fields which should give you an idea on how to configure them. Just hover your mouse over a field name that has an asterisk (*).
In addition, most components will contain '?' buttons that open a specific chapter/section of this editor guide that detail the component as a whole, or individual settings on the component.
You may also see 'API' buttons when a particular setting or component can be manipulated via the public API. This button opens the API website and is thus usable only when connected to the internet.
Finally, it should be noted that most of these components are implementations of a base abstract component, which you can override yourself to introduce alternative functionality. Wherever it's possible to create a Custom Component, you will find a Section on creating a custom component of the type within that types dedicated Chapter.
--Upgrade Note--
If you still have the assets from the Terrain Slicing & Dynamic Loading Kit and are using the Add Component Menu to add components to game objects, if you type the name of the component in the Search Bar and two results appear, it means the component was not renamed with the new update. In order to ensure you add the newer (correct) component, you should erase your search terms and navigate to the component via 'folder' options, starting with Deep Space Labs.
The product contains some useful commands which are shared with one of our other products, Terra Slicer. You can find these commands in the Assets Menu via:
Assets/Deep Space Labs/Core/Action
These commands allow you to:
1) Add 1 or more Prefabs from your project hierarchy to the scene.
2) Copy a Project Hierarchy Folder's absolute folder path.
3) Copy a Project Hierarchy Folder's relative folder path.
4) Duplicate 1 or more Terrain.
5) Open the Prefab Creator tool which allows you to convert non prefab game objects to prefabs.