- About XR
- XR Unity SDK
- XR SDK Release Notes
- Version:1.0.3
- Version:1.0.2
- Version:1.0.1
- Version:1.0.0
- Version:0.9.59
- Version:0.9.58
- Version:0.9.57
- Version:0.9.56
- Version:0.9.55
- Version:0.9.54
- Version:0.9.53
- Version:0.9.52
- Version:0.9.51
- Version:0.9.38
- Version:0.9.37
- Version:0.9.34
- Version:0.9.33
- Version:0.9.32
- Version:0.9.31
- Version:0.9.30
- Version:0.9.24
- Version:0.9.23 Beta
XR SDK Release Notes¶
Version List
Version:1.0.3¶
Update:2020/10/22
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
Not been triggered: XREvent.OnBoundaryCollision, XREvent.OnSeethroughVisibilityChange.
IK doesn’t work in recent ROM version.
VRCore¶
Add XR-BuildConfig.asset in XR folder for setting build config.
If you can’t find XR-BuildConfig.asset, you can create by right clicking on Project window and select Create/XRSDK/Create build config.
In XR-BuildConfig.asset, exported should be false if this apk file will submit for review. This will make app only available in MANOVA.
In XR-BuildConfig.asset, check supported device options in your app. It will be reviewed when submit.
Version:1.0.2¶
Update:2020/10/19
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
Not been triggered: XREvent.OnBoundaryCollision, XREvent.OnSeethroughVisibilityChange.
IK doesn’t work in recent ROM version.
VRCore¶
Add category and exported in AndroidManifest.xml. Be sure that android:exported = false will make app couldn’t open in launcher. Please open your app in MANOVA after updating ROM upper than
1.12.1971.15.DEV
.
Bug Fix¶
Fix controller rotation in XRHandlerData.
Version:1.0.1¶
Update:2020/10/13
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
Not been triggered: XREvent.OnBoundaryCollision, XREvent.OnSeethroughVisibilityChange.
Bug Fix¶
Fix sample hide hand unexpectedly.
Version:1.0.0¶
Update:2020/10/08
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
Not been triggered: XREvent.OnBoundaryCollision, XREvent.OnSeethroughVisibilityChange.
Bug Fix¶
Fix if Raycaster.UseRaycast not checked, teleport will work not correctly.
Fix null reference while ray casting.
Fix teleport effect origin postision.
VRCore¶
Add minVersion and targetVersion in AndroidManifest.xml.
InputDevice¶
Update raycaster’s stable point and pivot point algorithm.
Change hand position’s origin form camera to XRManager.
Add script: PunchGame, For tracker and IK sample.
Add prefab: XRManagerWithHandler, To combined manager and handler together.
Add script: XRIKSolver, Contains IK input function.
Add script: XRIKData, Contains IK output data.
Version:0.9.59¶
Last Update:2020/07/13
ROM:2020/07/03
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
Bug Fix¶
Fix drag doesn’t trigger pointerUp issue.
Fix release trigger by gesture index issue.
Fix ray cast through IME keyboard.
VRCore¶
Device will reboot when VR mode can’t start.
XRManager provides TrackPositionScale in settings for changing environment unit.
IME¶
XRIMEKeyBoard provides IsPressTriggerButton on inspector for setting press or click will trigger button event in IME keyboard.
Version:0.9.58¶
Last Update:2020/07/02
ROM:2020/07/03
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
Bug Fix¶
Fix object can’t be grabbed when hand too close.
Fix suggestion be cleared in Traditional Chinese keyboard when pressing white space.
Fix teleport distance block by max degree.
Fix null reference exception when calling XRIMEEventSystem.ActiveIme(false) without keyboard open.
Fix controller’s beam stock on origin when no raycast target.
Fix action Release and IndexUp doesn’t triggered in some case.
VRCore¶
Add new event XREvent.OnSeethroughVisibilityChange when seethrough open and close.
Add new prefab XRManagerWithHandler combine XRManager and XRHandler together.
XRInputManager provides VibrateStart and VibrateStop for continuous vibration. This will support in next ROM version.
Handler¶
Change teleport method without calling recenter in process.
XRHandRaycaster provides DragScaleCoeff for drag distance multiplication.
XRCTLRaycaster provides ScrollThrehold for UI OnScroll event triggered.
XRCTLRaycaster provides ScrollSensitive for UI OnScroll value multiplication.
IME¶
Clear suggestion when close keyboard.
Remote¶
XRVrRemote provides method goToHome to leave app.
Version:0.9.57¶
Last Update:2020/05/25
ROM:2020/05/27
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
Bug Fix¶
Let controller raycaster process event camera.
Fix release failed issue if grabbed object has no rigidbody.
Fix camera block doesn’t disappear when 6dof is recoverd.
IME¶
Trigger area on IME button is bigger than the icon.
System¶
New feature
XRInputManager provides property GestureFilter for setting which gestures will pass from XRSDK.
Handler¶
Add ValidTerrianMask and InvalidTerrianMask in XRHandRaycaster and XRCTLRaycaster.
New API¶
XRSpace.Platform.InputDevice.XRInputManager
XRBasicGestureFilter GestureFilter
Set which gestures will pass from XRSDK. Relative APIs such as
XRHandlerGesture Gesture(XRDeviceType deviceType)
XRHandlerGesture XRHandlerData.Gesture
XRDeviceCallback event
XRActionGestureManager event
XRSpace.Platform.InputDevice.XRBasicGestureFilter
The basic gesture filter contains all gesture defined in enum XRHandlerGesture. You can design your own filter by inheriting this class and assigning to XRInputManager.
protected IList<XRHandlerGesture> InterestedGestureList
Only gestures in list will pass from XRSDK.
protected XRHandlerGesture DefaultGesture
Default gesture pass from XRSDK if gesture doesn’t match in InterestedGestureList.
protected bool FollowLastGesture
If you want to get gesture as last gesture when gesture doesn’t match in InterestedGestureList. Set it true, otherwise false.
When there’s a gesture detected from system, filter will check in InterestedGestureList and return it. Second, check FollowLastGesture is true and return last gesture. Finally, return DefaultGesture.
Version:0.9.56¶
Last Update:2020/05/12
ROM:2020/05/13
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
Bug Fix¶
Fix handler disappears after power menu selection issue.
Fix controller can’t teleport in beach’s wooden floor issue.
Fix overlay hand disappear due to object destroyed.
Fix IME Chinese keyboard suggestion remove all characters and tones.
Fix IME focus loss in some cases.
Fix IME fps drop down issue due to too much log.
Fix core service unbind issue. This will cause any function not work like factory reset, volume bar, power menu etc.
VRCore¶
Pico button on headset will trigger headset recenter.
Add a new event XREvent.OnRecenterTrackingFinish triggered after headset recenter finished.
New API¶
XRSapce.Platfrom.VRCore.XREvent.OnRecenterTrackingFinish
Event triggered after any time headset recenter finished.
Version:0.9.55¶
Last Update:2020/04/28
ROM:2020/04/29
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
Bug Fix¶
Fix overlay controller recenter rotation bug.
VRCore¶
Display will change to seethrough when out of boundary. Seethrough needs unity’s layer 27, 28 and 29. Don’t use layers greater than or equal to 27. The anti aliasing and camera mask will change when seethrough display and restore it when close.
Version:0.9.54¶
Last Update:2020/04/16
ROM:2020/04/15
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
Suggestion will not work in Tradition Chinese if first word is tone letter.
Bug Fix¶
Fix BeamRender with wrong direction.
Fix overlay BeamRender start point position.
Disable hand rotation when using keyboard.
Core¶
New Feature
XREvent provides event OnCameraBlock and OnCameraUnBlock to represent the environment is suitable or not.
IME¶
New Feature
IME refactor in new version. API has some change below. Old IME version move to namespace XRSpace.Platform.IME.Legacy. Old IME version prefab rename to XRIME(Legacy).prefab.
New API¶
XRSapce.Platfrom.VRCore.XREvent
static event Action<XRStatus> OnCameraBlock
Event triggered when environment is not suitable. Reasons may be less feature count, low light, bright light or camera calibration.
static event Action OnCameraUnBlock
Event triggered when environment is suitable.
XRSpace.Platform.IME.XRIMEEventSystem
static event Action OnBeginIME
Event triggered when keyboard open.
static event Action OnEndIME
Event triggered when keyboard close.
static event Action OnIMEEnter
Event triggered when enter button click.
static event Action<string> OnKeyCodeTrigger
Event triggered when button click. The parameter string is the word been entered.
static event Action<int, string> OnReplaceKeyTrigger
Event triggered when suggestion button click. The first parameter is the count of letters been replaced. The second parameter is the word added.
static event Action<StringBuilder, string> OnUpdateSuggestionString
Event triggered when UpdateSuggestionString been called.
static void ActiveIme(bool isActive)
Open keyboard if parameter is true. Close keyboard if parameter is close.
static void TriggerKeyCode(string keyCode)
Trigger click keyboard button. The parameter is the string entered.
static void TriggerReplaceKey(int length, string keyCode)
Trigger click suggestion button. The first parameter is the count of letters should be replaced. The second parameter is the string entered.
static void UpdateSuggestionString(StringBuilder currentStr, string addStr)
Trigger get new suggestion
Version:0.9.53¶
Last Update:2020/04/23
ROM:2020/04/21
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
System¶
XRInputManager
Add API: OnInputDataUpdate, it will trigger when the Inputdata been changed.
XREvent
Add API: OnSystemMenuVisibilityChange, it will return true/false when the system meun is open/close.
IME¶
Update new IME keyboard.
Provide traditional Chinese keyboard.
Version:0.9.52¶
Last Update:2020/03/27
ROM:2020/03/25
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Known Issue¶
IME can’t work in editor now.
Bug Fix¶
Fix IME fps drop suddenly when type word.
Fix rotation change when teleport in Unity editor.
Fix handler teleport raycaster check obstacle object error.
Sample¶
Add FPS on display.
Handler¶
Add new prefabs. Separating XRHandler into Raycaster and Model if you want to use it in different way.
Real hand rotation work on XRHandler now.
IME¶
Inputfield can select a region and replace now.
Version:0.9.51¶
Last Update:2020/02/27
ROM:2020/02/26
Known Issue¶
IME can’t work in editor now.
Bug Fix¶
Fix unity Debug filter setting override by sdk error.
Sample¶
New sample contains UI and gameObject interaction.
Handler¶
New integrated XRHandler release, contains feature below:
XRHandler prefab provides controller and hand motion, animation, raycast effect and beam effect. You can use this prefab directly or use components below by yourself.
XRCTLRaycaster provides raycaster of controller, including UIRaycaster, ObjectRaycaster and Teleport.
XRHandRaycaster provides raycaster of hand, including UITouch, UIRaycaster, ObjectRaycaster and Teleport.
TeleportEffectControl provides the effect of controller’s and hand’s teleport beam.
XRGestureAnimation provides hand model gesture animation control.
Hand motion become more stable.
XRActionGesture provides handler gesture switch event detection. You can use this easily in component by using XRActionGestureHandler.
Hand gesture provides fist, index and palm inward.
IME¶
New style IME keyboard provides in prefab with button click sounds.
IME can insert text.
Version:0.9.38¶
Last Update:2020/01/17
ROM:2019/12/18
Environment¶
Orientation: Landscape Left
SDK tool: 26.1.1
Build tool: 27.0.3
Min SDK: 25
Max SDK: 27
Target SDK: 27
Bug Fix¶
Fix UnityEngine.Debug.Log block in unity editor.
Version:0.9.37¶
Last Update:2019/12/16
ROM:2019/12/18
Bug Fix¶
Fix modify on camera’s near, far, field of view not work.
Fix XRCTLReceiver’s raycast mask can’t modify error.
Fix XRTrackerData PredictPose wrong value.
Handler¶
New feature: PositionConfidence present the hand data is reliable or not.
Version:0.9.33¶
Last Update:2019/10/29
ROM:2019/10/30
Bug Fix¶
Fix raycast sorting bug in Unity case 912396 which may cause ray target to the farther object.
System¶
DebugInfo display UTC time.
Known Issue¶
Hand shaking in XRSDKSample app is due to hand rotation raw data which is still under testing. This will not impact Runtime SDK samples, prefabs, and the applications that build on top of Runtime SDK.
Version:0.9.32¶
Last Update:2019/10/24
ROM:2019/10/23
Bug Fix¶
Fix Button can’t be click in scroll view.
System¶
DebugInfo display more info about XRManager’s global position, head’s and eye’s local position and eye’s field of view.
Sample¶
Remove Scene SampleMain.
Each sample contains XRManager and XRHandler now.
Version:0.9.31¶
Last Update:2019/10/18
ROM:2019/10/16
Bug Fix¶
Fix debug info panel flashing in some case.
Type word by hand is much easier now.
Version:0.9.30¶
Last Update:2019/10/16
ROM:2019/10/16
System¶
XRHeadsetData provides CPU and GPU info about clock and usage.
There’s a new component XRBaseRaycaster. XRInputModule handle all components extends XRBaseRaycaster.
XRBaseRaycaster has three part can override by developer. Method Raycast determine the raycast result. IsPress determine the button state. IsDrag determine what time trigger drag event.
Headset¶
XRHeadsetData provides CPU and GPU info about clock and usage.
Handler¶
Hand can interact with UI element using index finger touch.
Hand has x,z axis rotation and certain angle in y axis. (Experimental! only for testing)
Version:0.9.24¶
Last Update : 2019/09/26
ROM:2019/09/25
System¶
Fix left eye foveation not work issue in multithread.
Remove streamingAssets folder.
IME¶
Methods IME_KeyBoardOn and IME_KeyBoardOff in XRIMEManager to open and close keyboard.
Fix IME null reference exception in some cases.
Version:0.9.23 Beta¶
Last Update : 2019/09/11
ROM:2019/09/06
System¶
XRManager
Perform 6Dof head tracking, stereo rendering and SDK settings.
SDK version display on inspector.
XREvent
All system event callback can be registered from XREvent.
XRInputManager
Get the raw data and information of all Inputs .
XRRaycaster
Provides position and direction of a Raycast for XRInputModule.
XRInputModule
Trigger event callback from Unity EventSystem.
Headset¶
XRHeadsetData
All headset related information.
Handler¶
Automatically detect hand or controller status and event callback.
XRHandlerData
All handler related information.
Tracker¶
Tracker will provide in future.
IME¶
Currently provide English version.