导入插件

This commit is contained in:
shenjianxing 2025-03-25 11:33:22 +08:00
parent cc7f326c14
commit 1af7f29945
79 changed files with 31894 additions and 0 deletions

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

@ -57,8 +57,13 @@ namespace QFramework
{
string uiroot = "UIRoot";
#if VR
#if Turing
uiroot = "TuringUIRoot";
#else
uiroot = "VRUIRoot";
#endif
#endif
Instantiate(Resources.Load<GameObject>(uiroot));
mInstance = MonoSingletonProperty<UIRoot>.Instance;
mInstance.name = "UIRoot";

View File

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

8
Assets/Samples.meta Normal file
View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -0,0 +1,88 @@
%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: 2000
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}
- _SpecGlossMap:
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.27901387, g: 0.3283497, b: 0.6226415, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []

View File

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

View File

@ -0,0 +1,83 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Green
m_Shader: {fileID: 7, 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.28746885, g: 0.6415094, b: 0.33287004, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View File

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

View File

@ -0,0 +1,83 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Purple
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: 2000
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.48141107, g: 0.29076183, b: 0.6226415, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View File

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

View File

@ -0,0 +1,83 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Red
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 2000
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.7169812, g: 0.253649, b: 0.253649, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View File

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

View File

@ -0,0 +1,83 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Violet
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: 2000
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.6981132, g: 0.26673195, b: 0.6565333, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View File

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

View File

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

View File

@ -0,0 +1,97 @@
fileFormatVersion: 2
guid: 74382b74e0ea3f04da150046b3d3106a
ModelImporter:
serializedVersion: 23
fileIDToRecycleName:
100000: //RootNode
400000: //RootNode
2100000: No Name
2300000: //RootNode
3300000: //RootNode
4300000: Cylinder
externalObjects: {}
materials:
importMaterials: 1
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 1
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
optimizeMeshForGPU: 1
keepQuads: 0
weldVertices: 1
preserveHierarchy: 0
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVPackMargin: 4
useFileScale: 1
previousCalculatedGlobalScale: 1
hasPreviousCalculatedGlobalScale: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
importAnimation: 1
copyAvatar: 0
humanDescription:
serializedVersion: 2
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
animationType: 0
humanoidOversampling: 1
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

@ -0,0 +1,659 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!29 &1
OcclusionCullingSettings:
m_ObjectHideFlags: 0
serializedVersion: 2
m_OcclusionBakeSettings:
smallestOccluder: 5
smallestHole: 0.25
backfaceThreshold: 100
m_SceneGUID: 00000000000000000000000000000000
m_OcclusionCullingData: {fileID: 0}
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 9
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
m_FogDensity: 0.01
m_LinearFogStart: 0
m_LinearFogEnd: 300
m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
m_AmbientIntensity: 1
m_AmbientMode: 0
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
m_HaloStrength: 0.5
m_FlareStrength: 1
m_FlareFadeSpeed: 3
m_HaloTexture: {fileID: 0}
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
m_DefaultReflectionMode: 0
m_DefaultReflectionResolution: 128
m_ReflectionBounces: 1
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.18028378, g: 0.22571412, b: 0.30692285, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 12
m_GIWorkflowMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
m_IndirectOutputScale: 1
m_AlbedoBoost: 1
m_EnvironmentLightingMode: 0
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 12
m_Resolution: 2
m_BakeResolution: 40
m_AtlasSize: 1024
m_AO: 0
m_AOMaxDistance: 1
m_CompAOExponent: 1
m_CompAOExponentDirect: 0
m_ExtractAmbientOcclusion: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 256
m_ReflectionCompression: 2
m_MixedBakeMode: 2
m_BakeBackend: 1
m_PVRSampling: 1
m_PVRDirectSampleCount: 32
m_PVRSampleCount: 512
m_PVRBounces: 2
m_PVREnvironmentSampleCount: 256
m_PVREnvironmentReferencePointCount: 2048
m_PVRFilteringMode: 1
m_PVRDenoiserTypeDirect: 1
m_PVRDenoiserTypeIndirect: 1
m_PVRDenoiserTypeAO: 1
m_PVRFilterTypeDirect: 0
m_PVRFilterTypeIndirect: 0
m_PVRFilterTypeAO: 0
m_PVREnvironmentMIS: 1
m_PVRCulling: 1
m_PVRFilteringGaussRadiusDirect: 1
m_PVRFilteringGaussRadiusIndirect: 5
m_PVRFilteringGaussRadiusAO: 2
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
m_PVRFilteringAtrousPositionSigmaIndirect: 2
m_PVRFilteringAtrousPositionSigmaAO: 1
m_ExportTrainingData: 0
m_TrainingDataDestination: TrainingData
m_LightProbeSampleCountMultiplier: 4
m_LightingDataAsset: {fileID: 0}
m_LightingSettings: {fileID: 0}
--- !u!196 &4
NavMeshSettings:
serializedVersion: 2
m_ObjectHideFlags: 0
m_BuildSettings:
serializedVersion: 3
agentTypeID: 0
agentRadius: 0.5
agentHeight: 2
agentSlope: 45
agentClimb: 0.4
ledgeDropHeight: 0
maxJumpAcrossDistance: 0
minRegionArea: 2
manualCellSize: 0
cellSize: 0.16666667
manualTileSize: 0
tileSize: 256
buildHeightMesh: 0
maxJobWorkers: 0
preserveTilesOutsideBounds: 0
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
--- !u!1 &551861169
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 551861173}
- component: {fileID: 551861172}
- component: {fileID: 551861171}
- component: {fileID: 551861170}
m_Layer: 0
m_Name: Plane
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!64 &551861170
MeshCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 551861169}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 5
m_Convex: 0
m_CookingOptions: 30
m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &551861171
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 551861169}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 257
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: d4e944a8ccecb1f459425f645cf53888, 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!33 &551861172
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 551861169}
m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &551861173
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 551861169}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.14996788, y: 0.06667602, z: 0.1987732}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &940455323
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 940455325}
- component: {fileID: 940455324}
- component: {fileID: 940455326}
m_Layer: 0
m_Name: Directional Light
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!108 &940455324
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 940455323}
m_Enabled: 1
serializedVersion: 10
m_Type: 1
m_Shape: 0
m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
m_Intensity: 1
m_Range: 10
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208
m_CookieSize: 10
m_Shadows:
m_Type: 2
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingLayerMask: 1
m_Lightmapping: 4
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
m_UseBoundingSphereOverride: 0
m_UseViewFrustumForShadowCasterCull: 1
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!4 &940455325
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 940455323}
serializedVersion: 2
m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
m_LocalPosition: {x: 0, y: 3, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
--- !u!114 &940455326
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 940455323}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Version: 3
m_UsePipelineSettings: 1
m_AdditionalLightsShadowResolutionTier: 2
m_LightLayerMask: 1
m_RenderingLayers: 1
m_CustomShadowLayers: 0
m_ShadowLayerMask: 1
m_ShadowRenderingLayers: 1
m_LightCookieSize: {x: 1, y: 1}
m_LightCookieOffset: {x: 0, y: 0}
m_SoftShadowQuality: 0
--- !u!1 &1530345571
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1530345575}
- component: {fileID: 1530345574}
- component: {fileID: 1530345573}
- component: {fileID: 1530345572}
- component: {fileID: 1530345576}
m_Layer: 0
m_Name: Cube
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!65 &1530345572
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1530345571}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Size: {x: 1, y: 1, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &1530345573
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1530345571}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 257
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 4f8e450c14c468540975fe39a799bd18, 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!33 &1530345574
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1530345571}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1530345575
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1530345571}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.79, y: 0.5, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1530345576
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1530345571}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e65ac38766cf16646ac69b142fd7540c, type: 3}
m_Name:
m_EditorClassIdentifier:
dragTargetButton: 0
--- !u!1 &1979093110
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1979093114}
- component: {fileID: 1979093113}
- component: {fileID: 1979093112}
- component: {fileID: 1979093111}
- component: {fileID: 1979093115}
m_Layer: 0
m_Name: Capsule
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!136 &1979093111
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1979093110}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 2
m_Radius: 0.5
m_Height: 2
m_Direction: 1
m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &1979093112
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1979093110}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 257
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: da375d21db2c643488e6dbe630d02773, 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!33 &1979093113
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1979093110}
m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1979093114
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1979093110}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -0.7567266, y: 1, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1979093115
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1979093110}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e65ac38766cf16646ac69b142fd7540c, type: 3}
m_Name:
m_EditorClassIdentifier:
dragTargetButton: 0
--- !u!1001 &1191689905575555449
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 2823787777299435728, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_Name
value: TuringUIRoot
objectReference: {fileID: 0}
- target: {fileID: 5925789499923357028, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_Enabled
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6541928711621635503, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6541928711621635503, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6541928711621635503, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6541928711621635503, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6541928711621635503, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6541928711621635503, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6541928711621635503, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6541928711621635503, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6541928711621635503, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6541928711621635503, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 2e782d7cb70e31f4aa2f1ca034e229c5, type: 3}
--- !u!1660057539 &9223372036854775807
SceneRoots:
m_ObjectHideFlags: 0
m_Roots:
- {fileID: 940455325}
- {fileID: 1530345575}
- {fileID: 1979093114}
- {fileID: 551861173}
- {fileID: 1191689905575555449}

