Init
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d1c4b2764d477254f8c202767058aaa9
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -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: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: faf9d48f6205bfa45a98ff473c3f7efa
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -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: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4dafd9aaf9c094f4c97c31798b54b19c
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -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: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 78c12598dec6eeb4cba86a42b82bd8a9
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -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: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1d3262428c068ee45b76f6d3de12a55f
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -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: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 65c222d19c598ee4b86f25e57c0bae1c
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,38 @@
|
||||
{
|
||||
"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.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
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f34d393b8d26cb44d9a77c73186b30d0
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 06c46620dce23a84db308dec9422b297
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: dcf376cf596c0544e9458455d36a8046
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -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}
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 04a9c969c46f56240a28811e3207db51
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3ffe22b91e472494ba5839b89e0076fe
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 491cc602739859c45a1c57ecacee1c75
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fc18359004abe7c4e87aae3065f3c2d4
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 685f95f93c2d03c46afbc63a27fdb64c
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 112000000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
@@ -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:
|
||||
@@ -0,0 +1,242 @@
|
||||
#if PICO_OPENXR_SDK
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
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;
|
||||
bool camera_raw_data=true;
|
||||
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);
|
||||
|
||||
|
||||
Dictionary<string, string> cameraParams1 = new Dictionary<string, string>();
|
||||
cameraParams1.Add(PXRCapture.KEY_ENABLE_MVHEVC, PXRCapture.VALUE_FALSE);
|
||||
cameraParams1.Add(PXRCapture.KEY_VIDEO_FPS, "30");
|
||||
cameraParams1.Add(PXRCapture.KEY_OUTPUT_CAMERA_RAW_DATA, camera_raw_data?PXRCapture.VALUE_TRUE:PXRCapture.VALUE_FALSE);
|
||||
|
||||
PXR_Enterprise.Configurefor4U(cameraParams1);
|
||||
|
||||
Dictionary<string, string> cameraParams = new Dictionary<string, string>();
|
||||
cameraParams.Add(PXRCapture.KEY_MCTF, PXRCapture.VALUE_TRUE);
|
||||
cameraParams.Add(PXRCapture.KEY_EIS, PXRCapture.VALUE_FALSE);
|
||||
cameraParams.Add(PXRCapture.KEY_MFNR, PXRCapture.VALUE_TRUE);
|
||||
|
||||
PXR_Enterprise.OpenCameraAsyncfor4U(ret =>
|
||||
{
|
||||
Debug.Log($"{tag} OpenCameraAsync ret= {ret}");
|
||||
},cameraParams);
|
||||
|
||||
Invoke(nameof(getCameraParameters), 1f);
|
||||
|
||||
}
|
||||
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 =$"内参::[fx,fy,cx,cy]=[{param.fx},{param.fy},{param.cx},{param.cy}]\n"+ $"外参::L=[{param.l_pos},{param.l_rot}]\n"+$" R=[{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);
|
||||
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
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ed1e10c5fb5ae544595d9c223445b3c9
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 17d857d92a3b44e4dbdee33b07ebf948
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1bc19543f1bf9114b8e974ae6ba05f7b
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,240 @@
|
||||
#if !PICO_OPENXR_SDK
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.InteropServices;
|
||||
using AOT;
|
||||
using Unity.XR.PICO.TOBSupport;
|
||||
using Unity.XR.PXR;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class EnterpriseAPI : MonoBehaviour
|
||||
{
|
||||
private string tag = "CaptureLib ----";
|
||||
private PXR_CompositionLayer overlay = null;
|
||||
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;
|
||||
private bool isRuning=false;
|
||||
private bool d=false;
|
||||
// 将视频帧转换为 Unity 纹理
|
||||
Texture2D texture;
|
||||
public Text fpsText;
|
||||
public Toggle showtime;
|
||||
public Text showtimeText;
|
||||
bool camera_raw_data=false;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
PXR_Manager.EnableVideoSeeThrough = true;
|
||||
PXR_Enterprise.UseGlobalPose(true);
|
||||
Debug.Log($"{tag} Awake ");
|
||||
PXR_Plugin.System.UPxr_GetConfigFloat(ConfigType.ToDelaSensorY);
|
||||
overlay = GetComponent<PXR_CompositionLayer>();
|
||||
if (overlay == null)
|
||||
{
|
||||
Debug.LogError("PXRLog Overlay is null!");
|
||||
overlay = gameObject.AddComponent<PXR_CompositionLayer>();
|
||||
}
|
||||
|
||||
imgByte = new byte[width*height*4];
|
||||
texture = new Texture2D((int)width, (int)height, TextureFormat.RGBA32, false);
|
||||
videoMaterial.SetTexture("_MainTex", texture);
|
||||
PXR_Enterprise.InitEnterpriseService();
|
||||
PXR_Enterprise.BindEnterpriseService(b =>
|
||||
{
|
||||
Debug.Log($"{tag} Bind enterprise service success={b}");
|
||||
} );
|
||||
}
|
||||
public void OpenCamera()
|
||||
{
|
||||
Dictionary<string, string> cameraParams1 = new Dictionary<string, string>();
|
||||
cameraParams1.Add(PXRCapture.KEY_OUTPUT_CAMERA_RAW_DATA, camera_raw_data?PXRCapture.VALUE_TRUE:PXRCapture.VALUE_FALSE);
|
||||
PXR_Enterprise.Configurefor4U(cameraParams1);
|
||||
|
||||
Dictionary<string, string> cameraParams = new Dictionary<string, string>();
|
||||
cameraParams.Add(PXRCapture.KEY_MCTF, PXRCapture.VALUE_TRUE);
|
||||
cameraParams.Add(PXRCapture.KEY_EIS, PXRCapture.VALUE_FALSE);
|
||||
cameraParams.Add(PXRCapture.KEY_MFNR, PXRCapture.VALUE_TRUE);
|
||||
|
||||
PXR_Enterprise.OpenCameraAsyncfor4U(ret =>
|
||||
{
|
||||
Debug.Log($"{tag} OpenCameraAsync ret= {ret}");
|
||||
},cameraParams);
|
||||
|
||||
Invoke(nameof(getCameraParameters), 1f);
|
||||
}
|
||||
|
||||
public void SetRawData(int listChoice)
|
||||
{
|
||||
Debug.Log($"{tag} SetMode ret= {listChoice}");
|
||||
camera_raw_data=listChoice==1;
|
||||
}
|
||||
public void SetMode(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);
|
||||
if (CameraIntrinsics!=null)
|
||||
{
|
||||
Debug.Log($"getCamera-- GetCameraIntrinsics:[{CameraIntrinsics[0]},{CameraIntrinsics[1]},{CameraIntrinsics[2]},{CameraIntrinsics[3]}]");
|
||||
}
|
||||
if (leftExtrinsics!=null)
|
||||
{
|
||||
Debug.Log(tag+"getCamera-- GetCameraExtrinsics leftExtrinsics :\n"+leftExtrinsics);
|
||||
}
|
||||
if (rightExtrinsics!=null)
|
||||
{
|
||||
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 =$"内参::[fx,fy,cx,cy]=[{param.fx},{param.fy},{param.cx},{param.cy}]\n"+ $"外参::L=[{param.l_pos},{param.l_rot}]\n"+$" R=[{param.r_pos},{param.r_rot}]";
|
||||
}
|
||||
public void StartPreview()
|
||||
{
|
||||
Debug.Log($"{tag} StartPreview ");
|
||||
overlay.enabled = true;
|
||||
Debug.Log($"{tag} externalAndroidSurfaceObject "+overlay.externalAndroidSurfaceObject);
|
||||
PXR_Enterprise.StartPreviewfor4U(overlay.externalAndroidSurfaceObject,Mode);
|
||||
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);
|
||||
}
|
||||
public float showTime = 1f;
|
||||
|
||||
private int count = 0;
|
||||
private float deltaTime = 0f;
|
||||
public void StartGetImageData()
|
||||
{
|
||||
Debug.Log($"{tag} StartGetImageData ");
|
||||
overlay.enabled = false;
|
||||
|
||||
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("onImageAvailable cameraFramePredictedDisplayTime = "+frame.timestamp +" Time.deltaTime:"+Time.deltaTime);
|
||||
Debug.Log("onImageAvailable size = "+frame.datasize);
|
||||
|
||||
|
||||
count++;
|
||||
|
||||
});
|
||||
Debug.Log($"{tag} OpenCameraAsync Mode= {Mode}");
|
||||
bool ret=PXR_Enterprise.StartGetImageDatafor4U(Mode, width, height);
|
||||
isRuning=true;
|
||||
Debug.Log($"{tag} OpenCameraAsync ret= {ret}");
|
||||
}
|
||||
|
||||
|
||||
public void Release()
|
||||
{
|
||||
PXR_Enterprise.CloseCamerafor4U();
|
||||
}
|
||||
|
||||
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);
|
||||
}
|
||||
time= PXR_Enterprise.GetPredictedDisplayTime();
|
||||
a=PXR_Enterprise.GetPredictedMainSensorState(time);
|
||||
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 ret= {ret}");
|
||||
reopen = ret;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
#endif
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 222355b0708cdae4f87ca7a4a4618d1f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0b33a1a488ac657409feee39a1e8715f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5ae7139eb33276844be313c61d8bae89
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,131 @@
|
||||
#if PICO_OPENXR_SDK
|
||||
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
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f06b7308d86d8ad4b90e32cbc0dcdb2a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3435bd49e96ca5040baf62d3d31b65fd
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,191 @@
|
||||
#if PICO_OPENXR_SDK
|
||||
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
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 08f33d7dda159e143969c80188c1203f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 885ac79e2188a9546a58dc2a5dd526f8
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,102 @@
|
||||
#if !PICO_OPENXR_SDK
|
||||
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_CompositionLayer 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_CompositionLayer>();
|
||||
if (overlay == null)
|
||||
{
|
||||
Debug.LogError("PXRLog Overlay is null!");
|
||||
overlay = gameObject.AddComponent<PXR_CompositionLayer>();
|
||||
}
|
||||
|
||||
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.pico.myapplication", "com.pico.myapplication.MainActivity");
|
||||
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
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9eff5f4fc4057284d87f413c0a63b1a0
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6971024d1aca1a545ab8ad133a569d1a
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,181 @@
|
||||
#if !PICO_OPENXR_SDK
|
||||
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
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ff6164edb8163214a94140877bd556c5
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c0a26202f0fdfe449a11cf4685646f86
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3d50237881bc77e4087171150691c3a1
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 865e330f2b0cd4141ab4a4153d535675
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 71820ab70affcbd4faa8707df25e1725
|
||||
timeCreated: 1685945465
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 88ffdfff23fd922469ae84af0a209731
|
||||
timeCreated: 1685943806
|
||||
@@ -0,0 +1,90 @@
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public enum CustomizeSettingsTabEnum
|
||||
{
|
||||
/// <summary>
|
||||
/// Hide the WIFI tag. Applicable to MerlinE, NEO3, PICO4, and Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_WLAN = 0,
|
||||
/// <summary>
|
||||
/// Hide the controller tag. Applicable to MerlinE, NEO3, and PICO4 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_CONTROLLER = 1,
|
||||
/// <summary>
|
||||
/// Hide the Bluetooth tag. Applicable to MerlinE, NEO3, PICO4, and Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_BLUETOOTH = 2,
|
||||
/// <summary>
|
||||
/// Hide the display tag. Applicable to MerlinE, NEO3, and PICO4 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_DISPLAY = 3,
|
||||
/// <summary>
|
||||
/// Hide the lab tag. Applicable to MerlinE, NEO3, and PICO4 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_LAB = 4,
|
||||
/// <summary>
|
||||
/// Hide the lock screen entry. Applicable to MerlinE, NEO3, PICO4, and Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_GENERAL_LOCKSCREEN = 5,
|
||||
/// <summary>
|
||||
/// Hide the factory reset entry. Applicable to MerlinE, NEO3, PICO4, and Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_GENERAL_FACTORY_RESET = 6,
|
||||
/// <summary>
|
||||
/// Account settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_ACCOUNTS = 7,
|
||||
/// <summary>
|
||||
/// System upgrade settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_SYSTEM_UPDATE = 8,
|
||||
/// <summary>
|
||||
/// Interaction settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_INTERACTION = 9,
|
||||
/// <summary>
|
||||
/// Pupil distance settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_PUPIL_DISTANCE = 10,
|
||||
/// <summary>
|
||||
/// Camera and see-through settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_CAMERA_SEETHROUGH = 11,
|
||||
/// <summary>
|
||||
/// Virtual environment settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_VIRTUAL_ENVIRONMENT = 12,
|
||||
/// <summary>
|
||||
/// Safety guard settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_SAFEGUARD = 13,
|
||||
/// <summary>
|
||||
/// Room capture settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_ROOM_CAPTURE = 14,
|
||||
/// <summary>
|
||||
/// Performance settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_PERFORMANCE = 15,
|
||||
/// <summary>
|
||||
/// Control center settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_CONTROL_CENTRE = 16,
|
||||
/// <summary>
|
||||
/// Notification settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_NOTIFICATIONS = 17,
|
||||
/// <summary>
|
||||
/// App management settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_APP_MANAGEMENT = 18,
|
||||
/// <summary>
|
||||
/// About device settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_ABOUT = 19,
|
||||
/// <summary>
|
||||
/// Help and feedback settings. Applicable to Sparrow_PUI5130 devices.
|
||||
/// </summary>
|
||||
CUSTOMIZE_SETTINGS_TAB_HELP_FEEDBACK = 20
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f2714615e3a23d9449fdf19cdf584b48
|
||||
timeCreated: 1685945379
|
||||
@@ -0,0 +1,8 @@
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public enum DeviceControlEnum
|
||||
{
|
||||
DEVICE_CONTROL_REBOOT=0,
|
||||
DEVICE_CONTROL_SHUTDOWN=1
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9cfd7333ed47ab44a874e4fe98c1c08d
|
||||
timeCreated: 1685937183
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 599cdfc907c46d6488436b1622eafd50
|
||||
timeCreated: 1685937306
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6effac1077bec9348aaf4f68c8787e7f
|
||||
timeCreated: 1685937603
|
||||
@@ -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,
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 79034eaebec042aa9293074a76344d1a
|
||||
timeCreated: 1721371631
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 31d0774851654ff7becb2ee354dfad40
|
||||
timeCreated: 1721371579
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: aab97c5d20f1fe940beb18a3fe308e46
|
||||
timeCreated: 1685945051
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1de348b2dfe662e4b9053c101bbda4fa
|
||||
timeCreated: 1685945106
|
||||
@@ -0,0 +1,9 @@
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public enum PICOCastUrlTypeEnum
|
||||
{
|
||||
NORMAL_URL=0,
|
||||
NO_CONFIRM_URL=1,
|
||||
RTMP_URL=2
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1d04bb6dfca248143bdd812fb00ea7b2
|
||||
timeCreated: 1685944504
|
||||
@@ -0,0 +1,8 @@
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public enum PackageControlEnum
|
||||
{
|
||||
PACKAGE_SILENCE_INSTALL=0,
|
||||
PACKAGE_SILENCE_UNINSTALL=1
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f9508b93fb3d76f49ae71ad9e3d679f9
|
||||
timeCreated: 1685937232
|
||||
@@ -0,0 +1,7 @@
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public class PicoCastMediaFormat
|
||||
{
|
||||
public int bitrate = -1;//kb
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8eca65ab8e7e4984a8415528a35a2f3d
|
||||
timeCreated: 1686223794
|
||||
@@ -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)
|
||||
};
|
||||
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 46bdaa338aeb42e4c813168706e540f3
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public enum PowerOnOffLogoEnum
|
||||
{
|
||||
PLPowerOnLogo=0,
|
||||
PLPowerOnAnimation=1,
|
||||
PLPowerOffAnimation=2
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f7e0adfb5b4e8e342ad0fa15263e54ca
|
||||
timeCreated: 1685945676
|
||||
@@ -0,0 +1,13 @@
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public enum ScreenOffDelayTimeEnum
|
||||
{
|
||||
THREE,
|
||||
TEN ,
|
||||
THIRTY ,
|
||||
SIXTY,
|
||||
THREE_HUNDRED,
|
||||
SIX_HUNDRED ,
|
||||
NEVER
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 22e9ab23329ae354097af770cf179472
|
||||
timeCreated: 1685943725
|
||||
@@ -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,
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d484897b4d6e06b4281b6e25e222c723
|
||||
timeCreated: 1685945230
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ca0a63d4310322847a9569df3fb34d4a
|
||||
timeCreated: 1685943762
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 47b4eb0018f80d5428bed27d2e7f69bf
|
||||
timeCreated: 1685944404
|
||||
@@ -0,0 +1,8 @@
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public enum SwitchEnum
|
||||
{
|
||||
S_ON=0,
|
||||
S_OFF=1
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ef3b88f2e4c726543b34bbb0f0aca35f
|
||||
timeCreated: 1685937261
|
||||
@@ -0,0 +1,543 @@
|
||||
using System;
|
||||
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public enum SystemFunctionSwitchEnum
|
||||
{
|
||||
/// <summary>
|
||||
/// USB debugging switch.
|
||||
/// </summary>
|
||||
SFS_USB = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Automatic sleep switch.
|
||||
/// </summary>
|
||||
SFS_AUTOSLEEP = 1,
|
||||
|
||||
/// <summary>
|
||||
/// Screen-on charging switch.
|
||||
/// </summary>
|
||||
[Obsolete]
|
||||
SFS_SCREENON_CHARGING = 2,
|
||||
|
||||
/// <summary>
|
||||
/// OTG charging switch (only available on G2 series).
|
||||
/// </summary>
|
||||
SFS_OTG_CHARGING = 3,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the return icon in 2D mode (only available on G2 series).
|
||||
/// </summary>
|
||||
SFS_RETURN_MENU_IN_2DMODE = 4,
|
||||
|
||||
/// <summary>
|
||||
/// Combination key switch.
|
||||
/// </summary>
|
||||
SFS_COMBINATION_KEY = 5,
|
||||
|
||||
/// <summary>
|
||||
/// Power-on calibration switch (only available on G2 series).
|
||||
/// </summary>
|
||||
SFS_CALIBRATION_WITH_POWER_ON = 6,
|
||||
|
||||
/// <summary>
|
||||
/// System upgrade and update switch.
|
||||
/// </summary>
|
||||
SFS_SYSTEM_UPDATE = 7,
|
||||
|
||||
/// <summary>
|
||||
/// Mobile screen mirroring switch, only supports PUI4.X.
|
||||
/// </summary>
|
||||
SFS_CAST_SERVICE = 8,
|
||||
|
||||
/// <summary>
|
||||
/// Eye protection mode switch.
|
||||
/// </summary>
|
||||
SFS_EYE_PROTECTION = 9,
|
||||
|
||||
/// <summary>
|
||||
/// Permanent disable switch for 6Dof safety zone.
|
||||
/// </summary>
|
||||
SFS_SECURITY_ZONE_PERMANENTLY = 10,
|
||||
|
||||
/// <summary>
|
||||
/// Global calibration switch (only supported in 3dof mode).
|
||||
/// </summary>
|
||||
SFS_GLOBAL_CALIBRATION = 11,
|
||||
|
||||
/// <summary>
|
||||
/// Automatic calibration (Obsolete).
|
||||
/// </summary>
|
||||
[Obsolete] SFS_Auto_Calibration = 12,
|
||||
|
||||
/// <summary>
|
||||
/// USB boot switch.
|
||||
/// </summary>
|
||||
SFS_USB_BOOT = 13,
|
||||
|
||||
/// <summary>
|
||||
/// Global UI prompt switch for volume adjustment.
|
||||
/// </summary>
|
||||
SFS_VOLUME_UI = 14,
|
||||
|
||||
/// <summary>
|
||||
/// Global UI prompt switch for controller connection.
|
||||
/// </summary>
|
||||
SFS_CONTROLLER_UI = 15,
|
||||
|
||||
/// <summary>
|
||||
/// Interface for turning on/off the navigation bar.
|
||||
/// </summary>
|
||||
SFS_NAVGATION_SWITCH = 16,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the screen recording button.
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_RECORD_UI = 17,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for turning on/off the fitness UI, supported on Neo3 Pro PUI4.x.
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_FIT_UI = 18,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the screen mirroring button.
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_CAST_UI = 19,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the screen capture button.
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_CAPTURE_UI = 20,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for killing 2D apps in the background (Obsolete).
|
||||
/// </summary>
|
||||
[Obsolete] SFS_STOP_MEM_INFO_SERVICE = 21,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for restricting app auto-startup (Obsolete).
|
||||
/// </summary>
|
||||
[Obsolete] SFS_START_APP_BOOT_COMPLETED = 22,
|
||||
|
||||
/// <summary>
|
||||
/// Set the device as a host device.
|
||||
/// </summary>
|
||||
SFS_USB_FORCE_HOST = 23,
|
||||
|
||||
/// <summary>
|
||||
/// Set the default safety zone for Neo3 and PICO4 series devices.
|
||||
/// </summary>
|
||||
SFS_SET_DEFAULT_SAFETY_ZONE = 24,
|
||||
|
||||
/// <summary>
|
||||
/// Allow resetting the boundary for Neo3 and PICO4 series devices.
|
||||
/// </summary>
|
||||
SFS_ALLOW_RESET_BOUNDARY = 25,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the confirmation screen for the safety boundary on Neo3 and PICO4 series devices.
|
||||
/// </summary>
|
||||
SFS_BOUNDARY_CONFIRMATION_SCREEN = 26,
|
||||
|
||||
/// <summary>
|
||||
/// Recenter by long-pressing the Home key on Neo3 and PICO4 series devices.
|
||||
/// </summary>
|
||||
SFS_LONG_PRESS_HOME_TO_RECENTER = 27,
|
||||
|
||||
/// <summary>
|
||||
/// Keep the device connected to the network after the screen is off. Supported on PICO4 E [PUI5.4.0 and above], PICO G3 [PUI5.4.0 and above], and Neo3 Pro [PUI4.8.0 & 4.8.1 and above].
|
||||
/// </summary>
|
||||
SFS_POWER_CTRL_WIFI_ENABLE = 28,
|
||||
|
||||
/// <summary>
|
||||
/// Disable Wi-Fi. Supported on PICO4 E [PUI5.4.0 and above], PICO G3 [PUI5.4.0 and above], and Neo3 Pro [PUI4.8.0 & 4.8.1 and above].
|
||||
/// </summary>
|
||||
SFS_WIFI_DISABLE = 29,
|
||||
|
||||
/// <summary>
|
||||
/// 6Dof switch for Neo3 and PICO4 series devices.
|
||||
/// </summary>
|
||||
SFS_SIX_DOF_SWITCH = 30,
|
||||
|
||||
/// <summary>
|
||||
/// Inverse dispersion switch, available on PICO Neo3 and G3.
|
||||
/// </summary>
|
||||
SFS_INVERSE_DISPERSION = 31,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for logcat, path: data/logs.
|
||||
/// </summary>
|
||||
SFS_LOGCAT = 32,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for the proximity sensor.
|
||||
/// </summary>
|
||||
SFS_PSENSOR = 33,
|
||||
|
||||
/// <summary>
|
||||
/// OTA upgrade switch, available on [PUI5.4.0 and above].
|
||||
/// </summary>
|
||||
SFS_SYSTEM_UPDATE_OTA = 34,
|
||||
|
||||
/// <summary>
|
||||
/// App upgrade and update switch, available on [PUI5.4.0 and above].
|
||||
/// </summary>
|
||||
SFS_SYSTEM_UPDATE_APP = 35,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the WLAN button in the quick settings, available on [PUI5.4.0 and above].
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_WLAN_UI = 36,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the safety boundary button in the quick settings, available on PICO4E & Neo3Pro [PUI5.4.0].
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_BOUNDARY_UI = 37,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the Bluetooth button in the quick settings, available on [PUI5.4.0 and above].
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_BLUETOOTH_UI = 38,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the one-click cleanup button in the quick settings, available on [PUI5.4.0].
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_CLEAN_TASK_UI = 39,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the IPD adjustment button in the quick settings, available on PICO4E [PUI5.4.0].
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_IPD_ADJUSTMENT_UI = 40,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the power (shutdown/restart) button in the quick settings, available on [PUI5.4.0 and above].
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_POWER_UI = 41,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the edit button in the quick settings, available on [PUI5.4.0 and above].
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_EDIT_UI = 42,
|
||||
|
||||
/// <summary>
|
||||
/// Custom resource button in the industry settings - basic settings, available on [PUI5.4.0 and above].
|
||||
/// </summary>
|
||||
SFS_BASIC_SETTING_APP_LIBRARY_UI = 43,
|
||||
|
||||
/// <summary>
|
||||
/// Custom quick settings button in the industry settings - basic settings, available on [PUI5.4.0 and above].
|
||||
/// </summary>
|
||||
SFS_BASIC_SETTING_SHORTCUT_UI = 44,
|
||||
|
||||
/// <summary>
|
||||
/// Whether the LED indicator lights up when the screen is off and the battery level is less than 20%, available on PICO G3.
|
||||
/// </summary>
|
||||
SFS_LED_FLASHING_WHEN_SCREEN_OFF = 45,
|
||||
|
||||
/// <summary>
|
||||
/// Show/hide the custom settings items in the basic settings.
|
||||
/// </summary>
|
||||
SFS_BASIC_SETTING_CUSTOMIZE_SETTING_UI = 46,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the app quit confirmation dialog when switching apps.
|
||||
/// </summary>
|
||||
SFS_BASIC_SETTING_SHOW_APP_QUIT_CONFIRM_DIALOG = 47,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for killing background VR apps. 1 means kill, 2 means don't kill, default is kill.
|
||||
/// </summary>
|
||||
SFS_BASIC_SETTING_KILL_BACKGROUND_VR_APP = 48,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying a blue icon during screen mirroring. Default is to display, set to 0 to hide.
|
||||
/// </summary>
|
||||
SFS_BASIC_SETTING_SHOW_CAST_NOTIFICATION = 49,
|
||||
|
||||
/// <summary>
|
||||
/// Automatic IPD switch, available on PICO 4E.
|
||||
/// </summary>
|
||||
SFS_AUTOMATIC_IPD = 50,
|
||||
|
||||
/// <summary>
|
||||
/// Quick see-through mode switch, available on PICO Neo3 Pro, PICO 4E, and Neo3 Enterprise Edition [PUI 5.7.0].
|
||||
/// </summary>
|
||||
SFS_QUICK_SEETHROUGH_MODE = 51,
|
||||
|
||||
/// <summary>
|
||||
/// High refresh rate mode switch, available on PICO Neo3 Pro, PICO 4E, and Neo3 Enterprise Edition [PUI 5.7.0].
|
||||
/// </summary>
|
||||
SFS_HIGN_REFERSH_MODE = 52,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for keeping apps running in see-through mode, available on PICO Neo3 Pro, PICO 4E, Neo3 Enterprise Edition, and G3 [PUI 5.8.0].
|
||||
/// </summary>
|
||||
SFS_SEETHROUGH_APP_KEEP_RUNNING = 53,
|
||||
|
||||
/// <summary>
|
||||
/// Outdoor tracking enhancement, available on PICO Neo3 Pro, PICO 4E, and Neo3 Enterprise Edition [PUI 5.8.0].
|
||||
/// </summary>
|
||||
SFS_OUTDOOR_TRACKING_ENHANCEMENT = 54,
|
||||
|
||||
/// <summary>
|
||||
/// Quick IPD confirmation, available on PICO 4E [PUI 5.8.0].
|
||||
/// </summary>
|
||||
SFS_AUTOIPD_AUTO_COMFIRM = 55,
|
||||
|
||||
/// <summary>
|
||||
/// Launch automatic IPD when the headset is worn, available on PICO 4E [PUI 5.8.0].
|
||||
/// </summary>
|
||||
SFS_LAUNCH_AUTOIPD_IF_GLASSES_WEARED = 56,
|
||||
|
||||
/// <summary>
|
||||
/// Enable home gesture recognition, available on PICO Neo3 Pro, PICO 4E, and Neo3 Enterprise Edition [PUI 5.8.0].
|
||||
/// </summary>
|
||||
SFS_GESTURE_RECOGNITION_HOME_ENABLE = 57,
|
||||
|
||||
/// <summary>
|
||||
/// Enable reset gesture recognition, available on PICO Neo3 Pro, PICO 4E, and Neo3 Enterprise Edition [PUI 5.8.0].
|
||||
/// </summary>
|
||||
SFS_GESTURE_RECOGNITION_RESET_ENABLE = 58,
|
||||
|
||||
/// <summary>
|
||||
/// Automatic file copying from USB device (OTG), available on PICO Neo3 Pro, PICO 4E, Neo3 Enterprise Edition, and G3 [PUI 5.8.0].
|
||||
/// </summary>
|
||||
SFS_AUTO_COPY_FILES_FROM_USB_DEVICE = 59,
|
||||
|
||||
/// <summary>
|
||||
/// Wi-Fi P2P auto-connect, allowing silent connection without pop-up window.
|
||||
/// </summary>
|
||||
SFS_WIFI_P2P_AUTO_CONNECT = 60,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for enabling file copying when the screen is locked.
|
||||
/// </summary>
|
||||
SFS_LOCK_SCREEN_FILE_COPY_ENABLE = 61,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for enabling dynamic marker tracking.
|
||||
/// </summary>
|
||||
SFS_TRACKING_ENABLE_DYNAMIC_MARKER = 62,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for toggling between 3DOF and 6DOF modes for the controller.
|
||||
/// </summary>
|
||||
SFS_ENABLE_3DOF_CONTROLLER_TRACKING = 63,
|
||||
|
||||
/// <summary>
|
||||
/// Enable controller vibration feedback, supported from PUI560.
|
||||
/// </summary>
|
||||
SFS_SYSTEM_VIBRATION_ENABLED = 64,
|
||||
|
||||
/// <summary>
|
||||
/// Bluetooth switch.
|
||||
/// </summary>
|
||||
SFS_BLUE_TOOTH = 65,
|
||||
|
||||
/// <summary>
|
||||
/// Enhanced video quality, supported from PUI580.
|
||||
/// </summary>
|
||||
SFS_ENHANCED_VIDEO_QUALITY = 66,
|
||||
|
||||
/// <summary>
|
||||
/// Gesture recognition (tracking), supported from PUI560.
|
||||
/// </summary>
|
||||
SFS_GESTURE_RECOGNITION = 67,
|
||||
|
||||
/// <summary>
|
||||
/// Automatic brightness adjustment, supported from PUI560.
|
||||
/// </summary>
|
||||
SFS_BRIGHTNESS_AUTO_ADJUST = 68,
|
||||
|
||||
/// <summary>
|
||||
/// High-current OTG mode, supported from PUI580.
|
||||
/// </summary>
|
||||
SFS_HIGH_CURRENT_OTG_MODE = 69,
|
||||
|
||||
/// <summary>
|
||||
/// Disable background app audio playback, supported from PUI560.
|
||||
/// </summary>
|
||||
SFS_BACKGROUND_APP_PLAY_AUDIO = 70,
|
||||
|
||||
/// <summary>
|
||||
/// Do not disturb mode, supported from PUI560.
|
||||
/// </summary>
|
||||
SFS_NO_DISTURB_MODE = 71,
|
||||
|
||||
/// <summary>
|
||||
/// Monocular screen mirroring, supported from PUI570.
|
||||
/// </summary>
|
||||
SFS_MONOCULAR_SCREENCAST = 72,
|
||||
|
||||
/// <summary>
|
||||
/// Monocular screen capture and recording, supported from PUI570.
|
||||
/// </summary>
|
||||
SFS_MONOCULAR_SCREEN_CAPTURE = 73,
|
||||
|
||||
/// <summary>
|
||||
/// Stabilize the recording screen to reduce jitter, supported from PUI570.
|
||||
/// </summary>
|
||||
SFS_STABILIZATION_FOR_RECORDING = 74,
|
||||
|
||||
/// <summary>
|
||||
/// Hide 2D apps when returning to the home screen if the main app is a VR app.
|
||||
/// </summary>
|
||||
SFS_HIDE_2D_APP_WHEN_GO_TO_HOME = 75,
|
||||
|
||||
/// <summary>
|
||||
/// Controller vibration switch.
|
||||
/// </summary>
|
||||
SFS_CONTROLLER_VIBRATE = 76,
|
||||
|
||||
/// <summary>
|
||||
/// Refresh mode switch.
|
||||
/// </summary>
|
||||
SFS_REFRESH_MODE = 77,
|
||||
|
||||
/// <summary>
|
||||
/// Smart audio switch.
|
||||
/// </summary>
|
||||
SFS_SMART_AUDIO = 78,
|
||||
|
||||
/// <summary>
|
||||
/// Eye tracking switch.
|
||||
/// </summary>
|
||||
SFS_EYE_TRACK = 79,
|
||||
|
||||
/// <summary>
|
||||
/// Facial expression simulation switch.
|
||||
/// </summary>
|
||||
SFS_FACE_SIMULATE = 80,
|
||||
|
||||
/// <summary>
|
||||
/// Enable microphone during screen recording.
|
||||
/// </summary>
|
||||
SFS_ENABLE_MIC_WHEN_RECORD = 81,
|
||||
|
||||
/// <summary>
|
||||
/// Continue recording when the screen is off.
|
||||
/// </summary>
|
||||
SFS_KEEP_RECORD_WHEN_SCREEN_OFF = 82,
|
||||
|
||||
/// <summary>
|
||||
/// Controller vibration tip in the safety boundary.
|
||||
/// </summary>
|
||||
SFS_CONTROLLER_TIP_VIBRATE = 83,
|
||||
|
||||
/// <summary>
|
||||
/// Controller-triggered see-through in the safety boundary.
|
||||
/// </summary>
|
||||
SFS_CONTROLLER_SEE_THROUGH = 84,
|
||||
|
||||
/// <summary>
|
||||
/// Lower the height of the safety boundary in place.
|
||||
/// </summary>
|
||||
SFS_LOW_BORDER_HEIGHT = 85,
|
||||
|
||||
/// <summary>
|
||||
/// Safety tip for fast movement in the safety boundary.
|
||||
/// </summary>
|
||||
SFS_FAST_MOVE_TIP = 86,
|
||||
|
||||
/// <summary>
|
||||
/// Enable wireless USB debugging.
|
||||
/// </summary>
|
||||
SFS_WIRELESS_USB_ADB = 87,
|
||||
|
||||
/// <summary>
|
||||
/// Automatic system update.
|
||||
/// </summary>
|
||||
SFS_SYSTEM_AUTO_UPDATE = 88,
|
||||
|
||||
/// <summary>
|
||||
/// USB tethering switch.
|
||||
/// </summary>
|
||||
SFS_USB_TETHERING = 89,
|
||||
|
||||
/// <summary>
|
||||
/// Respond to the HMD back key in real-time in VR apps.
|
||||
/// When the switch is on: Pressing the HMD back key sends a DOWN event, and releasing it sends an UP event.
|
||||
/// When the switch is off: Pressing the HMD back key does not send a DOWN event, and releasing it sends both DOWN/UP events.
|
||||
/// </summary>
|
||||
SFS_REAL_TIME_RESPONSE_HMD_BACK_KEY_IN_VR_APP = 90,
|
||||
|
||||
/// <summary>
|
||||
/// Prioritize using markers to retrieve the map.
|
||||
/// </summary>
|
||||
SFS_RETRIEVE_MAP_BY_MARKER_FIRST = 91,
|
||||
|
||||
/// <summary>
|
||||
/// Detect if the controller is in a still state.
|
||||
/// </summary>
|
||||
SFS_CONTROLLER_STILL = 92,
|
||||
|
||||
/// <summary>
|
||||
/// Switch for displaying the performance button in the quick settings, available on Sparrow_PUI513.
|
||||
/// </summary>
|
||||
SFS_SHORTCUT_SHOW_PERFORMANCE_UI = 93,
|
||||
|
||||
/// <summary>
|
||||
/// Battery status display.
|
||||
/// 0 - Do not display.
|
||||
/// 1 - Display on the HUD.
|
||||
/// 2 - Always display.
|
||||
/// </summary>
|
||||
SFS_BATTERY_STATUS_DISPLAY = 94,
|
||||
|
||||
/// <summary>
|
||||
/// Quick relocation.
|
||||
/// </summary>
|
||||
SFS_QUICK_RELOCATION = 95,
|
||||
|
||||
/// <summary>
|
||||
///toggle for mixed tracking mode
|
||||
/// </summary>
|
||||
SFS_MIXED_INTERACTION_MODE = 96,
|
||||
|
||||
/// <summary>
|
||||
/// reminder for abnormal locating
|
||||
/// </summary>
|
||||
SFS_REMINDER_FOR_ABNORMAL_LOCATING = 97,
|
||||
|
||||
/// <summary>
|
||||
/// HOME gesture toggle: in system desktop
|
||||
/// </summary>
|
||||
SFS_GESTURE_RECOGNITION_HOME_ENABLE_ON_DESKTOP=98,
|
||||
|
||||
/// <summary>
|
||||
/// RESET gesture toggle: in system desktop
|
||||
/// </summary>
|
||||
SFS_GESTURE_RECOGNITION_RESET_ENABLE_ON_DESKTOP=99,
|
||||
|
||||
/// <summary>
|
||||
/// disable window memory optimization strategy
|
||||
/// </summary>
|
||||
SFS_DISABLE_WINDOW_MEMORY_OPTIMIZATION=100,
|
||||
|
||||
/// <summary>
|
||||
/// global VST.
|
||||
/// </summary>
|
||||
SFS_GLOBAL_VST=102,
|
||||
|
||||
/// <summary>
|
||||
/// toggle for hand tracking injection
|
||||
/// </summary>
|
||||
SFS_HAND_TRACKING_HOOK=103,
|
||||
|
||||
/// <summary>
|
||||
/// toggle for USB tethering with static IP
|
||||
/// </summary>
|
||||
SFS_USB_TETHERING_STATIC_IP_ENABLED=104,
|
||||
|
||||
/// <summary>
|
||||
/// tracking mode (`0`- body tracking; `1` - object tracking)
|
||||
/// </summary>
|
||||
SFS_TRACKER_MODE=105,
|
||||
|
||||
/// <summary>
|
||||
/// Guardian persistent immersive mode: do not auto-enter VST when leaving the play area (`0` — system default, no special handling; `1` — do not trigger VST)
|
||||
/// </summary>
|
||||
SFS_GUARDIAN_PERSISTENT_IMMERSION_MODE=106
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d478586fa3b0236429ce81bab6f48957
|
||||
timeCreated: 1685943877
|
||||
@@ -0,0 +1,134 @@
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public enum SystemInfoEnum
|
||||
{
|
||||
/// <summary>
|
||||
/// Check the battery level.
|
||||
/// </summary>
|
||||
ELECTRIC_QUANTITY = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Check the PUI version number.
|
||||
/// </summary>
|
||||
PUI_VERSION = 1,
|
||||
|
||||
/// <summary>
|
||||
/// Check the device model.
|
||||
/// </summary>
|
||||
EQUIPMENT_MODEL = 2,
|
||||
|
||||
/// <summary>
|
||||
/// Check the device serial number (SN).
|
||||
/// </summary>
|
||||
EQUIPMENT_SN = 3,
|
||||
|
||||
/// <summary>
|
||||
/// Check the customer serial number (SN).
|
||||
/// </summary>
|
||||
CUSTOMER_SN = 4,
|
||||
|
||||
/// <summary>
|
||||
/// Check the internal storage space of the device.
|
||||
/// </summary>
|
||||
INTERNAL_STORAGE_SPACE_OF_THE_DEVICE = 5,
|
||||
|
||||
/// <summary>
|
||||
/// Check the Bluetooth status of the device.
|
||||
/// </summary>
|
||||
DEVICE_BLUETOOTH_STATUS = 6,
|
||||
|
||||
/// <summary>
|
||||
/// Check the name of the connected Bluetooth device.
|
||||
/// </summary>
|
||||
BLUETOOTH_NAME_CONNECTED = 7,
|
||||
|
||||
/// <summary>
|
||||
/// Check the Bluetooth MAC address.
|
||||
/// </summary>
|
||||
BLUETOOTH_MAC_ADDRESS = 8,
|
||||
|
||||
/// <summary>
|
||||
/// Check the Wi-Fi status of the device.
|
||||
/// </summary>
|
||||
DEVICE_WIFI_STATUS = 9,
|
||||
|
||||
/// <summary>
|
||||
/// Check the name of the connected Wi-Fi network.
|
||||
/// </summary>
|
||||
WIFI_NAME_CONNECTED = 10,
|
||||
|
||||
/// <summary>
|
||||
/// Check the WLAN MAC address.
|
||||
/// </summary>
|
||||
WLAN_MAC_ADDRESS = 11,
|
||||
|
||||
/// <summary>
|
||||
/// Check the device IP address.
|
||||
/// </summary>
|
||||
DEVICE_IP = 12,
|
||||
|
||||
/// <summary>
|
||||
/// Check if the device is charging.
|
||||
/// </summary>
|
||||
CHARGING_STATUS = 13,
|
||||
|
||||
/// <summary>
|
||||
/// Neo3 device old and new keys.
|
||||
/// </summary>
|
||||
DEVICE_KEY = 14,
|
||||
|
||||
/// <summary>
|
||||
/// Bluetooth information of the device itself.
|
||||
/// Return value format: Name|Address
|
||||
/// Return value example: PICO 4|08:16:D5:70:20:11
|
||||
/// </summary>
|
||||
BLUETOOTH_INFO_DEVICE = 15,
|
||||
|
||||
/// <summary>
|
||||
/// Information of the connected Bluetooth devices.
|
||||
/// Return value format: [Bluetooth device 1 name|Bluetooth device 1 address, Bluetooth device 2 name|Bluetooth device 2 address, ...]
|
||||
/// Return value example: [PICO 4|08:16:D5:70:20:11, PICO Neo 3|21:23:D5:7A:2C:DE]
|
||||
/// </summary>
|
||||
BLUETOOTH_INFO_CONNECTED = 16,
|
||||
|
||||
/// <summary>
|
||||
/// Camera temperature in Celsius.
|
||||
/// </summary>
|
||||
CAMERA_TEMPERATURE_CELSIUS = 17,
|
||||
|
||||
/// <summary>
|
||||
/// Camera temperature in Fahrenheit.
|
||||
/// </summary>
|
||||
CAMERA_TEMPERATURE_FAHRENHEIT = 18,
|
||||
|
||||
/// <summary>
|
||||
/// Large space map information.
|
||||
/// </summary>
|
||||
LARGESPACE_MAP_INFO = 19,
|
||||
|
||||
/// <summary>
|
||||
/// Current charging protocol.
|
||||
/// </summary>
|
||||
CURRENT_CHARGING_PROTOCOL = 20,
|
||||
|
||||
/// <summary>
|
||||
/// Maximum USB charging power.
|
||||
/// </summary>
|
||||
USB_PWOER_MAX = 21,
|
||||
|
||||
/// <summary>
|
||||
/// Head-mounted display (HMD) position and orientation.
|
||||
/// </summary>
|
||||
HMD_POSITION_AND_ORIENTATION = 22,
|
||||
|
||||
/// <summary>
|
||||
/// the status of PSensor
|
||||
/// </summary>
|
||||
PSENSOR_STATUS = 23,
|
||||
|
||||
/// <summary>
|
||||
/// the scale of the large-space map
|
||||
/// </summary>
|
||||
LARGE_SPACE_MAP_SCALE = 24
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1fb47fac324da0244b89e5cba9b606db
|
||||
timeCreated: 1685937098
|
||||
@@ -0,0 +1,9 @@
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public enum SystemKeyEnum
|
||||
{
|
||||
ENTER_KEY=0,
|
||||
BACK_KEY=1,
|
||||
VOLUME_KEY=2,
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6d168ba74a784d1c8fcf699a5e6e12b5
|
||||
timeCreated: 1698917116
|
||||
@@ -0,0 +1,8 @@
|
||||
namespace Unity.XR.PICO.TOBSupport
|
||||
{
|
||||
public enum USBConfigModeEnum
|
||||
{
|
||||
MTP=0,
|
||||
CHARGE=1
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 83c4de97e8bbda3448a5180986a87c33
|
||||
timeCreated: 1685944441
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c5c24af23d2b3de43bf3444f7edca288
|
||||
timeCreated: 1685952511
|
||||
@@ -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);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user