上传YomovSDK

This commit is contained in:
Sora丶kong
2026-03-03 03:15:46 +08:00
parent 9096da7e6c
commit eb97f31065
6477 changed files with 1932208 additions and 3 deletions

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d1c4b2764d477254f8c202767058aaa9
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,83 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Blue
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.024258733, g: 0.21611828, b: 1, a: 0.30588236}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: faf9d48f6205bfa45a98ff473c3f7efa
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,90 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Line
m_Shader: {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _ColorMask: 15
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _UVSec: 0
- _UseUIAlphaClip: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 0, b: 0, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4dafd9aaf9c094f4c97c31798b54b19c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,79 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: green
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _ALPHAPREMULTIPLY_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 10
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 3
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 0
m_Colors:
- _Color: {r: 0.4091123, g: 0.6603774, b: 0.246529, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 78c12598dec6eeb4cba86a42b82bd8a9
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,83 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: red
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.9622642, g: 0.05057721, b: 0.05057721, a: 0.2627451}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1d3262428c068ee45b76f6d3de12a55f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,83 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: white
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 65c222d19c598ee4b86f25e57c0bae1c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,43 @@
{
"name": "PICO.TobSupport",
"rootNamespace": "",
"references": [
"Unity.XR.PICO.Editor",
"Unity.XR.Interaction.Toolkit",
"Unity.XR.PICO",
"Unity.XR.OpenXR.Features.PICOSupport.Editor",
"Unity.XR.OpenXR.Features.PICOSupport",
"Unity.XR.OpenXR",
"Unity.XR.CompositionLayers"
],
"includePlatforms": [],
"excludePlatforms": [],
"allowUnsafeCode": true,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": [
{
"name": "com.unity.xr.picoxr",
"expression": "",
"define": "PICO_XR"
},
{
"name": "com.unity.xr.interaction.toolkit",
"expression": "[2.4.0,3.0.0]",
"define": "XRI_240"
},
{
"name": "com.unity.xr.interaction.toolkit",
"expression": "3.0.0",
"define": "XRI_300"
},
{
"name": "com.unity.xr.compositionlayers",
"expression": "",
"define": "UNITY_XR_COMPOSITIONLAYERS"
}
],
"noEngineReferences": false
}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: a05f97a00c39aae4eb34d2096b29acb1
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 14d1111b5b03c1e4eb309520d920427e
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: dcf376cf596c0544e9458455d36a8046
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,419 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &5801233412899400197
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5801233412899400196}
- component: {fileID: 5801233412899400201}
- component: {fileID: 5801233412899400202}
- component: {fileID: 5801233412899400203}
m_Layer: 0
m_Name: Z
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5801233412899400196
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233412899400197}
m_LocalRotation: {x: 0.7071068, y: -0, z: -0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 1}
m_LocalScale: {x: 0.1, y: 1, z: 0.10000001}
m_Children: []
m_Father: {fileID: 5801233414872731675}
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
--- !u!33 &5801233412899400201
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233412899400197}
m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &5801233412899400202
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233412899400197}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: faf9d48f6205bfa45a98ff473c3f7efa, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!136 &5801233412899400203
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233412899400197}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
m_Radius: 0.5
m_Height: 2
m_Direction: 1
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &5801233413528250447
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5801233413528250446}
- component: {fileID: 5801233413528250451}
- component: {fileID: 5801233413528250444}
- component: {fileID: 5801233413528250445}
m_Layer: 0
m_Name: Y
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5801233413528250446
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413528250447}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 1, z: 0}
m_LocalScale: {x: 0.1, y: 1, z: 0.1}
m_Children: []
m_Father: {fileID: 5801233414872731675}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &5801233413528250451
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413528250447}
m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &5801233413528250444
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413528250447}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 78c12598dec6eeb4cba86a42b82bd8a9, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!136 &5801233413528250445
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413528250447}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
m_Radius: 0.5
m_Height: 2
m_Direction: 1
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &5801233413549260807
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5801233413549260806}
- component: {fileID: 5801233413549260811}
- component: {fileID: 5801233413549260804}
- component: {fileID: 5801233413549260805}
m_Layer: 0
m_Name: X
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5801233413549260806
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413549260807}
m_LocalRotation: {x: -0, y: -0, z: 0.7071068, w: 0.7071068}
m_LocalPosition: {x: 1, y: 0, z: 0}
m_LocalScale: {x: 0.10000001, y: 1, z: 0.1}
m_Children: []
m_Father: {fileID: 5801233414872731675}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90}
--- !u!33 &5801233413549260811
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413549260807}
m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &5801233413549260804
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413549260807}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 1d3262428c068ee45b76f6d3de12a55f, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!136 &5801233413549260805
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413549260807}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
m_Radius: 0.5
m_Height: 2
m_Direction: 1
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &5801233413884351097
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5801233413884351096}
- component: {fileID: 5801233413884351101}
- component: {fileID: 5801233413884351102}
- component: {fileID: 5801233413884351103}
m_Layer: 0
m_Name: Cube
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5801233413884351096
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413884351097}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.2, y: 0.2, z: 0.2}
m_Children: []
m_Father: {fileID: 5801233414872731675}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &5801233413884351101
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413884351097}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &5801233413884351102
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413884351097}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 1d3262428c068ee45b76f6d3de12a55f, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!65 &5801233413884351103
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233413884351097}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1, y: 1, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &5801233414872731668
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5801233414872731675}
m_Layer: 0
m_Name: AnchorObject
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5801233414872731675
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5801233414872731668}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -7.3, y: 1.2, z: 2.65}
m_LocalScale: {x: 0.1, y: 0.1, z: 0.1}
m_Children:
- {fileID: 5801233413884351096}
- {fileID: 5801233413549260806}
- {fileID: 5801233413528250446}
- {fileID: 5801233412899400196}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 04a9c969c46f56240a28811e3207db51
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3ffe22b91e472494ba5839b89e0076fe
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 491cc602739859c45a1c57ecacee1c75
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: fc18359004abe7c4e87aae3065f3c2d4
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 685f95f93c2d03c46afbc63a27fdb64c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 112000000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,130 @@
fileFormatVersion: 2
guid: 8529bcf1fa2b8f740af2243539e6288d
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 1
seamlessCubemap: 1
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: 0
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 2
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 100
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,225 @@
#if !PICO_XR
using System;
using System.Collections;
using System.Linq;
using System.Runtime.InteropServices;
using Unity.XR.OpenXR.Features.PICOSupport;
using Unity.XR.PICO.TOBSupport;
using UnityEngine;
using UnityEngine.UI;
#if UNITY_XR_COMPOSITIONLAYERS
using Unity.XR.CompositionLayers;
using Unity.XR.OpenXR.Features.PICOSupport;
using UnityEngine.XR.OpenXR.CompositionLayers;
#endif
public class EnterpriseAPI_OpenXR : MonoBehaviour
{
private string tag = "CaptureLib ----";
#if UNITY_XR_COMPOSITIONLAYERS
private CompositionLayer _overlay = null;
#endif
private PXRCaptureRenderMode Mode = PXRCaptureRenderMode.PXRCapture_RenderMode_LEFT;
byte[] imgByte ;
private int width=2048;
private int height=1536;
public Material videoMaterial;
public Transform FrameTarget;
public Transform RenderTarget;
public Text CanshuText;
public Toggle showtime;
public Text showtimeText;
private bool isRuning=false;
// 将视频帧转换为 Unity 纹理
Texture2D texture;
public Text fpsText;
private void Awake()
{
Debug.Log($"{tag} Awake ");
PassthroughFeature.EnableVideoSeeThrough=true;
#if UNITY_XR_COMPOSITIONLAYERS
_overlay = GetComponent<CompositionLayer>();
if (_overlay == null)
{
_overlay = gameObject.AddComponent<CompositionLayer>();
}
#endif
imgByte = new byte[width*height*4];
texture = new Texture2D((int)width, (int)height, TextureFormat.RGBA32, false);
videoMaterial.SetTexture("_MainTex", texture);
PXR_Enterprise.Configurefor4U();
PXR_Enterprise.OpenCameraAsyncfor4U(ret =>
{
Debug.Log($"{tag} OpenCameraAsync ret= {ret}");
});
}
public void SetTrackingMode(int listChoice)
{
Debug.Log($"{tag} SetMode ret= {listChoice}");
// if (listChoice > 0)
{
switch (listChoice)
{
case 0:
Mode = PXRCaptureRenderMode.PXRCapture_RenderMode_LEFT;
break;
case 1:
Mode = PXRCaptureRenderMode.PXRCapture_RenderMode_RIGHT;
break;
case 2:
Mode = PXRCaptureRenderMode.PXRCapture_RenderMode_3D;
break;
case 3:
Mode = PXRCaptureRenderMode.PXRCapture_RenderMode_Interlace;
break;
}
}
}
float outputFovHorizontal=76.35f;
float outputFovVertical=61.05f;
public void getCameraParameters()
{
Debug.Log($"{tag} getCamera ");
double[] CameraIntrinsics=PXR_Enterprise.GetCameraIntrinsicsfor4U(width, height, outputFovHorizontal, outputFovVertical);
PXR_Enterprise.GetCameraExtrinsicsfor4U(out Matrix4x4 leftExtrinsics, out Matrix4x4 rightExtrinsics);
Debug.Log($"getCamera-- GetCameraIntrinsics:[{CameraIntrinsics[0]},{CameraIntrinsics[1]},{CameraIntrinsics[2]},{CameraIntrinsics[3]}]");
Debug.Log(tag+"getCamera-- GetCameraExtrinsics leftExtrinsics :\n"+leftExtrinsics);
Debug.Log(tag+"getCamera-- GetCameraExtrinsics rightExtrinsics :\n"+rightExtrinsics);
RGBCameraParamsNew param = PXR_Enterprise.GetCameraParametersNewfor4U(width, height);
// Debug.Log($"getCamera GetCameraIntrinsics:[{param.cx},{param.cy},{param.fx},{param.fy}]");
// Debug.Log($"getCamera GetCameraExtrinsics leftExtrinsics::[{param.l_pos} ------ {param.l_rot}]");
// Debug.Log($"getCamera GetCameraExtrinsics rightExtrinsics::[{param.r_pos} ------ {param.r_rot}]");
CanshuText.text = $"外参::[{param.l_pos} ------ {param.l_rot}]\n"+$" [{param.r_pos} ------ {param.r_rot}]";
}
public void StartPreview()
{
Debug.Log($"{tag} StartPreview ");
FrameTarget.position = new Vector3(0,0,0);
FrameTarget.rotation = Quaternion.Euler(0,0,0);
RenderTarget.position = new Vector3(0,0,0);
RenderTarget.rotation = Quaternion.Euler(0,0,0);
#if UNITY_XR_COMPOSITIONLAYERS
_overlay.enabled = true;
StartCoroutine(_StartPreview());
#endif
}
#if UNITY_XR_COMPOSITIONLAYERS
private IEnumerator _StartPreview()
{
IntPtr surface = IntPtr.Zero;
yield return new WaitUntil(() =>
{
surface = OpenXRLayerUtility.GetLayerAndroidSurfaceObject(_overlay.GetInstanceID());
PXR_Enterprise.StartPreviewfor4U(surface,Mode);
return (surface != IntPtr.Zero);
});
}
#endif
public float showTime = 1f;
private int count = 0;
private float deltaTime = 0f;
public void StartGetImageData()
{
Debug.Log($"{tag} StartGetImageData ");
#if UNITY_XR_COMPOSITIONLAYERS
_overlay.enabled = false;
#endif
IntPtr data=Marshal.UnsafeAddrOfPinnedArrayElement(imgByte,0);
PXR_Enterprise.SetCameraFrameBufferfor4U(width,height,ref data, (Frame frame) =>
{
// Debug.Log($"{tag} sensorState position:[{frame.sensorState.globalPose.position.x},{frame.sensorState.globalPose.position.y},{frame.sensorState.globalPose.position.z}]," +
// $" orientation:[{frame.sensorState.globalPose.orientation.x},{frame.sensorState.globalPose.orientation.y},{frame.sensorState.globalPose.orientation.z},{frame.sensorState.globalPose.orientation.w}] ");
// FrameTarget.position=frame.pose.position;
// FrameTarget.rotation = frame.pose.rotation;
// FrameTarget.position = new Vector3(frame.pose.position.x, frame.pose.position.y, -frame.pose.position.z);
// FrameTarget.rotation = new Quaternion(frame.pose.rotation.x, frame.pose.rotation.y, -frame.pose.rotation.z, -frame.pose.rotation.w);
FrameTarget.position = frame.pose.position;
FrameTarget.rotation = frame.pose.rotation;
if (showtime.isOn)
{
showtimeText.text = frame.timestamp+"";
}
else
{
showtimeText.text = frame.timestamp+"";
texture.LoadRawTextureData(imgByte);
texture.Apply();
}
Debug.Log($"{tag} imageAvailable ");
Debug.Log($"{tag} onImageAvailable cameraFramePredictedDisplayTime = "+frame.timestamp +" Time.deltaTime:"+Time.deltaTime);
Debug.Log($"{tag} onImageAvailable size = "+frame.datasize);
count++;
});
Debug.Log($"{tag} StartGetImageData Mode= {Mode}");
bool ret=PXR_Enterprise.StartGetImageDatafor4U(Mode, width, height);
isRuning=true;
Debug.Log($"{tag} StartGetImageData ret= {ret}");
}
public void Release()
{
PXR_Enterprise.CloseCamerafor4U();
isRuning=false;
}
private double time = 0;
private SensorState a;
private void Update()
{
deltaTime += Time.deltaTime;
if (deltaTime >= showTime) {
if (count>0)
{
float fps = count / deltaTime;
float milliSecond = deltaTime * 1000 / count;
string strFpsInfo = string.Format("当前每帧渲染间隔:{0:0.0} ms ({1:0.} 帧每秒)", milliSecond, fps);
fpsText.text = strFpsInfo;
}
count = 0;
deltaTime = 0f;
}
if (reopen)
{
reopen = false;
PXR_Enterprise.StartGetImageDatafor4U(Mode, width, height);
isRuning=true;
}
time= PXR_Enterprise.GetPredictedDisplayTime();
a=PXR_Enterprise.GetPredictedMainSensorState(time,false);
RenderTarget.position = a.pose.position;
RenderTarget.rotation = a.pose.rotation;
// RenderTarget.position = new Vector3(a.pose.position.x, a.pose.position.y, -a.pose.position.z);
// RenderTarget.rotation = new Quaternion(a.pose.rotation.x, a.pose.rotation.y, -a.pose.rotation.z, -a.pose.rotation.w);
}
static bool reopen = false;
private void OnApplicationPause(bool pauseStatus)
{
if (isRuning)
{
// PXR_Enterprise.SetRunningState(pauseStatus);
if (pauseStatus)
{
PXR_Enterprise.CloseCamerafor4U();
}
else
{
PXR_Enterprise.OpenCameraAsyncfor4U(ret =>
{
Debug.Log($"{tag} OpenCameraAsync reopen= {ret}");
reopen = ret;
});
}
}
}
}
#endif

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: ed1e10c5fb5ae544595d9c223445b3c9
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0b33a1a488ac657409feee39a1e8715f
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5ae7139eb33276844be313c61d8bae89
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,131 @@
#if !PICO_XR
using System;
using System.Collections;
#if UNITY_XR_COMPOSITIONLAYERS
using Unity.XR.CompositionLayers;
using Unity.XR.CompositionLayers.Extensions;
using UnityEngine.XR.OpenXR.CompositionLayers;
#endif
using Unity.XR.PICO.TOBSupport;
using UnityEngine;
using UnityEngine.UI;
public class VirtualDisplayDemo_OpenXR : MonoBehaviour
{
private string tag = "VirtualDisplayDemo ----";
#if UNITY_XR_COMPOSITIONLAYERS
private CompositionLayer _overlay = null;
private TexturesExtension _sourceTextures = null;
#endif
public Text mylog;
private bool isBind = false;
private int displayId = -1;
public const int VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR = 16;
public const int VIRTUAL_DISPLAY_FLAG_OWN_CONTENT_ONLY = 8;
public const int VIRTUAL_DISPLAY_FLAG_PRESENTATION = 2;
public const int VIRTUAL_DISPLAY_FLAG_PUBLIC = 1;
public const int VIRTUAL_DISPLAY_FLAG_SECURE = 4;
public const int SOURCE_KEYBOARD = 257;
public const int ACTION_DOWN = 0;
public const int ACTION_UP = 1;
public const int ACTION_MOVE = 2;
int KEYCODE_BACK = 4;
private void Awake()
{
#if UNITY_XR_COMPOSITIONLAYERS
_overlay = GetComponent<CompositionLayer>();
if (_overlay == null)
{
_overlay = gameObject.AddComponent<CompositionLayer>();
}
#endif
PXR_Enterprise.InitEnterpriseService();
}
public void showLog(string log)
{
Debug.Log(tag + log);
mylog.text = log;
}
// Start is called before the first frame update
void Start()
{
showLog("tobDemo:start");
PXR_Enterprise.BindEnterpriseService(b =>
{
showLog("Bind绑定的返回值测试" + b);
isBind = true;
PXR_Enterprise.SwitchSystemFunction(
(int)SystemFunctionSwitchEnum.SFS_BASIC_SETTING_SHOW_APP_QUIT_CONFIRM_DIALOG, (int)SwitchEnum.S_OFF,
b =>
{
// showLog("SFS_BASIC_SETTING_SHOW_APP_QUIT_CONFIRM_DIALOG" + b);
});
int flags = VIRTUAL_DISPLAY_FLAG_PUBLIC;
flags |= 1 << 6; //DisplayManager.VIRTUAL_DISPLAY_FLAG_SUPPORTS_TOUCH
flags |= 1 << 7; //DisplayManager.VIRTUAL_DISPLAY_FLAG_ROTATES_WITH_CONTENT
flags |= 1 << 8; //DisplayManager.VIRTUAL_DISPLAY_FLAG_DESTROY_CONTENT_ON_REMOVAL
flags |= VIRTUAL_DISPLAY_FLAG_OWN_CONTENT_ONLY;
#if UNITY_XR_COMPOSITIONLAYERS
StartCoroutine(CreateVirtualDisplay(flags));
#endif
showLog("CreateVirtualDisplay displayId" + displayId);
});
}
#if UNITY_XR_COMPOSITIONLAYERS
private IEnumerator CreateVirtualDisplay(int flags)
{
IntPtr surface = IntPtr.Zero;
yield return new WaitUntil(() =>
{
surface = OpenXRLayerUtility.GetLayerAndroidSurfaceObject(_overlay.GetInstanceID());
displayId = PXR_Enterprise.CreateVirtualDisplay("VirtualDisplayDemo", surface,
320, flags,720,1280);
return (surface != IntPtr.Zero);
});
}
#endif
public void OpenApp()
{
showLog("StartApp ret");
Intent m = new Intent();
m.setComponent("com.pico.myapplication", "com.pico.myapplication.MainActivity");
int ret = PXR_Enterprise.StartApp(displayId, m);
showLog("StartApp ret" + ret);
}
public void KillApp()
{
int[] args1 = {};
string[] args2 = {"com.pico.myapplication"};
PXR_Enterprise.KillAppsByPidOrPackageName(args1, args2);
}
public void ReleaseVirtualDisplay()
{
int ret = PXR_Enterprise.ReleaseVirtualDisplay(displayId);
showLog("ReleaseVirtualDisplay ret" + ret);
}
public void InjectEvent(int action, float x, float y)
{
int ret = PXR_Enterprise.InjectEvent(displayId, action, SOURCE_KEYBOARD, 720*x,1280*y);
}
public void bcak()
{
int ret = PXR_Enterprise.InjectEvent(displayId, ACTION_DOWN, SOURCE_KEYBOARD, KEYCODE_BACK);
}
}
#endif

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 0c6f08d2268026e41938a7556cf91224
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: dabd034bde709474cbb51b9cdc49d05e
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,191 @@
#if !PICO_XR
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
using UnityEngine.XR;
#if XRI_240
using UnityEngine.XR.Interaction.Toolkit;
#endif
#if XRI_300
using UnityEngine.XR.Interaction.Toolkit.Interactors;
#endif
public class VirtualDisplayEvent_OpenXR : MonoBehaviour, IPointerDownHandler, IPointerUpHandler, IDragHandler,
IInitializePotentialDragHandler
{
public string tag = "VirtualDisplayEvent----";
#if XRI_240||XRI_300
public XRRayInteractor xrLeftRayInteractor;
public XRRayInteractor xrRightRayInteractor;
private XRRayInteractor currentRayInteractor;
#endif
public VirtualDisplayDemo_OpenXR virtualDisplayController;
public Text mylog;
private GameObject mDisplay;
private RectTransform mDisplayTran;
private int mKeyEvent;
private const int KEYEVENT_DEFAULT = -1;
private const int KEYEVENT_DOWN = 0;
private const int KEYEVENT_UP = 1;
bool LeftState = false;
private bool mLeftTriggerPressTemp = false;
bool RightState = false;
private bool mRightTriggerPressTemp = false;
// Start is called before the first frame update
void Start()
{
mDisplay = this.gameObject;
mDisplayTran = mDisplay.GetComponent<RectTransform>();
mKeyEvent = KEYEVENT_DEFAULT;
#if XRI_240||XRI_300
currentRayInteractor = xrRightRayInteractor;
#endif
}
public void showLog(string log)
{
Debug.Log(tag + log);
mylog.text = log;
}
// Update is called once per frame
void Update()
{
InputDevices.GetDeviceAtXRNode(XRNode.LeftHand).TryGetFeatureValue(CommonUsages.isTracked, out LeftState);
InputDevices.GetDeviceAtXRNode(XRNode.RightHand)
.TryGetFeatureValue(CommonUsages.isTracked, out RightState);
if (RightState)
{
InputDevices.GetDeviceAtXRNode(XRNode.RightHand)
.TryGetFeatureValue(CommonUsages.triggerButton, out mRightTriggerPressTemp);
if (mRightTriggerPressTemp)
{
#if XRI_240||XRI_300
currentRayInteractor = xrRightRayInteractor;
#endif
}
}
else if (LeftState)
{
InputDevices.GetDeviceAtXRNode(XRNode.LeftHand)
.TryGetFeatureValue(CommonUsages.triggerButton, out mLeftTriggerPressTemp);
if (mLeftTriggerPressTemp)
{
#if XRI_240||XRI_300
currentRayInteractor = xrLeftRayInteractor;
#endif
}
}
if (mKeyEvent != KEYEVENT_DEFAULT)
{
DispatchMessageToAndroid(mKeyEvent, null);
}
}
public void OnPointerDown(PointerEventData eventData)
{
mKeyEvent = KEYEVENT_DOWN;
}
public void OnPointerUp(PointerEventData eventData)
{
mKeyEvent = KEYEVENT_UP;
}
public void OnDrag(PointerEventData eventData)
{
mKeyEvent = KEYEVENT_DOWN;
}
public void OnInitializePotentialDrag(PointerEventData eventData)
{
eventData.useDragThreshold = false;
}
private void DispatchMessageToAndroid(int actionType, PointerEventData eventData)
{
#if XRI_240||XRI_300
Vector3 eventPoint = mDisplay.transform.InverseTransformPoint(currentRayInteractor.rayEndPoint);
if (Application.platform == RuntimePlatform.Android)
{
InstrumentationInput(eventPoint, actionType);
}
else
{
float x = (eventPoint.x + mDisplayTran.sizeDelta.x / 2) / mDisplayTran.sizeDelta.x;
float y = (mDisplayTran.sizeDelta.y / 2 - eventPoint.y) / mDisplayTran.sizeDelta.y;
mKeyEvent = KEYEVENT_DEFAULT;
Debug.Log(actionType + "--->" + x + ", " + y + ", " + eventPoint.x + ", " + eventPoint.y);
}
#else
showLog("com.unity.xr.interaction.toolkit Version needs to be greater than 2.3.x");
// Debug.LogError("com.unity.xr.interaction.toolkit Version needs to be greater than 2.3.x");
#endif
}
private bool mIsUp = true;
private float mLastX, mLastY;
private void InstrumentationInput(Vector3 eventPoint, int actionType)
{
float eventX = eventPoint.x;
float eventY = eventPoint.y;
float x = (eventX + mDisplayTran.sizeDelta.x / 2) / mDisplayTran.sizeDelta.x;
float y = (mDisplayTran.sizeDelta.y / 2 - eventY) / mDisplayTran.sizeDelta.y;
if (mIsUp && (eventX == 0.0f || eventY == 0.0f || x > 0.99f || x < 0.01f || y > 0.99f || y < 0.01f))
{
//处理在屏幕外操作的问题
showLog("input--->out of the screen---1");
mKeyEvent = KEYEVENT_DEFAULT;
return;
}
if (actionType == KEYEVENT_DOWN)
{
if (mIsUp)
{
mIsUp = false;
virtualDisplayController.InjectEvent(VirtualDisplayDemo_OpenXR.ACTION_DOWN,x,y);
showLog("down--->" + x + ", " + y + ", " + eventX + ", " + eventY);
}
if (!mIsUp)
{
if (eventX == 0.0f || eventY == 0.0f || x > 0.99f || x < 0.01f || y > 0.99f || y < 0.01f)
{
//处理划出屏幕,还未抬起的问题
showLog("input--->out of the screen---2");
mIsUp = true;
mKeyEvent = KEYEVENT_DEFAULT;
virtualDisplayController.InjectEvent(VirtualDisplayDemo_OpenXR.ACTION_UP,x,y);
showLog("up--->" + mLastX + ", " + mLastY + ", " + eventX + ", " + eventY);
}
else
{
virtualDisplayController.InjectEvent(VirtualDisplayDemo_OpenXR.ACTION_MOVE,x,y);
showLog("move--->" + x + ", " + y + ", " + eventX + ", " + eventY);
}
}
}
else if (actionType == KEYEVENT_UP)
{
mIsUp = true;
mKeyEvent = KEYEVENT_DEFAULT;
virtualDisplayController.InjectEvent(VirtualDisplayDemo_OpenXR.ACTION_UP,x,y);
showLog("up--->" + x + ", " + y + ", " + eventPoint.x + ", " + eventPoint.y);
}
mLastX = x;
mLastY = y;
}
}
#endif

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 976fc82b681e99f4bac81f2e534a70a0
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 885ac79e2188a9546a58dc2a5dd526f8
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,102 @@
#if PICO_XR
using System;
using System.Collections;
using System.Collections.Generic;
using Unity.XR.PICO.TOBSupport;
using Unity.XR.PXR;
using UnityEngine;
using UnityEngine.UI;
public class VirtualDisplayDemo : MonoBehaviour
{
private string tag = "VirtualDisplayDemo ----";
private PXR_OverLay overlay = null;
public Text mylog;
private bool isBind = false;
private int displayId = -1;
public const int VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR = 16;
public const int VIRTUAL_DISPLAY_FLAG_OWN_CONTENT_ONLY = 8;
public const int VIRTUAL_DISPLAY_FLAG_PRESENTATION = 2;
public const int VIRTUAL_DISPLAY_FLAG_PUBLIC = 1;
public const int VIRTUAL_DISPLAY_FLAG_SECURE = 4;
public const int SOURCE_KEYBOARD = 257;
public const int ACTION_DOWN = 0;
public const int ACTION_UP = 1;
public const int ACTION_MOVE = 2;
int KEYCODE_BACK = 4;
private void Awake()
{
overlay = GetComponent<PXR_OverLay>();
if (overlay == null)
{
Debug.LogError("PXRLog Overlay is null!");
overlay = gameObject.AddComponent<PXR_OverLay>();
}
overlay.isExternalAndroidSurface = true;
PXR_Enterprise.InitEnterpriseService();
}
public void showLog(string log)
{
Debug.Log(tag + log);
mylog.text = log;
}
// Start is called before the first frame update
void Start()
{
showLog("tobDemo:start");
PXR_Enterprise.BindEnterpriseService(b =>
{
showLog("Bind绑定的返回值测试" + b);
isBind = true;
PXR_Enterprise.SwitchSystemFunction(
(int)SystemFunctionSwitchEnum.SFS_BASIC_SETTING_SHOW_APP_QUIT_CONFIRM_DIALOG, (int)SwitchEnum.S_OFF,
b =>
{
// showLog("SFS_BASIC_SETTING_SHOW_APP_QUIT_CONFIRM_DIALOG" + b);
});
int flags = VIRTUAL_DISPLAY_FLAG_PUBLIC;
flags |= 1 << 6; //DisplayManager.VIRTUAL_DISPLAY_FLAG_SUPPORTS_TOUCH
flags |= 1 << 7; //DisplayManager.VIRTUAL_DISPLAY_FLAG_ROTATES_WITH_CONTENT
flags |= 1 << 8; //DisplayManager.VIRTUAL_DISPLAY_FLAG_DESTROY_CONTENT_ON_REMOVAL
flags |= VIRTUAL_DISPLAY_FLAG_OWN_CONTENT_ONLY;
displayId = PXR_Enterprise.CreateVirtualDisplay("VirtualDisplayDemo", overlay.externalAndroidSurfaceObject,
320, flags);
showLog("CreateVirtualDisplay displayId" + displayId);
});
}
public void OpenApp()
{
showLog("StartApp ret");
Intent m = new Intent();
m.setComponent("com.tencent.mm", "com.tencent.mm.ui.LauncherUI");
int ret = PXR_Enterprise.StartApp(displayId, m);
showLog("StartApp ret" + ret);
}
public void ReleaseVirtualDisplay()
{
int ret = PXR_Enterprise.ReleaseVirtualDisplay(displayId);
showLog("ReleaseVirtualDisplay ret" + ret);
}
public void InjectEvent(int action, float x, float y)
{
int ret = PXR_Enterprise.InjectEvent(displayId, action, SOURCE_KEYBOARD, x, y);
}
public void bcak()
{
int ret = PXR_Enterprise.InjectEvent(displayId, ACTION_DOWN, SOURCE_KEYBOARD, KEYCODE_BACK);
}
}
#endif

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 9eff5f4fc4057284d87f413c0a63b1a0
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 6971024d1aca1a545ab8ad133a569d1a
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,181 @@
#if PICO_XR
using System.Collections;
using System.Collections.Generic;
using Unity.XR.PXR;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
using UnityEngine.XR;
#if !XRI_300
using UnityEngine.XR.Interaction.Toolkit;
#else
using UnityEngine.XR.Interaction.Toolkit.Interactors;
#endif
public class VirtualDisplayEvent : MonoBehaviour, IPointerDownHandler, IPointerUpHandler, IDragHandler,
IInitializePotentialDragHandler
{
public string tag = "VirtualDisplayEvent----";
public XRRayInteractor xrLeftRayInteractor;
public XRRayInteractor xrRightRayInteractor;
public VirtualDisplayDemo virtualDisplayController;
public Text mylog;
private XRRayInteractor currentRayInteractor;
private GameObject mDisplay;
private RectTransform mDisplayTran;
private int mKeyEvent;
private const int KEYEVENT_DEFAULT = -1;
private const int KEYEVENT_DOWN = 0;
private const int KEYEVENT_UP = 1;
bool LeftState = false;
private bool mLeftTriggerPressTemp = false;
bool RightState = false;
private bool mRightTriggerPressTemp = false;
// Start is called before the first frame update
void Start()
{
mDisplay = this.gameObject;
mDisplayTran = mDisplay.GetComponent<RectTransform>();
mKeyEvent = KEYEVENT_DEFAULT;
currentRayInteractor = xrRightRayInteractor;
}
public void showLog(string log)
{
Debug.Log(tag + log);
mylog.text = log;
}
// Update is called once per frame
void Update()
{
InputDevices.GetDeviceAtXRNode(XRNode.LeftHand).TryGetFeatureValue(PXR_Usages.controllerStatus, out LeftState);
InputDevices.GetDeviceAtXRNode(XRNode.RightHand)
.TryGetFeatureValue(PXR_Usages.controllerStatus, out RightState);
if (RightState)
{
InputDevices.GetDeviceAtXRNode(XRNode.RightHand)
.TryGetFeatureValue(CommonUsages.triggerButton, out mRightTriggerPressTemp);
if (mRightTriggerPressTemp)
{
currentRayInteractor = xrRightRayInteractor;
}
}
else if (LeftState)
{
InputDevices.GetDeviceAtXRNode(XRNode.LeftHand)
.TryGetFeatureValue(CommonUsages.triggerButton, out mLeftTriggerPressTemp);
if (mLeftTriggerPressTemp)
{
currentRayInteractor = xrLeftRayInteractor;
}
}
if (mKeyEvent != KEYEVENT_DEFAULT)
{
DispatchMessageToAndroid(mKeyEvent, null);
}
}
public void OnPointerDown(PointerEventData eventData)
{
mKeyEvent = KEYEVENT_DOWN;
}
public void OnPointerUp(PointerEventData eventData)
{
mKeyEvent = KEYEVENT_UP;
}
public void OnDrag(PointerEventData eventData)
{
mKeyEvent = KEYEVENT_DOWN;
}
public void OnInitializePotentialDrag(PointerEventData eventData)
{
eventData.useDragThreshold = false;
}
private void DispatchMessageToAndroid(int actionType, PointerEventData eventData)
{
#if XRI_240
Vector3 eventPoint = mDisplay.transform.InverseTransformPoint(currentRayInteractor.rayEndPoint);
if (Application.platform == RuntimePlatform.Android)
{
InstrumentationInput(eventPoint, actionType);
}
else
{
float x = (eventPoint.x + mDisplayTran.sizeDelta.x / 2) / mDisplayTran.sizeDelta.x;
float y = (mDisplayTran.sizeDelta.y / 2 - eventPoint.y) / mDisplayTran.sizeDelta.y;
mKeyEvent = KEYEVENT_DEFAULT;
Debug.Log(actionType + "--->" + x + ", " + y + ", " + eventPoint.x + ", " + eventPoint.y);
}
#else
showLog("com.unity.xr.interaction.toolkit Version needs to be greater than 2.3.x");
// Debug.LogError("com.unity.xr.interaction.toolkit Version needs to be greater than 2.3.x");
#endif
}
private bool mIsUp = true;
private float mLastX, mLastY;
private void InstrumentationInput(Vector3 eventPoint, int actionType)
{
float eventX = eventPoint.x;
float eventY = eventPoint.y;
float x = (eventX + mDisplayTran.sizeDelta.x / 2) / mDisplayTran.sizeDelta.x;
float y = (mDisplayTran.sizeDelta.y / 2 - eventY) / mDisplayTran.sizeDelta.y;
if (mIsUp && (eventX == 0.0f || eventY == 0.0f || x > 0.99f || x < 0.01f || y > 0.99f || y < 0.01f))
{
//处理在屏幕外操作的问题
showLog("input--->out of the screen---1");
mKeyEvent = KEYEVENT_DEFAULT;
return;
}
if (actionType == KEYEVENT_DOWN)
{
if (mIsUp)
{
mIsUp = false;
virtualDisplayController.InjectEvent(VirtualDisplayDemo.ACTION_DOWN,x,y);
showLog("down--->" + x + ", " + y + ", " + eventX + ", " + eventY);
}
if (!mIsUp)
{
if (eventX == 0.0f || eventY == 0.0f || x > 0.99f || x < 0.01f || y > 0.99f || y < 0.01f)
{
//处理划出屏幕,还未抬起的问题
showLog("input--->out of the screen---2");
mIsUp = true;
mKeyEvent = KEYEVENT_DEFAULT;
virtualDisplayController.InjectEvent(VirtualDisplayDemo.ACTION_UP,x,y);
showLog("up--->" + mLastX + ", " + mLastY + ", " + eventX + ", " + eventY);
}
else
{
virtualDisplayController.InjectEvent(VirtualDisplayDemo.ACTION_MOVE,x,y);
showLog("move--->" + x + ", " + y + ", " + eventX + ", " + eventY);
}
}
}
else if (actionType == KEYEVENT_UP)
{
mIsUp = true;
mKeyEvent = KEYEVENT_DEFAULT;
virtualDisplayController.InjectEvent(VirtualDisplayDemo.ACTION_UP,x,y);
showLog("up--->" + x + ", " + y + ", " + eventPoint.x + ", " + eventPoint.y);
}
mLastX = x;
mLastY = y;
}
}
#endif

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: ff6164edb8163214a94140877bd556c5
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 361e35b69970a6341b4ed62dbf02397b
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: eb1fea03bc4d05d4b8e17085502fe318
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,18 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum ControllerKeyEnum
{
CONTROLLER_KEY_JOYSTICK=0,
CONTROLLER_KEY_MENU=1,
CONTROLLER_KEY_TRIGGER=2,
CONTROLLER_KEY_RIGHT_A=3,
CONTROLLER_KEY_RIGHT_B=4,
CONTROLLER_KEY_LEFT_X=5,
CONTROLLER_KEY_LEFT_Y=6,
CONTROLLER_KEY_LEFT_GRIP=7,
CONTROLLER_KEY_RIGHT_GRIP=8,
CONTROLLER_KEY_VOLUME_DOWN=9,
CONTROLLER_KEY_VOLUME_UP=10,
CONTROLLER_KEY_CLICK=11
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: f3404ac0f03a52243a990208619963d6
timeCreated: 1685945465

View File

@@ -0,0 +1,12 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum ControllerPairTimeEnum
{
DEFAULT=0,
FIFTEEN=15,
SIXTY=60,
ONE_HUNDRED_AND_TWENTY=120,
SIX_HUNDRED=600,
NEVER=-1
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 812577bc63a938848b40de4ea091a92c
timeCreated: 1685943806

View File

@@ -0,0 +1,13 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum CustomizeSettingsTabEnum
{
CUSTOMIZE_SETTINGS_TAB_WLAN = 0,
CUSTOMIZE_SETTINGS_TAB_CONTROLLER = 1,
CUSTOMIZE_SETTINGS_TAB_BLUETOOTH = 2,
CUSTOMIZE_SETTINGS_TAB_DISPLAY = 3,
CUSTOMIZE_SETTINGS_TAB_LAB = 4,
CUSTOMIZE_SETTINGS_TAB_GENERAL_LOCKSCREEN = 5,
CUSTOMIZE_SETTINGS_TAB_GENERAL_FACTORY_RESET = 6
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 1e333d098ae9ad64985e3328302a7336
timeCreated: 1685945379

View File

@@ -0,0 +1,8 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum DeviceControlEnum
{
DEVICE_CONTROL_REBOOT=0,
DEVICE_CONTROL_SHUTDOWN=1
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 191c63567bcfd1b46a32daf024cabfc1
timeCreated: 1685937183

View File

@@ -0,0 +1,18 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum HomeEventEnum
{
SINGLE_CLICK=0,
DOUBLE_CLICK=1,
LONG_PRESS=2,
SINGLE_CLICK_RIGHT_CTL=3,
DOUBLE_CLICK_RIGHT_CTL=4,
LONG_PRESS_RIGHT_CTL=5,
SINGLE_CLICK_LEFT_CTL=6,
DOUBLE_CLICK_LEFT_CTL=7,
LONG_PRESS_LEFT_CTL=8,
SINGLE_CLICK_HMD=9,
DOUBLE_CLICK_HMD=10,
LONG_PRESS_HMD=11
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 827e343df7969f945ab1197551529ee4
timeCreated: 1685937306

View File

@@ -0,0 +1,17 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum HomeFunctionEnum
{
VALUE_HOME_GO_TO_SETTING=0,
VALUE_HOME_BACK=1,
VALUE_HOME_RECENTER=2,
VALUE_HOME_OPEN_APP=3,
VALUE_HOME_DISABLE=4,
VALUE_HOME_GO_TO_HOME=5,
VALUE_HOME_SEND_BROADCAST=6,
VALUE_HOME_CLEAN_MEMORY=7,
VALUE_HOME_QUICK_SETTING=8,
VALUE_HOME_SCREEN_CAP=9,
VALUE_HOME_SCREEN_RECORD=10
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 7307c60da9ff10d44aff55277238bb39
timeCreated: 1685937603

View File

@@ -0,0 +1,17 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum OnLineSystemUpdateStatusCode
{
IDLE = 0,
CHECKING_FOR_UPDATE = 1,
UPDATE_AVAILABLE = 2,
DOWNLOADING = 3,
DOWNLOAD_FINISH = 4,
UPGRADE_EXTRACTING = 5,
UPGRADE_VERIFYING = 6,
UPGRADE_WAITING_REBOOT = 7,
UPGRADE_FINISH = 8,
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 79034eaebec042aa9293074a76344d1a
timeCreated: 1721371631

View File

@@ -0,0 +1,13 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum OnlineSystemUpdateErrorCode
{
SUCCESS = 0,
ERROR = -1,
UPDATE_NOT_AVAILABLE = -3,
CHECK_UPDATE_ERROR = -4,
DOWNLOAD_ERROR = -5,
DOWNLOAD_VERIFY_ERROR = -6,
UPGRADE_ERROR = -7
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 31d0774851654ff7becb2ee354dfad40
timeCreated: 1721371579

View File

@@ -0,0 +1,10 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum PICOCastOptionOrStatusEnum
{
OPTION_RESOLUTION_LEVEL=0,
OPTION_BITRATE_LEVEL=1,
OPTION_AUDIO_ENABLE=2,
PICO_CAST_STATUS=3
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: c167bed50a764c347b4f13be1d78a725
timeCreated: 1685945051

View File

@@ -0,0 +1,22 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum PICOCastOptionValueEnum
{
OPTION_VALUE_RESOLUTION_HIGH,
OPTION_VALUE_RESOLUTION_MIDDLE,
OPTION_VALUE_RESOLUTION_AUTO,
OPTION_VALUE_RESOLUTION_HIGH_2K,
OPTION_VALUE_RESOLUTION_HIGH_4K,
OPTION_VALUE_BITRATE_HIGH,
OPTION_VALUE_BITRATE_MIDDLE,
OPTION_VALUE_BITRATE_LOW,
OPTION_VALUE_AUDIO_ON,
OPTION_VALUE_AUDIO_OFF,
STATUS_VALUE_STATE_STARTED,
STATUS_VALUE_STATE_STOPPED,
STATUS_VALUE_ERROR
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 966f3f3a0573fc54ea0de727684f49c6
timeCreated: 1685945106

View File

@@ -0,0 +1,9 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum PICOCastUrlTypeEnum
{
NORMAL_URL=0,
NO_CONFIRM_URL=1,
RTMP_URL=2
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 0645a1fd1f37c1045aea1cf7143e2beb
timeCreated: 1685944504

View File

@@ -0,0 +1,8 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum PackageControlEnum
{
PACKAGE_SILENCE_INSTALL=0,
PACKAGE_SILENCE_UNINSTALL=1
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 5dcefd7135dce884eade25e02a44862f
timeCreated: 1685937232

View File

@@ -0,0 +1,7 @@
namespace Unity.XR.PICO.TOBSupport
{
public class PicoCastMediaFormat
{
public int bitrate = -1;//kb
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 5053d16fe3d779c428c9ee64f2f493f3
timeCreated: 1686223794

View File

@@ -0,0 +1,20 @@
using System;
using System.Runtime.InteropServices;
namespace Unity.XR.PICO.TOBSupport
{
public enum PoseErrorType
{
BRIGHT_LIGHT_ERROR = (1 << 0),
LOW_LIGHT_ERROR = (1 << 1),
LOW_FEATURE_COUNT_ERROR = (1 << 2),
CAMERA_CALIBRATION_ERROR = (1 << 3),
RELOCATION_IN_PROGRESS = (1 << 4),
INITILIZATION_IN_PROGRESS = (1 << 5),
NO_CAMERA_ERROR = (1 << 6),
NO_IMU_ERROR = (1 << 7),
IMU_JITTER_ERROR = (1 << 8),
UNKNOWN_ERROR = (1 << 9)
};
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 3d22dca0e0df96e4b884b3b81a3fc5e2
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,9 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum PowerOnOffLogoEnum
{
PLPowerOnLogo=0,
PLPowerOnAnimation=1,
PLPowerOffAnimation=2
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: addbfcbb2325bfc47b063722e3658032
timeCreated: 1685945676

View File

@@ -0,0 +1,13 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum ScreenOffDelayTimeEnum
{
THREE,
TEN ,
THIRTY ,
SIXTY,
THREE_HUNDRED,
SIX_HUNDRED ,
NEVER
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: d20aeb8ecc6a21b43a998f023f100064
timeCreated: 1685943725

View File

@@ -0,0 +1,10 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum ScreencastAudioOutputEnum
{
AUDIO_ERROR=0,
AUDIO_SINK = 1,
AUDIO_TARGET = 2,
AUDIO_SINK_TARGET = 3,
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: d328efa85b43d4f4795cf0440fba04fc
timeCreated: 1685945230

View File

@@ -0,0 +1,13 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum SleepDelayTimeEnum
{
FIFTEEN ,
THIRTY ,
SIXTY ,
THREE_HUNDRED ,
SIX_HUNDRED ,
ONE_THOUSAND_AND_EIGHT_HUNDRED ,
NEVER
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 2285f64541d08044492c796820549b08
timeCreated: 1685943762

View File

@@ -0,0 +1,13 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum StartVRSettingsEnum
{
START_VR_SETTINGS_ITEM_WIFI=0,
START_VR_SETTINGS_ITEM_BLUETOOTH=1,
START_VR_SETTINGS_ITEM_CONTROLLER=2,
START_VR_SETTINGS_ITEM_LAB=3,
START_VR_SETTINGS_ITEM_BRIGHTNESS=4,
START_VR_SETTINGS_ITEM_GENERAL=5,
START_VR_SETTINGS_ITEM_NOTIFICATION=6
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 8ff7f9059c885134d9661bfd0c2a32d1
timeCreated: 1685944404

View File

@@ -0,0 +1,8 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum SwitchEnum
{
S_ON=0,
S_OFF=1
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: dea1198e358df15458e703c6a2923a56
timeCreated: 1685937261

View File

@@ -0,0 +1,322 @@
using System;
namespace Unity.XR.PICO.TOBSupport
{
public enum SystemFunctionSwitchEnum
{
//USB调试开关
SFS_USB = 0,
//自动休眠开关
SFS_AUTOSLEEP = 1,
//亮屏充电开关
SFS_SCREENON_CHARGING = 2,
//OTG充电开关仅G2系列有
SFS_OTG_CHARGING = 3,
//2D界面下返回图标显示开关仅G2系列有
SFS_RETURN_MENU_IN_2DMODE = 4,
//组合键开关
SFS_COMBINATION_KEY = 5,
//开机校准开关仅G2系列有
SFS_CALIBRATION_WITH_POWER_ON = 6,
//升级更新开关
SFS_SYSTEM_UPDATE = 7,
//手机投屏开关
//只支持PUI4.X
SFS_CAST_SERVICE = 8,
//护眼模式开关
SFS_EYE_PROTECTION = 9,
// 6Dof安全区永久关闭开关
SFS_SECURITY_ZONE_PERMANENTLY = 10,
//全局校准开关仅3dof模式支持
SFS_GLOBAL_CALIBRATION = 11,
//自动校准
[Obsolete]
SFS_Auto_Calibration = 12,
//USB插入启动
SFS_USB_BOOT = 13,
//音量全局UI提示开关
SFS_VOLUME_UI = 14,
//手柄连接全局UI提示开关
SFS_CONTROLLER_UI = 15,
//打开/关闭导航栏的接口
SFS_NAVGATION_SWITCH = 16,
//是否显示录屏按钮
SFS_SHORTCUT_SHOW_RECORD_UI = 17,
//打开/关闭运动UI
//Neo3 Pro PUI4.x支持
SFS_SHORTCUT_SHOW_FIT_UI = 18,
//是否显示投屏按钮
SFS_SHORTCUT_SHOW_CAST_UI = 19,
//是否显示截屏按钮
SFS_SHORTCUT_SHOW_CAPTURE_UI = 20,
//2D应用杀活开关
[Obsolete]
SFS_STOP_MEM_INFO_SERVICE = 21,
//限制APP自启动开关
[Obsolete]
SFS_START_APP_BOOT_COMPLETED = 22,
//设备设置为host设备
SFS_USB_FORCE_HOST = 23,
//Neo3、PICO4系列设备设置快速安全区
SFS_SET_DEFAULT_SAFETY_ZONE = 24,
//Neo3 PICO4系列设备可重新自定义安全区
SFS_ALLOW_RESET_BOUNDARY = 25,
//Neo3、PICO4系列设备安全区是否显示确认界面
SFS_BOUNDARY_CONFIRMATION_SCREEN = 26,
//Neo3、PICO4系列设备长按Home键校准
SFS_LONG_PRESS_HOME_TO_RECENTER = 27,
//灭屏后设备保持网络连接
//PICO4 E【PUI5.4.0及以上】
//PICO G3【PUI5.4.0及以上】
//Neo3 Pro【PUI4.8.0&4.8.1及以上】
SFS_POWER_CTRL_WIFI_ENABLE = 28,
//禁用wifi
//PICO4 E【PUI5.4.0及以上】
//PICO G3【PUI5.4.0及以上】
//Neo3 Pro【PUI4.8.0&4.8.1及以上】
SFS_WIFI_DISABLE = 29,
//Neo3、PICO4系列设备6Dof开关
SFS_SIX_DOF_SWITCH = 30,
//反色散开关
//PICO Neo3、G3
SFS_INVERSE_DISPERSION = 31,
//switch logcat , path: data/logs
SFS_LOGCAT = 32,
//switch psensor
SFS_PSENSOR = 33,
//OTA升级开关
//【PUI5.4.0 以上】
SFS_SYSTEM_UPDATE_OTA = 34,
//应用升级更新开关
//【PUI5.4.0 以上】
SFS_SYSTEM_UPDATE_APP = 35,
//快捷设置是否显示WLAN按钮
//【PUI5.4.0 以上】
SFS_SHORTCUT_SHOW_WLAN_UI = 36,
//快捷设置是否显示安全区按钮
//PICO4E & Neo3Pro 【PUI5.4.0】
SFS_SHORTCUT_SHOW_BOUNDARY_UI = 37,
//快捷设置是否显示蓝牙按钮
//【PUI5.4.0 以上】
SFS_SHORTCUT_SHOW_BLUETOOTH_UI = 38,
//快捷设置是否显示一键清理按钮
//【PUI5.4.0】
SFS_SHORTCUT_SHOW_CLEAN_TASK_UI = 39,
//快捷设置是否显示瞳距调节按钮
//PICO4E【PUI5.4.0】
SFS_SHORTCUT_SHOW_IPD_ADJUSTMENT_UI = 40,
//快捷设置是否显示关机/重启按钮
//【PUI5.4.0 以上】
SFS_SHORTCUT_SHOW_POWER_UI = 41,
//快捷设置是否显示编辑按钮
//【PUI5.4.0 以上】
SFS_SHORTCUT_SHOW_EDIT_UI = 42,
//行业设置-基础设置-自定义资源按钮
//【PUI5.4.0 以上】
SFS_BASIC_SETTING_APP_LIBRARY_UI = 43,
//行业设置-基础设置-自定义快捷设置按钮
//【PUI5.4.0 以上】
SFS_BASIC_SETTING_SHORTCUT_UI = 44,
//LED 指示灯灭屏并且电量小于20%时是否亮
//PICO G3
SFS_LED_FLASHING_WHEN_SCREEN_OFF = 45,
//基础设置中自定义设置条目的显示隐藏
SFS_BASIC_SETTING_CUSTOMIZE_SETTING_UI = 46,
//--------------以下开关上线版本详见更新历史-----------------
//app 切换是否显示退出对话框
SFS_BASIC_SETTING_SHOW_APP_QUIT_CONFIRM_DIALOG = 47,
//是否查杀后台VR的应用1杀当设置为2时不杀默认为杀
SFS_BASIC_SETTING_KILL_BACKGROUND_VR_APP = 48,
//是否显示投屏时的一个蓝色图标默认显示当设置为0时隐藏蓝色图标
SFS_BASIC_SETTING_SHOW_CAST_NOTIFICATION = 49,
//自动IPD开关
//PICO 4E
SFS_AUTOMATIC_IPD = 50,
//快速透视模式开关
//PICO Neo3 Pro & PICO 4E & Neo3 企业版【PUI 5.7.0】
SFS_QUICK_SEETHROUGH_MODE = 51,
//高刷新率模式开关
//PICO Neo3 Pro & PICO 4E & Neo3 企业版【PUI 5.7.0】
SFS_HIGN_REFERSH_MODE = 52,
//PICO Neo3 Pro & PICO 4E & Neo3 企业版 & G3【PUI 5.8.0】
//透视模式下应用是否正常运行开关
SFS_SEETHROUGH_APP_KEEP_RUNNING = 53,
//PICO Neo3 Pro & PICO 4E & Neo3 企业版【PUI 5.8.0】
//户外环境跟踪定位优化
SFS_OUTDOOR_TRACKING_ENHANCEMENT = 54,
//PICO 4E【PUI 5.8.0】
//快捷IPD
SFS_AUTOIPD_AUTO_COMFIRM = 55,
//PICO 4E【PUI 5.8.0】
//佩戴头戴是否启动自动IPD
SFS_LAUNCH_AUTOIPD_IF_GLASSES_WEARED = 56,
//PICO Neo3 Pro & PICO 4E & Neo3 企业版【PUI 5.8.0】
//HOME手势开关
SFS_GESTURE_RECOGNITION_HOME_ENABLE = 57,
//PICO Neo3 Pro & PICO 4E & Neo3 企业版【PUI 5.8.0】
//RESET手势开关
SFS_GESTURE_RECOGNITION_RESET_ENABLE = 58,
//PICO Neo3 Pro & PICO 4E & Neo3 企业版 & G3【PUI 5.8.0】
//OTG 资源自动导入
SFS_AUTO_COPY_FILES_FROM_USB_DEVICE = 59,
//WIFI直连-任何设备都可静默连接,无需弹窗
SFS_WIFI_P2P_AUTO_CONNECT = 60,
//锁屏状态下文件拷贝开关
SFS_LOCK_SCREEN_FILE_COPY_ENABLE = 61,
//动态marker检测开关
SFS_TRACKING_ENABLE_DYNAMIC_MARKER = 62,
//手柄3/6 dof模式切换
SFS_ENABLE_3DOF_CONTROLLER_TRACKING = 63,
//手柄震动反馈 PUI560开始支持
SFS_SYSTEM_VIBRATION_ENABLED = 64,
//蓝牙开关
SFS_BLUE_TOOTH = 65,
//视频画质增强 PUI580开始支持
SFS_ENHANCED_VIDEO_QUALITY = 66,
//手势识别(追踪) PUI560开始支持
SFS_GESTURE_RECOGNITION = 67,
//亮度自适应 PUI560开始支持
SFS_BRIGHTNESS_AUTO_ADJUST = 68,
//大电流OTG模式 PUI580开始支持
SFS_HIGH_CURRENT_OTG_MODE = 69,
//禁止后台应用播放音频 PUI560开始支持
SFS_BACKGROUND_APP_PLAY_AUDIO = 70,
//勿扰模式 PUI560开始支持
SFS_NO_DISTURB_MODE = 71,
//单目投屏 PUI570开始支持
SFS_MONOCULAR_SCREENCAST = 72,
//单目截录屏 PUI570开始支持
SFS_MONOCULAR_SCREEN_CAPTURE = 73,
//减少录屏画面抖动 PUI570开始支持
SFS_STABILIZATION_FOR_RECORDING = 74,
//主屏幕应用为VR应用时回launcher收起2D应用开关接口
SFS_HIDE_2D_APP_WHEN_GO_TO_HOME = 75,
//手柄振动开关
SFS_CONTROLLER_VIBRATE = 76,
//刷新模式开关
SFS_REFRESH_MODE = 77,
//智能音效开关
SFS_SMART_AUDIO = 78,
//视线追踪开关
SFS_EYE_TRACK = 79,
//表情模拟开关
SFS_FACE_SIMULATE = 80,
//录屏时启用麦克风开关
SFS_ENABLE_MIC_WHEN_RECORD = 81,
//熄屏后继续录屏开关
SFS_KEEP_RECORD_WHEN_SCREEN_OFF = 82,
//安全边界中,手柄振动提醒开关
SFS_CONTROLLER_TIP_VIBRATE = 83,
//安全边界中,手柄触发透视开关
SFS_CONTROLLER_SEE_THROUGH = 84,
//安全边界中,原地边界降低高度开关
SFS_LOW_BORDER_HEIGHT = 85,
//安全边界中,快速移动安全提示开关
SFS_FAST_MOVE_TIP = 86,
//开启无线USB调试开关
SFS_WIRELESS_USB_ADB = 87,
//系统自动更新
SFS_SYSTEM_AUTO_UPDATE = 88,
//usb共享网络开关
SFS_USB_TETHERING = 89,
/**
* VR应用中实时响应头戴返回键
* DOWN事件UP事件
* DOWN事件DOWN/UP事件
*/
SFS_REAL_TIME_RESPONSE_HMD_BACK_KEY_IN_VR_APP = 90,
//优先使用Marker点找回地图
SFS_RETRIEVE_MAP_BY_MARKER_FIRST = 91
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 3b3a0f3689903d84a8fada7f23d25e38
timeCreated: 1685943877

View File

@@ -0,0 +1,68 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum SystemInfoEnum
{
//电量查看
ELECTRIC_QUANTITY = 0,
//PUI版本号查看
PUI_VERSION = 1,
//设备型号查看
EQUIPMENT_MODEL = 2,
// 设备SN查看
EQUIPMENT_SN = 3,
// 客户SN查看
CUSTOMER_SN = 4,
// 设备内部存储空间查看
INTERNAL_STORAGE_SPACE_OF_THE_DEVICE = 5,
// 设备蓝牙状态查看
DEVICE_BLUETOOTH_STATUS = 6,
// 已连接蓝牙名称查看
BLUETOOTH_NAME_CONNECTED = 7,
// 蓝牙MAC地址查看
BLUETOOTH_MAC_ADDRESS = 8,
// 设备WiFi状态查看
DEVICE_WIFI_STATUS = 9,
// 已连接WiFi名称查看
WIFI_NAME_CONNECTED = 10,
// WLAN MAC地址查看
WLAN_MAC_ADDRESS = 11,
// 设备IP查看
DEVICE_IP = 12,
// 设备是否充电
CHARGING_STATUS = 13,
//Neo3设备新旧Key
DEVICE_KEY = 14,
//设备本身蓝牙信息
//返回值格式Name|Address
//返回值示例PICO 4|08:16:D5:70:20:11
BLUETOOTH_INFO_DEVICE = 15,
//已连接的蓝牙设备信息
//返回值格式:[蓝牙设备1名称|蓝牙设备1地址, 蓝牙设备2名称|蓝牙设备2地址, . . .]
//返回值示例:[PICO 4|08:16:D5:70:20:11, PICO Neo 3|21:23:D5:7A:2C:DE]
BLUETOOTH_INFO_CONNECTED = 16,
//相机温度单位摄氏度
CAMERA_TEMPERATURE_CELSIUS = 17,
//相机温度单位华氏度
CAMERA_TEMPERATURE_FAHRENHEIT = 18,
//大空间地图信息:
LARGESPACE_MAP_INFO=19,
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 67b5645a44ee8bd4fb9367e23a3952a8
timeCreated: 1685937098

View File

@@ -0,0 +1,9 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum SystemKeyEnum
{
ENTER_KEY=0,
BACK_KEY=1,
VOLUME_KEY=2,
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: c1cd23270b201fb44b4d5037a582a847
timeCreated: 1698917116

View File

@@ -0,0 +1,8 @@
namespace Unity.XR.PICO.TOBSupport
{
public enum USBConfigModeEnum
{
MTP=0,
CHARGE=1
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: c6ee1c2d478eeda40b8d880e7a98b146
timeCreated: 1685944441

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 7a8294cbc00fce648bff5dfe09d9b339
timeCreated: 1685952511

View File

@@ -0,0 +1,28 @@
using System;
using UnityEngine;
namespace Unity.XR.PICO.TOBSupport
{
public class BindCallback : AndroidJavaProxy
{
public Action<bool> mCallback;
public BindCallback(Action<bool> callback) : base("com.picoxr.tobservice.interfaces.BoolCallback")
{
mCallback = callback;
}
public void CallBack(bool var1)
{
Debug.Log("ToBService bindCallBack 回调:" + var1);
PXR_EnterprisePlugin.GetServiceBinder();
PXR_EnterpriseTools.QueueOnMainThread(() =>
{
if (mCallback != null)
{
mCallback(var1);
}
});
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: fad6610201034f0429a6521ec4aaf7ff
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,26 @@
using System;
using UnityEngine;
namespace Unity.XR.PICO.TOBSupport
{
public class BoolCallback : AndroidJavaProxy
{
public Action<bool> mCallback;
public BoolCallback(Action<bool> callback) : base("com.picoxr.tobservice.interfaces.BoolCallback")
{
mCallback = callback;
}
public void CallBack(bool var1)
{
PXR_EnterpriseTools.QueueOnMainThread(() =>
{
if (mCallback!=null)
{
mCallback(var1);
}
});
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: a3ec953366a307b4199a77cac185a22f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,50 @@
using System;
using UnityEngine;
namespace Unity.XR.PICO.TOBSupport
{
public class FileCopyCallback: AndroidJavaProxy
{
public Action mOnCopyStart;
public Action<double> mOnCopyProgress;
public Action<int> mOnCopyFinish;
public FileCopyCallback(Action onCopyStart,Action<double> onCopyProgress,Action<int> onCopyFinish) : base("com.picoxr.tobservice.interfaces.FileCopyCallback")
{
mOnCopyStart = onCopyStart;
mOnCopyProgress = onCopyProgress;
mOnCopyFinish = onCopyFinish;
}
public void OnCopyStart()
{
PXR_EnterpriseTools.QueueOnMainThread(() =>
{
if (mOnCopyStart!=null)
{
mOnCopyStart();
}
});
}
public void OnCopyProgress(double var1)
{
PXR_EnterpriseTools.QueueOnMainThread(() =>
{
if (mOnCopyProgress!=null)
{
mOnCopyProgress(var1);
}
});
}
public void OnCopyFinish(int var1)
{
PXR_EnterpriseTools.QueueOnMainThread(() =>
{
if (mOnCopyFinish!=null)
{
mOnCopyFinish(var1);
}
});
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 754c6d3be6f06554da40b43907fec89e
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,26 @@
using System;
using UnityEngine;
namespace Unity.XR.PICO.TOBSupport
{
public class IntCallback : AndroidJavaProxy
{
public Action<int> mCallback;
public IntCallback(Action<int> callback) : base("com.picoxr.tobservice.interfaces.IntCallback")
{
mCallback = callback;
}
public void CallBack(int var1)
{
PXR_EnterpriseTools.QueueOnMainThread(() =>
{
if (mCallback != null)
{
mCallback(var1);
}
});
}
}
}

Some files were not shown because too many files have changed in this diff Show More