View File

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

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

@ -0,0 +1,33 @@
//-----------------------------------------------------------------------
// <copyright file="ArrowPointerVisualization.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using UnityEngine;
using Turing.Core.TuringInput;
namespace Turing.Samples
{
public class ArrowPointerVisualization : TuringPointerVisualization
{
////////////////////////////////////////////////////////////////////////
// Public Methods
////////////////////////////////////////////////////////////////////////
public override void Process(TuringPointer pointer, Vector3 worldScale)
{
base.Process(pointer, worldScale);
this.transform.localPosition =
Vector3.forward * pointer.HitInfo.distance;
if (pointer.HitInfo.worldNormal != Vector3.zero)
{
this.transform.rotation = Quaternion.LookRotation(
Vector3.zero - pointer.HitInfo.worldNormal, Vector3.up);
}
}
}
}

View File

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

View File

@ -0,0 +1,87 @@
//-----------------------------------------------------------------------
// <copyright file="DisplayPropertyPrinter.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using System;
using UnityEngine;
using UnityEngine.UI;
using Turing.Core.Utility;
namespace Turing.Samples
{
public class DisplayPropertyPrinter : MonoBehaviour
{
////////////////////////////////////////////////////////////////////////
// Monobehaviour Callbacks
////////////////////////////////////////////////////////////////////////
void Start()
{
this._text = this.gameObject.GetComponent<Text>();
this.UpdateValues();
}
////////////////////////////////////////////////////////////////////////
// Public Methods
////////////////////////////////////////////////////////////////////////
public void UpdateValues()
{
this._text.text = "Display Properties\n" +
"\nZProvider" +
"\nDisplayReferenceSize: {0}" +
"\nDisplayReferenceResolution: {1}" +
"\nDisplaySize: {2}" +
"\nDisplayResolution: {3}" +
"\nDisplayMetersPerPixelForReferenceResolution: {4}" +
"\nDisplayMetersPerPixelForNativeResolution: {5}" +
"\nDisplayScale: {6}" +
"\nDisplayScaleFactor: {7}" +
"\nWindowSize: {8}" +
"\nWindowSizePixelsForReferenceResolution: {9}" +
"\nWindowSizePixelsForNativeResolution: {10}" ;
this._text.text = string.Format(this._text.text,
TuringProvider.DisplayReferenceSize.ToString("N5"),
TuringProvider.DisplayReferenceResolution.ToString(),
TuringProvider.DisplaySize.ToString("N5"),
TuringProvider.DisplayResolution.ToString(),
TuringProvider.DisplayMetersPerPixelForReferenceResolution
.ToString("N8"),
TuringProvider.DisplayMetersPerPixelForNativeResolution
.ToString("N8"),
TuringProvider.DisplayScale.ToString("N5"),
TuringProvider.DisplayScaleFactor,
TuringProvider.WindowSize.ToString("N8"),
TuringProvider.WindowSizePixelsForReferenceResolution.ToString(),
TuringProvider.WindowSizePixelsForNativeResolution.ToString());
// this.DisplayAttributesAsString(TuringProvider.CurrentDisplay));
}
////////////////////////////////////////////////////////////////////////
// Private Methods
////////////////////////////////////////////////////////////////////////
// private string DisplayAttributesAsString(TuringDisplay display)
// {
// string attributeString = "";
// foreach (ZDisplayAttribute attribute in
// Enum.GetValues(typeof(ZDisplayAttribute)))
// {
// attributeString += attribute.ToString() + ": " +
// display.GetAttribute(attribute) + "\n";
// }
// return attributeString;
// }
////////////////////////////////////////////////////////////////////////
// Private Members
////////////////////////////////////////////////////////////////////////
private TuringDisplay _display;
private Text _text;
}
}

