|
1 | | -This article records the changes to the PICO Unity Integration SDK in version 3.0.5. |
| 1 | +This article records the changes to the PICO Unity Integration SDK in version 3.1.0. |
2 | 2 | ## Download the SDK |
3 | 3 | Download the latest version of the PICO Unity Integration SDK from the [Download](https://developer-global.pico-interactive.com/resources/#sdk) screen. |
4 | 4 | ## What's new |
5 | | -Released on: November 05, 2024 |
| 5 | +Released on: February 18, 2025 |
6 | 6 | Required PICO device's system version: 5.12.0 or later |
7 | 7 | **Add** |
8 | | -| **Module** | **Description** | |
| 8 | +| **Module** | **Details** | |
9 | 9 | | --- | --- | |
10 | | -| General | Added the PICO Building Blocks system, which can help you quickly set up features with one click. The features are either provided by the PICO Unity Integration SDK or Unity itself. | |
11 | | -| Sense Pack | Added the following new semantic labels for Scene Capture: `Curtain`, `Cabinet`, `Bed`, `Plant`, `Screen`, `Refrigerator`, `WashingMachine`, `AirConditioner`, `Lamp`, `WallArt`. | |
12 | | -| Project Validation | Project Validation supports checking whether your project has correctly set up the keystore and key. | |
13 | | -| Input | * Added the `GetControllerStatus` API for retrieving the connection status of controller. <br> * Added the `InputDeviceChanged` event for receiving the notification when the input device (hand poses / controllers) has changed. | |
14 | | -| Spatial Audio | The PICO Spatial Audio Plugin combines the Spatial Mesh capability with spatial audio rendering, allowing virtual sound sources to interact with the user's real environment. | |
15 | | -| Enterprise Service | * Added value `LARGESPACE_MAP_INFO ` to enumeration`SystemInfoEnum`, which is used to get the information of the large space map. <br> * Added the following APIs: <br> * `GetControllerVibrateAmplitude`: Gets the vibration amplitude of controllers; <br> * `SetHMDVolumeKeyFunc`: Sets a functionality for the volume button of the HMD; <br> * `GetHMDVolumeKeyFunc`: Gets the functionality of the volume button of the HMD; <br> * `GetPowerManageMode`: Gets the device's power management mode; <br> * `GetEyeTrackRate`: Gets the frame rate of eye tracking; <br> * `GetTrackFrequency`: Gets the tracking frequency; <br> * `GetDistanceSensitivity`: Gets the device's distance sensing sensitivity; <br> * `GetSpeedSensitivity`: Gets the device's speed sensing sensitivity; <br> * `SetMRCollisionAlertSensitivity`: Sets the device's collision alert sensitivity;l <br> * `GetMRCollisionAlertSensitivity`: Gets the device's collision alert sensitivity; <br> * `ConnectWifi`: Connects to a WiFi; <br> * `SetStaticIpConfigurationtoConnectWifi`: Sets up WifiConfiguration and connects to the WiFi; <br> * `GetSingleEyeSource`: Gets the eye that serves as the image source; <br> * `GetViewVisual`: Gets the device's view mode; <br> * `GetAcceptCastMode`: Gets whether the device accepts screen sharing from the external device; <br> * `GetScreenCastMode`: Gets whether the device allows the sharing of its screen to the external device; <br> * `GetScreenRecordShotRatio`: Gets the aspect ratio for screen recording and screenshots; <br> * `GetScreenResolution`: Gets the resolution for screen recording and screenshots; <br> * `GetScreenRecordFrameRate`:Gets the frame rate for screen recording. | |
16 | | -**Bugfix** |
17 | | - |
18 | | -* Fixed the issue that the controllers' battery level couldn't be updated immediately after switching between controllers and hand poses for input. |
19 | | -* Fixed the issue that the battery level of the left controller was incorrectly displayed as that of the right controller. |
| 10 | +| General | Supported the macOS operating system. | |
| 11 | +| | Supported Unity 6. | |
| 12 | +| | Supported XR Interaction Toolkit 3.x. | |
| 13 | +| | Supported AR Foundation 6.0. | |
| 14 | +| Project Validation | The [Project Validation](/document/unity/project-validation/) functionality supported validating the following: <br> <br> * Whether the "Write Permission" parameter is set to "External( SDCard)" and Android API's version is later than 32. <br> * Whether the current Unity version being used is supported by the current version of SDK. <br> * Whether the URP package has been downloaded but not configured or used. If so, an error will be reported. <br> * When URP is enabled, check whether the Main Camera in the current scene has Video Seethrough set and whether post processing has been enabled for the Main Camera. If both conditions are met, an error will be reported. <br> * Whether the Fixed Foveated Rendering functionality is enabled while using URP. If so, an error will be reported. <br> * Whether the "Target Architectures" parameter is set to "ARM64" and the "Scripting Backend" parameter is set to "IL2CPP". If not, an error will be reported. <br> * When Application SpaceWarp (AppSW) is enabled, check whether the current Unity version is 2021 LTS or later. If not, an error will be reported. <br> * Whether the number of composition layers in the current scene exceeds 7, which is the supported maximum. If so, an error will be reported. <br> * Whether the number of composition layers in the current scene exceeds 4, which is the recommended number. If so, an error will be supported. <br> * When the Late Latching functionality is enabled, check whether the current Unity version is 2021.3.19f or later and is earlier than 2022. <br> * Whether composition layers and the Late Latching functionality are used simultaneously in the current project. <br> * Whether the Super Resolution and Subsampling functionalities are used simultaneously in the current project. <br> * Whether the Sharpening and Subsampling functionalities are used simultaneously in the current project. <br> * When the current project uses Unity 6, URP, OpenGLES, and Multipass, check whether MSAA is disabled. If it is not disabled, an error will be reported. <br> * If the current project uses Vulkan and MRC, check whether the "Color Space" parameter is set to "Linear". If not, an error will be reported. | |
| 15 | +| Rendering | Supported enabling Super Resolution, Subsampling, and Sharpening for compostion layers. For more information, refer to [this article](/document/unity/enable-supersampling-sharpening-and-super-resolution-for-composition-layers). | |
| 16 | +| Sense Pack | * [Spatial Anchor](/document/unity/spatial-anchors/): <br> * Added the PXR_Spatial Anchor (Script) component for easier management of spatial anchors' lifecycle, including creating, updating, persisting anchors, and more. <br> * Added the `QuerySpatialAnchorObjectsAsync`API to query the GameObjects that have the PXR_Manager (Script) component added to them. <br> * Added the SpatialAnchor prefab for easier creation of spatial anchors. <br> * [Scene Capture](/document/unity/scene-capture/): Added the PXR_Scene Capture Manager (Script) component for easier integration of the Scene Capture functionality. This component also supports previewing scene capture data using a JSON file generated by the "Room Capture" app. <br> * [Spatial Mesh](/document/unity/spatial-mesh/): The PXR_Spatial Mesh Manager (Script) component is updated as follows:: <br> * Supported configuring callback functions for Unity Event. <br> * Supported customizing colors for spatial meshes. | |
| 17 | +| Building Blocks | [PICO Building Blocks system](/document/unity/pico-building-blocks/) is updated as follows: <br> <br> * Supported setting up PICO's Body Tracking, Body Tracking Debug, and Object Tracking functionalities with one click. <br> * Supported XR Interaction Toolkit 3.0. | |
| 18 | +| Enterprise Service | Added the following APIs, which only supports PICO 4 Ultra Enterprise: <br> <br> * `OpenCameraAsyncfor4U`: Opens the camera. After the camera is opened, you can use the APIs for retrieving camera data and more. <br> * `Configurefor4U`: Configures camera parameters. <br> * `Configurefor4U`: Uses the default camera settings. The default frame rate is 60fps. <br> * `StartPreviewfor4U`: Renders content to the specified surface with the specified PXRCaptureRenderMode. <br> * `SetCameraFrameBufferfor4U`: Sets a frame buffer for the camera. The frame buffer is used to store image data with specified width and height. <br> * `StartGetImageDatafor4U`: Starts getting image data with the specified PXRCaptureRenderMode. <br> * `CloseCamerafor4U`: Closes the camera. <br> * `GetCameraIntrinsicsfor4U`: Gets the values of the intrinsic parameters (cx, cy, fx, fy) for the camera. These values are calculated based on the width, height, horizontal FOV, and vertical FOV you specify. <br> * `GetCameraExtrinsicsfor4U`: Gets the extrinsic parameters for the camera. <br> * `GetCameraParametersNewfor4U`: Gets the values of the cameras' intrinsic and extrinsic parameters. The values are calculated based on the width and height you specify. | |
| 19 | +**Change** |
| 20 | +| **Module** | **Details** | |
| 21 | +| --- | --- | |
| 22 | +| General | The SDK only supports developing 64-bit apps. | |
| 23 | +| | The "PXR_SDK" option on the top menu bar is changed to "PICO". | |
| 24 | +| Interaction | [Tracking Origin](/document/unity/tracking-origin/): The "Stage Mode" checkbox on the PXR_Manager (Script) panel is checkable only when the "Tracking Origin Mode" parameter is set to "Floor". | |
| 25 | +**Known issues** |
| 26 | +For Unity 2022 and above, if you are using OpenGLES and MultiView in your project and have added the Universal Render Pipeline but are not using it, you should actively remove the URP package, remove the current light and add a new one. Otherwise, the app may crash during runtime. |
0 commit comments