{"_id":"5b1f8576c2505d00031254ca","project":"571fa55ca0acd42000af9545","version":{"_id":"5b1f8576c2505d00031254db","project":"571fa55ca0acd42000af9545","__v":4,"forked_from":"594949e52be16d0026ec04cd","createdAt":"2017-06-20T16:14:29.816Z","releaseDate":"2017-06-20T16:14:29.816Z","categories":["5b1f8576c2505d0003125424","5b1f8576c2505d0003125425","5b1f8576c2505d0003125426","5b1f8576c2505d0003125427","5b1f8576c2505d0003125428","5b1f8576c2505d0003125429","5b1f8576c2505d000312542a","5b1f8576c2505d000312542b","5b1f8576c2505d000312542c","5b1f8576c2505d000312542d","5b1f8576c2505d000312542e","5b1f8576c2505d000312542f","5b1f8576c2505d0003125430","5b1f8576c2505d0003125431","5b1f8576c2505d0003125432","5b1f8576c2505d0003125433","5b1f8576c2505d0003125434","5b1f8576c2505d0003125435","5b1f8576c2505d0003125436","5b1f8576c2505d0003125437","5b1f8576c2505d0003125438","5b1f8aab9c683000032979e7","5b1f8b2f3073470003ffa5da","5b1f8bd9fd653400031d94f4","5b1f900bd4c5f000036b57bd"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"Mangalica","version_clean":"3.3.0","version":"3.3.0"},"category":{"_id":"5b1f8576c2505d0003125431","version":"5b1f8576c2505d00031254db","project":"571fa55ca0acd42000af9545","__v":0,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2017-01-01T17:01:47.129Z","from_sync":false,"order":14,"slug":"utilities","title":"Utilities"},"user":"571fa519db52d01700f5cf3d","githubsync":"","__v":0,"parentDoc":null,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2017-06-20T17:19:35.825Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":3,"body":"## Overview\n\nThe SDK Setup describes a list of SDKs and game objects to use.\n\n## Inspector Parameters\n\n * **Auto Populate Object References:** Determines whether the SDK object references are automatically set to the objects of the selected SDKs. If this is true populating is done whenever the selected SDKs change.\n * **Actual Boundaries:** A reference to the GameObject that is the user's boundary or play area, most likely provided by the SDK's Camera Rig.\n * **Actual Headset:** A reference to the GameObject that contains the VR camera, most likely provided by the SDK's Camera Rig Headset.\n * **Actual Left Controller:** A reference to the GameObject that contains the SDK Left Hand Controller.\n * **Actual Right Controller:** A reference to the GameObject that contains the SDK Right Hand Controller.\n * **Model Alias Left Controller:** A reference to the GameObject that models for the Left Hand Controller.\n * **Model Alias Right Controller:** A reference to the GameObject that models for the Right Hand Controller.\n\n## Class Variables\n\n * `public VRTK_SDKInfo systemSDKInfo` - The info of the SDK to use to deal with all system actions. By setting this to `null` the fallback SDK will be used.\n * `public VRTK_SDKInfo boundariesSDKInfo` - The info of the SDK to use to utilize room scale boundaries. By setting this to `null` the fallback SDK will be used.\n * `public VRTK_SDKInfo headsetSDKInfo` - The info of the SDK to use to utilize the VR headset. By setting this to `null` the fallback SDK will be used.\n * `public VRTK_SDKInfo controllerSDKInfo` - The info of the SDK to use to utilize the input devices. By setting this to `null` the fallback SDK will be used.\n * `public SDK_BaseSystem systemSDK` - The selected system SDK.\n * `public SDK_BaseBoundaries boundariesSDK` - The selected boundaries SDK.\n * `public SDK_BaseHeadset headsetSDK` - The selected headset SDK.\n * `public SDK_BaseController controllerSDK` - The selected controller SDK.\n * `public string[] usedVRDeviceNames` - The VR device names used by the currently selected SDKs.\n * `public bool isValid` - Whether it's possible to use the Setup. See `GetSimplifiedErrorDescriptions` for more info.\n\n## Unity Events\n\nAdding the `VRTK_SDKSetup_UnityEvents` component to `VRTK_SDKSetup` object allows access to `UnityEvents` that will react identically to the Class Events.\n\n * All C# delegate events are mapped to a Unity Event with the `On` prefix. e.g. `MyEvent` -> `OnMyEvent`.\n\n## Class Methods\n\n### PopulateObjectReferences/1\n\n  > `public void PopulateObjectReferences(bool force)`\n\n * Parameters\n   * `bool force` - Whether to ignore `autoPopulateObjectReferences` while deciding to populate.\n * Returns\n   * _none_\n\nThe PopulateObjectReferences method populates the object references by using the currently set SDKs.\n\n### GetSimplifiedErrorDescriptions/0\n\n  > `public string[] GetSimplifiedErrorDescriptions()`\n\n * Parameters\n   * _none_\n * Returns\n   * `string[]` - An array of all the error descriptions. Returns an empty array if no errors are found.\n\nThe GetSimplifiedErrorDescriptions method checks the setup for errors and creates an array of error descriptions. The returned error descriptions handle the following cases for the current SDK infos: \n * Its type doesn't exist anymore.  * It's a fallback SDK.  * It doesn't have its scripting define symbols added.  * It's missing its vendor SDK.Additionally the current SDK infos are checked whether they use multiple VR Devices.\n\n### OnLoaded/1\n\n  > `public void OnLoaded(VRTK_SDKManager sender)`\n\n * Parameters\n   * `VRTK_SDKManager sender` - The SDK Manager that has loaded the SDK Setup.\n * Returns\n   * _none_\n\nThe OnLoaded method determines when an SDK Setup has been loaded.\n\n### OnUnloaded/1\n\n  > `public void OnUnloaded(VRTK_SDKManager sender)`\n\n * Parameters\n   * `VRTK_SDKManager sender` - The SDK Manager that has unloaded the SDK Setup.\n * Returns\n   * _none_\n\nThe OnUnloaded method determines when an SDK Setup has been unloaded.","excerpt":"","slug":"vrtk_sdksetup","type":"basic","title":"VRTK_SDKSetup"}
## Overview The SDK Setup describes a list of SDKs and game objects to use. ## Inspector Parameters * **Auto Populate Object References:** Determines whether the SDK object references are automatically set to the objects of the selected SDKs. If this is true populating is done whenever the selected SDKs change. * **Actual Boundaries:** A reference to the GameObject that is the user's boundary or play area, most likely provided by the SDK's Camera Rig. * **Actual Headset:** A reference to the GameObject that contains the VR camera, most likely provided by the SDK's Camera Rig Headset. * **Actual Left Controller:** A reference to the GameObject that contains the SDK Left Hand Controller. * **Actual Right Controller:** A reference to the GameObject that contains the SDK Right Hand Controller. * **Model Alias Left Controller:** A reference to the GameObject that models for the Left Hand Controller. * **Model Alias Right Controller:** A reference to the GameObject that models for the Right Hand Controller. ## Class Variables * `public VRTK_SDKInfo systemSDKInfo` - The info of the SDK to use to deal with all system actions. By setting this to `null` the fallback SDK will be used. * `public VRTK_SDKInfo boundariesSDKInfo` - The info of the SDK to use to utilize room scale boundaries. By setting this to `null` the fallback SDK will be used. * `public VRTK_SDKInfo headsetSDKInfo` - The info of the SDK to use to utilize the VR headset. By setting this to `null` the fallback SDK will be used. * `public VRTK_SDKInfo controllerSDKInfo` - The info of the SDK to use to utilize the input devices. By setting this to `null` the fallback SDK will be used. * `public SDK_BaseSystem systemSDK` - The selected system SDK. * `public SDK_BaseBoundaries boundariesSDK` - The selected boundaries SDK. * `public SDK_BaseHeadset headsetSDK` - The selected headset SDK. * `public SDK_BaseController controllerSDK` - The selected controller SDK. * `public string[] usedVRDeviceNames` - The VR device names used by the currently selected SDKs. * `public bool isValid` - Whether it's possible to use the Setup. See `GetSimplifiedErrorDescriptions` for more info. ## Unity Events Adding the `VRTK_SDKSetup_UnityEvents` component to `VRTK_SDKSetup` object allows access to `UnityEvents` that will react identically to the Class Events. * All C# delegate events are mapped to a Unity Event with the `On` prefix. e.g. `MyEvent` -> `OnMyEvent`. ## Class Methods ### PopulateObjectReferences/1 > `public void PopulateObjectReferences(bool force)` * Parameters * `bool force` - Whether to ignore `autoPopulateObjectReferences` while deciding to populate. * Returns * _none_ The PopulateObjectReferences method populates the object references by using the currently set SDKs. ### GetSimplifiedErrorDescriptions/0 > `public string[] GetSimplifiedErrorDescriptions()` * Parameters * _none_ * Returns * `string[]` - An array of all the error descriptions. Returns an empty array if no errors are found. The GetSimplifiedErrorDescriptions method checks the setup for errors and creates an array of error descriptions. The returned error descriptions handle the following cases for the current SDK infos: * Its type doesn't exist anymore. * It's a fallback SDK. * It doesn't have its scripting define symbols added. * It's missing its vendor SDK.Additionally the current SDK infos are checked whether they use multiple VR Devices. ### OnLoaded/1 > `public void OnLoaded(VRTK_SDKManager sender)` * Parameters * `VRTK_SDKManager sender` - The SDK Manager that has loaded the SDK Setup. * Returns * _none_ The OnLoaded method determines when an SDK Setup has been loaded. ### OnUnloaded/1 > `public void OnUnloaded(VRTK_SDKManager sender)` * Parameters * `VRTK_SDKManager sender` - The SDK Manager that has unloaded the SDK Setup. * Returns * _none_ The OnUnloaded method determines when an SDK Setup has been unloaded.