View File

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

View File

@ -0,0 +1,203 @@
//-----------------------------------------------------------------------
// <copyright file="Draggable.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using Turing.Core.EventSystems;
using Turing.Core.TuringInput;
using Turing.Core.Utility;
using UnityEngine;
using UnityEngine.EventSystems;
namespace Turing.Samples
{
public class Draggable :
TuringPointerInteractable, IBeginDragHandler, IDragHandler, IEndDragHandler
{
[Tooltip("Change Drag Button")]
public PointerEventData.InputButton dragTargetButton = PointerEventData.InputButton.Left;
////////////////////////////////////////////////////////////////////////
// Private Members
////////////////////////////////////////////////////////////////////////
private Vector3 _initialGrabOffset = Vector3.zero;
private Quaternion _initialGrabRotation = Quaternion.identity;
private bool _isKinematic = false;
private Transform originParent;
private Transform grab;
private Transform grabRotate;
private float distance;
////////////////////////////////////////////////////////////////////////
// Public Methods
////////////////////////////////////////////////////////////////////////
public override TuringPointer.DragPolicy GetDragPolicy(TuringPointer pointer)
{
if (pointer is TuringMouse)
{
return TuringPointer.DragPolicy.LockToScreenAlignedPlane;
}
if (pointer is TuringTouch)
{
return TuringPointer.DragPolicy.LockToScreenAlignedPlane;
}
if (pointer is TuringStylus)
{
return TuringPointer.DragPolicy.LockHitPosition;
}
return base.GetDragPolicy(pointer);
}
public void OnBeginDrag(PointerEventData eventData)
{
TuringPointerEventData pointerEventData = eventData as TuringPointerEventData;
if (pointerEventData == null)
{
return;
}
if (pointerEventData.button == dragTargetButton)
{
if (pointerEventData.Pointer is TuringStylus)
{
Pose pose = pointerEventData.Pointer.EndPointWorldPose;
this._initialGrabOffset =
Quaternion.Inverse(this.transform.rotation) *
(this.transform.position - pose.position);
// this._initialGrabRotation = this.transform.localRotation;
grab = new GameObject("Grab").GetComponent<Transform>();
grabRotate = new GameObject("GrabRotate").GetComponent<Transform>();
grabRotate.position = pose.position;
grabRotate.rotation *= TuringProvider.CurrentFrame.DisplayAligner.transform.rotation;
grab.position = pose.position;
originParent = transform.parent;
grab.LookAt(pointerEventData.Pointer.transform);
distance= Vector3.Distance(grab.position, pointerEventData.Pointer.transform.position);
transform.SetParent(grabRotate);
grabRotate.SetParent(grab);
this._initialGrabRotation = grabRotate.localRotation;
}
else
{
Pose pose = pointerEventData.Pointer.EndPointWorldPose;
// Cache the initial grab state.
this._initialGrabOffset =
Quaternion.Inverse(this.transform.rotation) *
(this.transform.position - pose.position);
this._initialGrabRotation =
Quaternion.Inverse(pose.rotation) *
this.transform.rotation;
}
// If the grabbable object has a rigidbody component,
// mark it as kinematic during the grab.
var rigidbody = this.GetComponent<Rigidbody>();
if (rigidbody != null)
{
this._isKinematic = rigidbody.isKinematic;
rigidbody.isKinematic = true;
}
// Capture pointer events.
pointerEventData.Pointer.CapturePointer(this.gameObject);
}
}
public void OnDrag(PointerEventData eventData)
{
TuringPointerEventData pointerEventData = eventData as TuringPointerEventData;
if (pointerEventData == null)
{
return;
}
if (pointerEventData.pointerDrag != this.gameObject)
{
return;
}
if (pointerEventData.button == dragTargetButton)
{
if (pointerEventData.Pointer is TuringStylus)
{
TuringStylus stylus = (TuringStylus)pointerEventData.Pointer;
grabRotate.localRotation=_initialGrabRotation*Quaternion.Euler(stylus.StylueEulerAngle);
// Debug.Log("------------"+_initialGrabRotation.eulerAngles+" "+stylus.StylueEulerAngle);
grab.transform.position = pointerEventData.Pointer.transform.position+(stylus._target.Points[0]-stylus._target.Points[1]).normalized * distance;
grab.LookAt(pointerEventData.Pointer.transform);
}
else
{
HandleLeftDrag(pointerEventData);
}
}
}
private void HandleLeftDrag(TuringPointerEventData pointerEventData)
{
Pose pose = pointerEventData.Pointer.EndPointWorldPose;
// Update the grab object's rotation.
this.transform.rotation =
pose.rotation * this._initialGrabRotation;
// Update the grab object's position.
this.transform.position =
pose.position +
(this.transform.rotation * this._initialGrabOffset);
}
public void OnEndDrag(PointerEventData eventData)
{
TuringPointerEventData pointerEventData = eventData as TuringPointerEventData;
if (pointerEventData == null ||
pointerEventData.button != dragTargetButton)
{
return;
}
Debug.Log("EndDrag");
if (pointerEventData.Pointer is TuringStylus)
{
// Pose pose = pointerEventData.Pointer.EndPointWorldPose;
// this._initialGrabOffset =
// Quaternion.Inverse(this.transform.rotation) *
// (this.transform.position - pose.position);
// grab = new GameObject("Grab").GetComponent<Transform>();
// grab.transform.position = pose.position;
// originParent = transform.parent;
// grab.LookAt(pointerEventData.Pointer.transform);
// transform.SetParent(grab);
transform.SetParent(originParent);
Destroy(grab.gameObject);
Destroy(grabRotate.gameObject);
}
// Release the pointer.
pointerEventData.Pointer.CapturePointer(null);
// If the grabbable object has a rigidbody component,
// restore its original isKinematic state.
var rigidbody = this.GetComponent<Rigidbody>();
if (rigidbody != null)
{
rigidbody.isKinematic = this._isKinematic;
}
}
}
}

