Give Page Feedback

Version Control - Overview

For the most part, you should follow standard version/source control policy regarding 3rd party Asset Store Tools when using SAM. That is, SAM (and all other folders in the Deep Space Labs umbrella) should not be tracked by your source control software of choice, especially because most source control software disables the tracking of dll files by default, which SAM and Terra Slicer both make use of.

Note that this advice does not apply to SAM or Terra Slicer related assets that you generate, such as prefabs containing SAM/Terra Slicer components, or Scriptable Assets like Streamable Grids, Default Asset Creators, etc. These assets should generally be tracked so that they can be shared with team members.

Alternative Solution

When cloning a project using version control software, we recommend simply downloading the SAM package and sharing it between team members, however please remember that SAM uses Unity's per seat license, so all team members that are going to be using SAM must have a valid seat purchased on their behalf (or they need to have purchased it themselves).

Team members can simply download and install SAM using the Package Manager.

Temporarily Removing SAM

Most SAM related files can be restored by simply re-installing the SAM package, however there are some files which are generated by user action and which are intended to be unique for each user's project. If you need to remove SAM temporarily, you MUST export these files into a Unity Package that can be re-imported after re-installing SAM, or else you will lose valuable configuration information. When exporting the files, make sure to uncheck the Include Dependencies option! These files are:

1) The Deep Space Labs/SAM/Resources folder. This folder currently stores an asset used to store global runtime settings (primarily for Chunk Streamers), however it may be used to store other settings in the future.

2) Any custom Asset Manager assets, which are stored in the Assets/Editor Default Resources/Deep Space Labs/SAM/AssetManagers folder. Note that the default Asset Managers (any you see in this folder that you did not create) do not necessarily need to be exported, however you may wish to do so in order to preserve those Asset Managers' settings.

3) The GlobalEditorSettings asset, which can be found in the Assets/Editor Default Resources/Deep Space Labs/SAM/ScriptableAssets folder. Even if you have never adjusted any settings on this asset, you should still export it!

4) Any World Designer Data assets found in the Assets/Editor Default Resources/Deep Space Labs/SAM/WorldDesignerData folder. These store important settings regarding your use of the World Designer Tool, including any Editor World Regions created when using the tool.

Sharing Files Between Team Members

In general, you will only share SAM related assets that are not located in the Editor Default Resources folder or root Deep Space Labs folder. The two exceptions are the GlobalRuntimeSettings_DoNotDeleteOrRename file (which must be shared if you wish to transfer some chunk streamer related settings) and World Designer Data assets, although the latter is typically only needed if you want to share the Editor World Regions you've created with other team members.

You may wish to provide a special override for the GlobalRuntimeSettings_DoNotDeleteOrRename in your gitignore (or other version control ignore file) so that this file can be shared, assuming you have configured the gitignore to ignore the Deep Space Labs related folders/files.

If you wish to share World Designer Data assets, it is recommended to export the ones you want to share, and have the other team member manually import the files and assign them to their World in order to use them (via the World Designer tab in the World's inspector).

World Designer Tool Considerations

When working with the World Designer Tool, it can be useful to understand how the main scene and certain assets are modified, since those modifications will need to be tracked by your version control system.

For more information on this topic, please refer to the Version Control Section within the World Designer Tool Chapter.