View File

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

View File

@ -0,0 +1,147 @@
//-----------------------------------------------------------------------
// <copyright file="DraggableCustomPlane.cs" ProjectName="Turing 3D Core">
// Copyright (c) Copyright © Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using UnityEngine;
using UnityEngine.EventSystems;
using Turing.Core.EventSystems;
using Turing.Core.TuringInput;
namespace Turing.Samples
{
public class DraggableCustomPlane :
TuringPointerInteractable, IBeginDragHandler, IDragHandler, IEndDragHandler
{
////////////////////////////////////////////////////////////////////////
// Inspector Fields
////////////////////////////////////////////////////////////////////////
/// <summary>
/// A transform from which to base planar movement on. Forward (Z) is
/// normal to the plane, and the object will drag along its X and Y
/// coordinates.
/// </summary>
[Tooltip(
"A transform from which to base planar movement on. Forward (Z) " +
"is normal to the plane, and the object will drag along its X " +
"and Y coordinates.")]
public Transform PlaneQuadTransform;
////////////////////////////////////////////////////////////////////////
// Public Methods
////////////////////////////////////////////////////////////////////////
public override TuringPointer.DragPolicy GetDragPolicy(TuringPointer pointer)
{
return TuringPointer.DragPolicy.LockToCustomPlane;
}
public override Plane GetDragPlane(TuringPointer pointer)
{
if (PlaneQuadTransform != null)
{
Debug.Log(new Plane(
PlaneQuadTransform.forward,
PlaneQuadTransform.position).normal);
return new Plane(
PlaneQuadTransform.forward,
PlaneQuadTransform.position);
}
return base.GetDragPlane(pointer);
}
public void OnBeginDrag(PointerEventData eventData)
{
TuringPointerEventData pointerEventData = eventData as TuringPointerEventData;
if (pointerEventData == null ||
pointerEventData.button != PointerEventData.InputButton.Left)
{
return;
}
Debug.Log("begin drag");
Pose pose = pointerEventData.Pointer.EndPointWorldPose;
// Cache the initial grab state.
this._initialGrabOffset =
Quaternion.Inverse(this.transform.rotation) *
(this.transform.position - pose.position);
// commenting out rotation from the original draggable script
// to maintain a fixed orientation relative to the drag plane
//
//this._initialGrabRotation =
// Quaternion.Inverse(pose.rotation) *
// this.transform.rotation;
// If the grabbable object has a rigidbody component,
// mark it as kinematic during the grab.
var rigidbody = this.GetComponent<Rigidbody>();
if (rigidbody != null)
{
this._isKinematic = rigidbody.isKinematic;
rigidbody.isKinematic = true;
}
// Capture pointer events.
pointerEventData.Pointer.CapturePointer(this.gameObject);
}
public void OnDrag(PointerEventData eventData)
{
TuringPointerEventData pointerEventData = eventData as TuringPointerEventData;
if (pointerEventData == null ||
pointerEventData.button != PointerEventData.InputButton.Left)
{
return;
}
Debug.Log("Ondrag");
Pose pose = pointerEventData.Pointer.EndPointWorldPose;
// commenting out rotation from the original draggable script
// to maintain a fixed orientation relative to the drag plane
//
// Update the grab object's rotation.
//this.transform.rotation =
// pose.rotation * this._initialGrabRotation;
// Update the grab object's position.
this.transform.position =
pose.position +
(this.transform.rotation * this._initialGrabOffset);
}
public void OnEndDrag(PointerEventData eventData)
{
TuringPointerEventData pointerEventData = eventData as TuringPointerEventData;
if (pointerEventData == null ||
pointerEventData.button != PointerEventData.InputButton.Left)
{
return;
}
Debug.Log("end drag");
// Release the pointer.
pointerEventData.Pointer.CapturePointer(null);
// If the grabbable object has a rigidbody component,
// restore its original isKinematic state.
var rigidbody = this.GetComponent<Rigidbody>();
if (rigidbody != null)
{
rigidbody.isKinematic = this._isKinematic;
}
}
////////////////////////////////////////////////////////////////////////
// Private Members
////////////////////////////////////////////////////////////////////////
private Vector3 _initialGrabOffset = Vector3.zero;
//private Quaternion _initialGrabRotation = Quaternion.identity;
private bool _isKinematic = false;
}
}

View File

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

View File

@ -0,0 +1,61 @@
//-----------------------------------------------------------------------
// <copyright file="FramePickerMenu.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using Turing.Core.StereoCore;
using Turing.Core.Utility;
using UnityEngine;
using UnityEngine.UI;
namespace Turing.Samples
{
public class FramePickerMenu : MonoBehaviour
{
////////////////////////////////////////////////////////////////////////
// MonoBehaviour Callbacks
////////////////////////////////////////////////////////////////////////
void Start()
{
this._frames = GameObject.FindObjectsOfType<TuringFrame>();
this._cameraRig = GameObject.FindObjectOfType<TuringCameraRig>();
this._layoutGroup =
this.gameObject.GetComponent<VerticalLayoutGroup>();
this._baseButton =
this._layoutGroup.GetComponentInChildren<Button>().gameObject;
for (int i = 0; i < this._frames.Length; i++)
{
GameObject button = GameObject.Instantiate(this._baseButton);
button.name = this._frames[i].gameObject.name;
button.transform.SetParent(this._layoutGroup.transform, false);
button.GetComponentInChildren<Text>().text = button.name;
int frameIndex = i;
button.GetComponent<Button>().onClick.AddListener(
delegate{ this.SetFrame(frameIndex); });
}
Destroy(this._baseButton);
}
////////////////////////////////////////////////////////////////////////
// Private Methods
////////////////////////////////////////////////////////////////////////
private void SetFrame(int i)
{
this._cameraRig.Frame = this._frames[i];
}
////////////////////////////////////////////////////////////////////////
// Private Members
////////////////////////////////////////////////////////////////////////
private TuringFrame[] _frames;
private TuringCameraRig _cameraRig;
private VerticalLayoutGroup _layoutGroup;
private GameObject _baseButton;
}
}

View File

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

View File

@ -0,0 +1,56 @@
//-----------------------------------------------------------------------
// <copyright file="HighlightOnHover.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using UnityEngine;
using UnityEngine.EventSystems;
namespace Turing.Samples
{
public class HighlightOnHover : MonoBehaviour,
IPointerEnterHandler, IPointerExitHandler
{
////////////////////////////////////////////////////////////////////////
// Inspector Fields
////////////////////////////////////////////////////////////////////////
/// <summary>
/// The color to set an object's material to when hovered.
/// </summary>
[Tooltip("The color to set an object's material to when hovered.")]
public Color HighlightColor;
////////////////////////////////////////////////////////////////////////
// MonoBehaviour Callbacks
////////////////////////////////////////////////////////////////////////
void Start()
{
this._mat = this.gameObject.GetComponent<MeshRenderer>().material;
this._oldColor = this._mat.GetColor("_Color");
}
////////////////////////////////////////////////////////////////////////
// Public Methods
////////////////////////////////////////////////////////////////////////
public void OnPointerEnter(PointerEventData evtData)
{
this._mat.SetColor("_Color", HighlightColor);
}
public void OnPointerExit(PointerEventData evtData)
{
this._mat.SetColor("_Color", _oldColor);
}
////////////////////////////////////////////////////////////////////////
// Private Members
////////////////////////////////////////////////////////////////////////
private Color _oldColor;
private Material _mat;
}
}

View File

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

View File

@ -0,0 +1,41 @@
//-----------------------------------------------------------------------
// <copyright file="IPointerHandlerLogger.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using UnityEngine;
using UnityEngine.EventSystems;
namespace Turing.Samples
{
public class IPointerHandlerLogger : MonoBehaviour,
IPointerEnterHandler, IPointerExitHandler, IPointerDownHandler,
IPointerUpHandler, IPointerClickHandler
{
public void OnPointerEnter(PointerEventData eventData)
{
Debug.Log("Pointer Entered");
}
public void OnPointerExit(PointerEventData eventData)
{
Debug.Log("Pointer Exited");
}
public void OnPointerDown(PointerEventData eventData)
{
Debug.Log("Pointer Down");
}
public void OnPointerUp(PointerEventData eventData)
{
Debug.Log("Pointer Up");
}
public void OnPointerClick(PointerEventData eventData)
{
Debug.Log("Pointer Click");
}
}
}

View File

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

View File

@ -0,0 +1,22 @@
using Turing.Core.StereoCore;
using UnityEngine;
public class MoveObject : MonoBehaviour
{
public float speed = 5f; // 物体移动的速度
// Update是Unity每一帧调用的函数
void Update()
{
// 获取用户输入,水平和垂直轴
float moveX = Input.GetAxis("Horizontal");
float moveZ = Input.GetAxis("Vertical");
// 计算移动的方向和速度
Vector3 moveDirection = new Vector3(moveX, 0f, moveZ).normalized * speed;
// 使用Translate函数移动物体
transform.Translate(moveDirection * Time.deltaTime,Space.Self);
}
}

View File

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

View File

@ -0,0 +1,108 @@
//-----------------------------------------------------------------------
// <copyright file="PointerTracer.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using System.Collections.Generic;
using Turing.Core.TuringInput;
using UnityEngine;
namespace Turing.Samples
{
public class PointerTracer : MonoBehaviour
{
////////////////////////////////////////////////////////////////////////
// Inspector Fields
////////////////////////////////////////////////////////////////////////
/// <summary>
/// The pointer to handle tracing for
/// </summary>
[Tooltip("The pointer to handle tracing for")]
public TuringPointer Pointer;
////////////////////////////////////////////////////////////////////////
// MonoBehaviour Callbacks
////////////////////////////////////////////////////////////////////////
void Start()
{
this._lineRenderer = gameObject.GetComponent<LineRenderer>();
this.Pointer.OnObjectEntered.AddListener(this.HandleOnObjectEntered);
this.Pointer.OnObjectExited.AddListener(this.HandleOnObjectExited);
this.Pointer.OnButtonPressed.AddListener(this.HandleOnButtonPressed);
this.Pointer.OnButtonReleased.AddListener(this.HandleOnButtonReleased);
this._pointList = new List<Vector3>();
}
void Update()
{
if (this._isDrawing)
{
this._accumulatedDelta += Time.deltaTime;
if (this._accumulatedDelta > this._pointsPerSecond)
{
this._pointList.Add(this.Pointer.EndPointWorldPose.position);
this._lineRenderer.positionCount = this._pointList.Count;
this._lineRenderer.SetPositions(this._pointList.ToArray());
this._accumulatedDelta = 0.0f;
}
}
}
////////////////////////////////////////////////////////////////////////
// Private Methods
////////////////////////////////////////////////////////////////////////
private void HandleOnObjectEntered(TuringPointer p, GameObject objectEntered)
{
if (objectEntered.GetComponent<Draggable>() != null)
{
this._isDraggableIntersected = true;
}
}
private void HandleOnObjectExited(TuringPointer p, GameObject objectEntered)
{
this._isDraggableIntersected = false;
}
private void HandleOnButtonPressed(TuringPointer p, int i)
{
if (!this._isDraggableIntersected && i == 0)
{
this._isDrawing = true;
this._pointList.Clear();
this._pointList.Add(this.Pointer.EndPointWorldPose.position);
this._lineRenderer.positionCount = this._pointList.Count;
this._lineRenderer.SetPositions(this._pointList.ToArray());
}
}
private void HandleOnButtonReleased(TuringPointer p, int i)
{
if (i == 0)
{
this._isDrawing = false;
this._accumulatedDelta = 0.0f;
}
}
////////////////////////////////////////////////////////////////////////
// Private Members
////////////////////////////////////////////////////////////////////////
private LineRenderer _lineRenderer;
private bool _isDraggableIntersected;
private bool _isDrawing = false;
private float _pointsPerSecond = 0.1f;
private float _accumulatedDelta = 0.0f;
private List<Vector3> _pointList;
}
}

View File

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

View File

@ -0,0 +1,58 @@
//-----------------------------------------------------------------------
// <copyright file="PriorityMaskToggle.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using Turing.Core.TuringInput;
using UnityEngine;
using UnityEngine.UI;
namespace Turing.Samples
{
public class PriorityMaskToggle : MonoBehaviour
{
////////////////////////////////////////////////////////////////////////
// MonoBehaviour Callbacks
////////////////////////////////////////////////////////////////////////
private void Start()
{
// this._zStylus = GameObject.FindObjectOfType<ZStylus>();
this._zMouse = GameObject.FindObjectOfType<TuringMouse>();
this._toggle = gameObject.GetComponent<Toggle>();
this._toggle.onValueChanged.AddListener(this.HandleOnToggleValueChanged);
this._priorityMask = (1 << LayerMask.NameToLayer("Water")) |
(1 << LayerMask.NameToLayer("UI"));
}
////////////////////////////////////////////////////////////////////////
// Private Methods
////////////////////////////////////////////////////////////////////////
private void HandleOnToggleValueChanged(bool b)
{
if (b)
{
// this._zStylus.PriorityMask = this._priorityMask;
this._zMouse.PriorityMask = this._priorityMask;
}
else
{
// this._zStylus.PriorityMask = this._noneMask;
this._zMouse.PriorityMask = this._noneMask;
}
}
////////////////////////////////////////////////////////////////////////
// Private Members
////////////////////////////////////////////////////////////////////////
// private ZStylus _zStylus;
private TuringMouse _zMouse;
private Toggle _toggle;
private LayerMask _priorityMask;
private LayerMask _noneMask = 0;
}
}

View File

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

View File

@ -0,0 +1,19 @@
using UnityEngine;
public class RightClickRotate : MonoBehaviour
{
public float sensitivity = 0.1f; // 旋转灵敏度
private void Update()
{
if (Input.GetMouseButton(1)) // 1 是鼠标右键
{
float horizontalRotation = Input.GetAxis("Mouse X") * sensitivity;
float verticalRotation = -Input.GetAxis("Mouse Y") * sensitivity;
// 在Y轴绕X轴旋转和Z轴绕Y轴旋转上应用旋转
// transform.Rotate(new Vector3(horizontalRotation, 0f, 0f), Space.Self);
transform.Rotate(new Vector3(verticalRotation, horizontalRotation, 0f), Space.Self);
}
}
}

View File

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

View File

@ -0,0 +1,230 @@
//-----------------------------------------------------------------------
// <copyright file="RotatableAndScalable.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using Turing.Core.EventSystems;
using Turing.Core.TuringInput;
using UnityEngine;
using UnityEngine.EventSystems;
namespace Turing.Samples
{
public class RotatableAndScalable : TuringPointerInteractable, IBeginDragHandler, IDragHandler, IEndDragHandler
{
public PointerEventData.InputButton RotateTargetButton = PointerEventData.InputButton.Right;
public float minScale = 0.5f;
public float maxScale = 3f;
public float rotationSpeed = 1f;
public float zoomSpeed = 1f;
////////////////////////////////////////////////////////////////////////
// Private Members
////////////////////////////////////////////////////////////////////////
private Vector3 _initialGrabOffset = Vector3.zero;
private Quaternion _initialGrabRotation = Quaternion.identity;
private Vector3 _initialGrabScale = Vector3.zero;
private bool _isKinematic = false;
private Vector2 origintwoFingerMovement;
private Vector2 _previousTouchDelta;
////////////////////////////////////////////////////////////////////////
// Public Methods
////////////////////////////////////////////////////////////////////////
public override TuringPointer.DragPolicy GetDragPolicy(TuringPointer pointer)
{
// Debug.Log(pointer.Id);
if (pointer is TuringMouse)
{
return TuringPointer.DragPolicy.LockToScreenAlignedPlane;
}
if (pointer is TuringTouch)
{
return TuringPointer.DragPolicy.LockToScreenAlignedPlane;
}
// if (pointer is ZStylus)
// {
// return ZPointer.DragPolicy.LockHitPosition;
// }
return base.GetDragPolicy(pointer);
}
public void OnBeginDrag(PointerEventData eventData)
{
TuringPointerEventData pointerEventData = eventData as TuringPointerEventData;
if (pointerEventData == null)
{
return;
}
if (pointerEventData.button == RotateTargetButton)
{
// Cache the initial grab state.
this._initialGrabRotation = this.transform.rotation;
this._initialGrabScale = this.transform.localScale;
// If the grabbable object has a rigidbody component,
// mark it as kinematic during the grab.
var rigidbody = this.GetComponent<Rigidbody>();
if (rigidbody != null)
{
this._isKinematic = rigidbody.isKinematic;
rigidbody.isKinematic = true;
}
origintwoFingerMovement = pointerEventData.TwoFingerMovement;
// Capture pointer events.
pointerEventData.Pointer.CapturePointer(this.gameObject);
}
}
public void OnDrag(PointerEventData eventData)
{
TuringPointerEventData pointerEventData = eventData as TuringPointerEventData;
if (pointerEventData == null)
{
return;
}
if (pointerEventData.pointerDrag != this.gameObject)
{
return;
}
if (pointerEventData.button == RotateTargetButton)
{
HandleRightDrag(pointerEventData);
}
}
private void HandleRightDrag(TuringPointerEventData pointerEventData)
{
if (pointerEventData.Pointer is TuringTouch)
{
HandleTouchRotationAndScale(pointerEventData);
}
else if (pointerEventData.Pointer is TuringMouse)
{
HandleMouseRightDrag(pointerEventData);
}
else
{
//不执行笔的右键事件
return;
}
}
private void HandleTouchRotationAndScale(TuringPointerEventData pointerEventData)
{
if (Input.touchCount != 2) return;
// 获取相机
Camera cam = pointerEventData.Pointer.EventCamera.Camera;
if (cam == null) return;
Vector2 averageDelta = pointerEventData.TouchAverageMovement;
// 计算旋转
Vector3 rotationAxis = Vector3.zero;
rotationAxis += cam.transform.right * averageDelta.y * rotationSpeed * 0.1f;
rotationAxis += cam.transform.up * -averageDelta.x * rotationSpeed * 0.1f;
float rotationAmount = rotationAxis.magnitude;
rotationAxis.Normalize();
// 应用旋转
transform.Rotate(rotationAxis, rotationAmount, Space.World);
// 缩放逻辑
Vector2 twoFingerMovement = origintwoFingerMovement - pointerEventData.TwoFingerMovement;
// 计算缩放因子
float scaleFactor = 1f;
if (twoFingerMovement != Vector2.zero)
{
float scaleDelta = twoFingerMovement.magnitude * 0.0005f * zoomSpeed;
if (Vector2.Dot(twoFingerMovement,
(Input.GetTouch(1).position - Input.GetTouch(0).position).normalized) > 0)
{
scaleFactor = 1f + scaleDelta;
}
else
{
scaleFactor = 1f - scaleDelta;
}
}
// 应用缩放
transform.localScale = _initialGrabScale * scaleFactor;
transform.localScale = new Vector3(
Mathf.Clamp(transform.localScale.x, minScale, maxScale),
Mathf.Clamp(transform.localScale.y, minScale, maxScale),
Mathf.Clamp(transform.localScale.z, minScale, maxScale)
);
}
private void HandleMouseRightDrag(TuringPointerEventData pointerEventData)
{
// 获取相机
Camera cam = pointerEventData.Pointer.EventCamera.Camera;
if (cam == null) return;
// 旋转
float rotationSpeedX = 5f; // 可以调整这个值来改变旋转速度
float mouseX = -Input.GetAxis("Mouse X");
float mouseY = -Input.GetAxis("Mouse Y");
// 计算旋转轴
Vector3 rotationAxis = Vector3.zero;
rotationAxis += cam.transform.right * -mouseY * rotationSpeed;
rotationAxis += cam.transform.up * mouseX * rotationSpeed;
float rotationAmount = rotationAxis.magnitude * rotationSpeedX;
rotationAxis.Normalize();
// 应用旋转
transform.Rotate(rotationAxis, rotationAmount, Space.World);
// 缩放
float scroll = -Input.GetAxis("Mouse ScrollWheel");
Vector3 newScale = transform.localScale - scroll * transform.localScale * zoomSpeed;
// 限制缩放范围
newScale.x = Mathf.Clamp(newScale.x, minScale, maxScale);
newScale.y = Mathf.Clamp(newScale.y, minScale, maxScale);
newScale.z = Mathf.Clamp(newScale.z, minScale, maxScale);
transform.localScale = newScale;
}
public void OnEndDrag(PointerEventData eventData)
{
TuringPointerEventData pointerEventData = eventData as TuringPointerEventData;
if (pointerEventData == null ||
pointerEventData.button != RotateTargetButton)
{
return;
}
// Release the pointer.
pointerEventData.Pointer.CapturePointer(null);
// If the grabbable object has a rigidbody component,
// restore its original isKinematic state.
var rigidbody = this.GetComponent<Rigidbody>();
if (rigidbody != null)
{
rigidbody.isKinematic = this._isKinematic;
}
}
}
}

View File

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

View File

@ -0,0 +1,122 @@
//-----------------------------------------------------------------------
// <copyright file="SceneController.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using Turing.Core.StereoCore;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
namespace Turing.Samples
{
public class SceneController : MonoBehaviour
{
private TuringCamera turingCamera;
private float fov = 1;
public int sceneIndex = 0;
// Update is called once per frame
void Update()
{
if (turingCamera == null)
{
turingCamera = FindObjectOfType<TuringCamera>();
}
if (Input.GetKeyDown(KeyCode.A))
{
fov = turingCamera.fovScaleFactor;
turingCamera.AdjustFOVScale(fov + 0.05f);
}
if (Input.GetKeyDown(KeyCode.S))
{
fov = turingCamera.fovScaleFactor;
turingCamera.AdjustFOVScale(fov - 0.05f);
}
if (Input.GetKeyDown(KeyCode.Q))
{
if (sceneIndex == 0)
{
sceneIndex = SceneManager.sceneCountInBuildSettings - 1;
}
else
{
sceneIndex--;
}
SceneManager.LoadScene(sceneIndex);
}
if (Input.GetKeyDown(KeyCode.W))
{
if (sceneIndex == SceneManager.sceneCountInBuildSettings - 1)
{
sceneIndex = 0;
}
else
{
sceneIndex++;
}
SceneManager.LoadScene(sceneIndex);
}
if (Input.GetKey(KeyCode.KeypadPlus))
{
turingCamera.NearClipPlaneAdj = 0.05f * turingCamera.NearClamp / 10;
}
if (Input.GetKey(KeyCode.KeypadMinus))
{
turingCamera.NearClipPlaneAdj = -0.05f * turingCamera.NearClamp / 10;
}
//
if (Input.GetKeyDown(KeyCode.P))
{
turingCamera.screenCapType = 1;
turingCamera.Camera.Render();
}
//
if (TuringCamera.enableDebugging)
{
if (Input.GetKeyDown(KeyCode.Z))
{
turingCamera.EyeTrackingSwitch = !turingCamera.EyeTrackingSwitch;
turingCamera.SetEyeTrackingEnable(!turingCamera.EyeTrackingSwitch);
}
if (Input.GetKeyDown(KeyCode.T))
{
turingCamera.ForceSwitchScreenWeaving();
}
if (Input.GetKeyDown(KeyCode.G) && Input.GetKey(KeyCode.LeftControl))
{
turingCamera.LRInterleaveSwitch();
}
}
}
public void LoadScene(GameObject button)
{
SceneManager.LoadScene(button.name);
}
public void BackMenu()
{
SceneManager.LoadScene("00_BasicScene_Menu");
}
}
}

View File

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

View File

@ -0,0 +1,71 @@
//-----------------------------------------------------------------------
// <copyright file="StylusLEDFeedback.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using Turing.Core.Utility;
using UnityEngine;
using UnityEngine.EventSystems;
namespace Turing.Samples
{
public class StylusLEDFeedback : MonoBehaviour,
IPointerEnterHandler, IPointerExitHandler
{
////////////////////////////////////////////////////////////////////////
// Inspector Fields
////////////////////////////////////////////////////////////////////////
public Color HoverColor;
////////////////////////////////////////////////////////////////////////
// MonoBehaviour Callbacks
////////////////////////////////////////////////////////////////////////
private void Start()
{
if (TuringProvider.IsInitialized)
{
// this._stylusTarget = TuringProvider.StylusTarget;
if (TuringProvider.DisplaySize !=
TuringDisplay.GetSize(TuringDisplay.Profile.Size24InchAspect16x9))
{
Debug.LogWarning("AIO model hardware not detected.\n " +
"Stylus vibration and LED light feedback will not " +
"be experienced.");
}
}
else
{
Debug.LogWarning("ZProvider can not initialize.\n Stylus" +
"LED light feedback will not be experienced.");
Destroy(this);
}
}
////////////////////////////////////////////////////////////////////////
// Public Methods
////////////////////////////////////////////////////////////////////////
public void OnPointerEnter(PointerEventData eventData)
{
// this._stylusTarget.IsLedEnabled = true;
// this._stylusTarget.LedColor = HoverColor;
}
public void OnPointerExit(PointerEventData eventData)
{
// this._stylusTarget.IsLedEnabled = false;
}
////////////////////////////////////////////////////////////////////////
// Private Members
////////////////////////////////////////////////////////////////////////
// private ZTarget _stylusTarget;
}
}

View File

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

View File

@ -0,0 +1,109 @@
//-----------------------------------------------------------------------
// <copyright file="StylusVibrationFeedback.cs" ProjectName="Turing 3D Core">
// Copyright (c) Beijing HiteVision Turing Intelligent Technology Co.,Ltd. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------
using Turing.Core.Utility;
using UnityEngine;
using UnityEngine.EventSystems;
namespace Turing.Samples
{
// public class StylusVibrationFeedback : MonoBehaviour,
// IPointerEnterHandler, IPointerExitHandler
// {
// ////////////////////////////////////////////////////////////////////////
// // Inspector Fields
// ////////////////////////////////////////////////////////////////////////
//
// public VibrationTypeEnum VibrationType;
// public float VibrationIntensity;
//
// ////////////////////////////////////////////////////////////////////////
// // Enumerators
// ////////////////////////////////////////////////////////////////////////
//
// public enum VibrationTypeEnum
// {
// Constant,
// FastPulse,
// MediumPulse,
// SlowPulse
// }
//
// ////////////////////////////////////////////////////////////////////////
// // MonoBehaviour Callbacks
// ////////////////////////////////////////////////////////////////////////
//
// private void Start()
// {
// if (TuringProvider.IsInitialized)
// {
// // this._stylusTarget = TuringProvider.StylusTarget;
// this._stylusTarget.IsVibrationEnabled = true;
// }
// else
// {
// Debug.LogWarning("ZProvider can not initialize.\n Stylus" +
// "vibration and LED light feedback will not be experienced.");
//
// Destroy(this);
// }
// }
//
// ////////////////////////////////////////////////////////////////////////
// // Public Methods
// ////////////////////////////////////////////////////////////////////////
//
// public void OnPointerEnter(PointerEventData eventData)
// {
// this.Vibrate();
// }
//
// public void OnPointerExit(PointerEventData eventData)
// {
// this._stylusTarget.StopVibration();
// }
//
// ////////////////////////////////////////////////////////////////////////
// // Private Methods
// ////////////////////////////////////////////////////////////////////////
//
// private void Vibrate()
// {
// switch (this.VibrationType)
// {
// case StylusVibrationFeedback.VibrationTypeEnum.Constant:
// this._stylusTarget.StartVibration(
// 1.0f, 0.0f, 100, this.VibrationIntensity);
// break;
//
// case StylusVibrationFeedback.VibrationTypeEnum.FastPulse:
// this._stylusTarget.StartVibration(
// 0.1f, 0.1f, 100, this.VibrationIntensity);
// break;
//
// case StylusVibrationFeedback.VibrationTypeEnum.MediumPulse:
// this._stylusTarget.StartVibration(
// 0.3f, 0.3f, 100, this.VibrationIntensity);
// break;
//
// case StylusVibrationFeedback.VibrationTypeEnum.SlowPulse:
// this._stylusTarget.StartVibration(
// 0.6f, 0.6f, 100, this.VibrationIntensity);
// break;
//
// default:
// break;
// }
// }
//
// ////////////////////////////////////////////////////////////////////////
// // Private Members
// ////////////////////////////////////////////////////////////////////////
//
// // private ZTarget _stylusTarget;
// }
}

View File

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

View File

@ -0,0 +1,16 @@
{
"name": "Turing.Sample",
"rootNamespace": "",
"references": [
"GUID:d72e3b96bfb00dc4a8af878cd25d4cb8"
],
"includePlatforms": [],
"excludePlatforms": [],
"allowUnsafeCode": false,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": [],
"noEngineReferences": false
}

View File

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