This commit is contained in:
Rowan 2025-07-20 18:46:40 -04:00
parent edea5de5ea
commit d72d44d16e
27 changed files with 1427 additions and 181 deletions

View file

@ -15,7 +15,7 @@ MonoBehaviour:
m_DefaultGroup: 0d3c75cab4cd488feac7a41a80e154b9
m_currentHash:
serializedVersion: 2
Hash: 00000000000000000000000000000000
Hash: ff68922cb6caa814cb2fd13a7ecdef11
m_OptimizeCatalogSize: 0
m_BuildRemoteCatalog: 0
m_CatalogRequestsTimeout: 0
@ -24,11 +24,11 @@ MonoBehaviour:
m_InternalBundleIdMode: 1
m_AssetLoadMode: 0
m_BundledAssetProviderType:
m_AssemblyName:
m_ClassName:
m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.BundledAssetProvider
m_AssetBundleProviderType:
m_AssemblyName:
m_ClassName:
m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.AssetBundleProvider
m_IgnoreUnsupportedFilesInBuild: 0
m_UniqueBundleIds: 0
m_EnableJsonCatalog: 0

View file

@ -164,3 +164,26 @@ MonoBehaviour:
restoreCamera: 1
offset: {x: 0, y: 0, z: 0, w: 0}
cameraFieldOfView: 60
--- !u!114 &8150197663254742350
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 32876a5b2ac88c51ab9c4076cf2973ac, type: 3}
m_Name: JFAOutlineRenderFeature
m_EditorClassIdentifier:
m_Active: 1
settings:
renderPassEvent: 600
initialSeedShader: {fileID: -6465566751694194690, guid: a6d2894c91d3da33ea437dbabdca1f0c, type: 3}
jfaIterationShader: {fileID: -6465566751694194690, guid: fccb9c640416b1c249d41104b8dc7b43, type: 3}
finalOutlineShader: {fileID: -6465566751694194690, guid: e9afb92d4ba90cb509dc4630736ad45b, type: 3}
outlineColor: {r: 1, g: 0, b: 0, a: 1}
outlineThickness: 0.02
blurAmount: 0
resolution: 1
debugDisplay: 1

View file

@ -0,0 +1,126 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &3360622849527809930
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1213922315803973788}
- component: {fileID: 1646178092638057926}
- component: {fileID: 3857942058976422217}
- component: {fileID: 1219276780990905499}
- component: {fileID: 5906514020780888610}
m_Layer: 0
m_Name: WorldSpaceDoc
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1213922315803973788
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3360622849527809930}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, 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 &1646178092638057926
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3360622849527809930}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
m_Name:
m_EditorClassIdentifier:
m_PanelSettings: {fileID: 11400000, guid: 2bc58aab5867867e5b0feeae2df42fd0, type: 2}
m_ParentUI: {fileID: 0}
sourceAsset: {fileID: 0}
m_SortingOrder: 0
m_WorldSpaceSizeMode: 0
m_WorldSpaceWidth: 1920
m_WorldSpaceHeight: 1080
--- !u!114 &3857942058976422217
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3360622849527809930}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e7e9e49bc72f0c26598faa7e0d34036e, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &1219276780990905499
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3360622849527809930}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8f7e084f3ed7b4e5babd039bbd888b29, type: 3}
m_Name:
m_EditorClassIdentifier:
Document: {fileID: 1646178092638057926}
PooledObject: {fileID: 3857942058976422217}
--- !u!1931382933 &5906514020780888610
UIRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3360622849527809930}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 0}
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

View file

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

View file

@ -0,0 +1,138 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-6052410920342045092
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 10
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Outline
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _SPECULAR_SETUP
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap:
RenderType: Opaque
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _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}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AddPrecomputedVelocity: 0
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _Metallic: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 0
- _WorkflowMode: 0
- _XRMotionVectorsPass: 1
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 1, g: 1, b: 1, 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: []
m_AllowLocking: 1

View file

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

View file

@ -0,0 +1,17 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c3b21f732f40c4e4cb96718b2e8e33bb, type: 3}
m_Name: SelectedObject
m_EditorClassIdentifier:
Description:
value:
value: {fileID: 0}

View file

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

View file

@ -15,11 +15,11 @@ MonoBehaviour:
addTransition: 1
propertyName: opacity
duration:
duration: 1
value: 5000000
unit: 2
easing: 3
delay:
duration: 1
value: 2500000
unit: 2
from: 0
to: 1

View file

@ -15,11 +15,11 @@ MonoBehaviour:
addTransition: 1
propertyName: opacity
duration:
duration: 1
value: 3300000
unit: 2
easing: 3
delay:
duration: 1
value: 2500000
unit: 2
from: 1
to: 0

View file

@ -119,6 +119,222 @@ NavMeshSettings:
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
--- !u!1 &79264407
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 79264408}
- component: {fileID: 79264411}
- component: {fileID: 79264410}
- component: {fileID: 79264409}
m_Layer: 0
m_Name: Leg
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &79264408
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 79264407}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 1.25, y: -0.5, z: -0.55}
m_LocalScale: {x: 0.1, y: 1, z: 0.1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1028304588}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!65 &79264409
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 79264407}
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 &79264410
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 79264407}
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_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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 &79264411
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 79264407}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1 &196218278
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 196218279}
- component: {fileID: 196218282}
- component: {fileID: 196218281}
- component: {fileID: 196218280}
m_Layer: 0
m_Name: Cube
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &196218279
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 196218278}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 3, y: 0.1, z: 1.5}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1028304588}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!65 &196218280
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 196218278}
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 &196218281
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 196218278}
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_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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 &196218282
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 196218278}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1 &230761402
GameObject:
m_ObjectHideFlags: 0
@ -800,6 +1016,114 @@ Transform:
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &893033283
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 893033284}
- component: {fileID: 893033287}
- component: {fileID: 893033286}
- component: {fileID: 893033285}
m_Layer: 0
m_Name: Leg (2)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &893033284
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 893033283}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -1.25, y: -0.5, z: -0.55}
m_LocalScale: {x: 0.1, y: 1, z: 0.1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1028304588}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!65 &893033285
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 893033283}
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 &893033286
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 893033283}
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_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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 &893033287
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 893033283}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1 &983805437
GameObject:
m_ObjectHideFlags: 0
@ -813,7 +1137,7 @@ GameObject:
- component: {fileID: 983805439}
- component: {fileID: 983805438}
- component: {fileID: 983805442}
m_Layer: 0
m_Layer: 7
m_Name: Sphere
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -922,12 +1246,51 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
oneTimeUse: 0
onTarget:
onSelected:
m_PersistentCalls:
m_Calls: []
onDeselected:
m_PersistentCalls:
m_Calls: []
onInteracted:
m_PersistentCalls:
m_Calls: []
--- !u!1 &1028304587
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1028304588}
m_Layer: 0
m_Name: TABLE
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1028304588
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1028304587}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 1, y: 1, z: 3}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 196218279}
- {fileID: 79264408}
- {fileID: 1500704132}
- {fileID: 893033284}
- {fileID: 2044644166}
m_Father: {fileID: 1790144273}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1190731365
GameObject:
m_ObjectHideFlags: 0
@ -1229,10 +1592,10 @@ MonoBehaviour:
orchestrator: {fileID: 11400000, guid: 994ab04db2c2004abb8272830cb16b26, type: 2}
root: {fileID: 1281046468}
panelSettings: {fileID: 11400000, guid: 2bc58aab5867867e5b0feeae2df42fd0, type: 2}
despawnTimeout:
duration: 60
globalTimeout:
value: 100000000
unit: 2
prefab: {fileID: 0}
prefab: {fileID: 3360622849527809930, guid: f0629fe523f37f1bf8a8f72ee3f1c716, type: 3}
--- !u!1 &1363717994
GameObject:
m_ObjectHideFlags: 0
@ -1622,13 +1985,119 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
root: {fileID: 1363717994}
collider: {fileID: 1915136996}
collider: {fileID: 1363717996}
selectedObject: {fileID: 11400000, guid: b030215acaabb18a58d812e296e6e99f, type: 2}
interactSource: {fileID: 11400000, guid: 8ad6b00b0192bc3d4b39b6f91de2447f, type: 2}
updateFrequency: 7
minimumChangeDelta: 0.1
outlineColor: {r: 1, g: 0.2705882, b: 0, a: 1}
outlineWidth: 3
outlineMode: 0
--- !u!1 &1500704131
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1500704132}
- component: {fileID: 1500704135}
- component: {fileID: 1500704134}
- component: {fileID: 1500704133}
m_Layer: 0
m_Name: Leg (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1500704132
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1500704131}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 1.25, y: -0.5, z: 0.65}
m_LocalScale: {x: 0.1, y: 1, z: 0.1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1028304588}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!65 &1500704133
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1500704131}
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 &1500704134
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1500704131}
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_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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 &1500704135
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1500704131}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1 &1504087844
GameObject:
m_ObjectHideFlags: 0
@ -2106,6 +2575,39 @@ Transform:
- {fileID: 1190731366}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1699158560
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1699158561}
m_Layer: 0
m_Name: 'why''d you leave your '
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1699158561
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1699158560}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1740748269}
- {fileID: 1790144273}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1740748256 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 2892703864492016621, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
@ -2125,6 +2627,14 @@ MonoBehaviour:
m_EditorClassIdentifier:
orchestrator: {fileID: 11400000, guid: 994ab04db2c2004abb8272830cb16b26, type: 2}
modal: {fileID: 11400000, guid: 71a6f29fae4392a4f97870a52b6adf1e, type: 2}
hasTitle: 0
title:
content: Keycard
--- !u!4 &1740748269 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 2368094401510200604, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
m_PrefabInstance: {fileID: 7547016027398857338}
m_PrefabAsset: {fileID: 0}
--- !u!1 &1782112144 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 39499efe4f068c9f1aa32d2ea7e17fa9, type: 3}
@ -2152,6 +2662,86 @@ Animator:
m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorStateOnDisable: 0
m_WriteDefaultValuesOnDisable: 0
--- !u!1 &1790144272
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1790144273}
m_Layer: 0
m_Name: upon the
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1790144273
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1790144272}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1028304588}
m_Father: {fileID: 1699158561}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1914178465
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1914178467}
- component: {fileID: 1914178466}
m_Layer: 0
m_Name: Selected Object
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1914178466
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1914178465}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 982ec8c450193224282e5b6e15ed3f18, type: 3}
m_Name:
m_EditorClassIdentifier:
selectedObject: {fileID: 11400000, guid: b030215acaabb18a58d812e296e6e99f, type: 2}
color: {r: 1, g: 0.2705882, b: 0, a: 1}
width: 3
mode: 0
--- !u!4 &1914178467
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1914178465}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, 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!1 &1915136994
GameObject:
m_ObjectHideFlags: 0
@ -2316,14 +2906,126 @@ Transform:
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &2044644165
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2044644166}
- component: {fileID: 2044644169}
- component: {fileID: 2044644168}
- component: {fileID: 2044644167}
m_Layer: 0
m_Name: Leg (3)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2044644166
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2044644165}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -1.25, y: -0.5, z: 0.65}
m_LocalScale: {x: 0.1, y: 1, z: 0.1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1028304588}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!65 &2044644167
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2044644165}
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 &2044644168
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2044644165}
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_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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 &2044644169
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2044644165}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1001 &7547016027398857338
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_TransformParent: {fileID: 1699158561}
m_Modifications:
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: addOutline
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: oneTimeUse
value: 1
@ -2332,41 +3034,105 @@ PrefabInstance:
propertyPath: onTarget.m_PersistentCalls.m_Calls.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onSelected.m_PersistentCalls.m_Calls.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onDeselected.m_PersistentCalls.m_Calls.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onTarget.m_PersistentCalls.m_Calls.Array.data[0].m_Mode
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onSelected.m_PersistentCalls.m_Calls.Array.data[0].m_Mode
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onTarget.m_PersistentCalls.m_Calls.Array.data[0].m_Target
value:
objectReference: {fileID: 1740748263}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onDeselected.m_PersistentCalls.m_Calls.Array.data[0].m_Mode
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onSelected.m_PersistentCalls.m_Calls.Array.data[0].m_Target
value:
objectReference: {fileID: 1740748263}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onTarget.m_PersistentCalls.m_Calls.Array.data[0].m_CallState
value: 2
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onDeselected.m_PersistentCalls.m_Calls.Array.data[0].m_Target
value:
objectReference: {fileID: 1740748263}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onTarget.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
value: Toggle
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onSelected.m_PersistentCalls.m_Calls.Array.data[0].m_CallState
value: 2
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onSelected.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
value: Open
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onDeselected.m_PersistentCalls.m_Calls.Array.data[0].m_CallState
value: 2
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onDeselected.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
value: Close
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onTarget.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName
value: KitsuneCafe.UI.TestThing, Assembly-CSharp
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onSelected.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName
value: KitsuneCafe.UI.TestThing, Assembly-CSharp
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onDeselected.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName
value: KitsuneCafe.UI.TestThing, Assembly-CSharp
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onTarget.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName
value: UnityEngine.Object, UnityEngine
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onSelected.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName
value: UnityEngine.Object, UnityEngine
objectReference: {fileID: 0}
- target: {fileID: 2022912019066975223, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: onDeselected.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName
value: UnityEngine.Object, UnityEngine
objectReference: {fileID: 0}
- target: {fileID: 2368094401510200604, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: m_LocalScale.x
value: 0.40000004
objectReference: {fileID: 0}
- target: {fileID: 2368094401510200604, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: m_LocalScale.z
value: 0.20000002
objectReference: {fileID: 0}
- target: {fileID: 2368094401510200604, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: m_LocalPosition.x
value: -2
value: 0
objectReference: {fileID: 0}
- target: {fileID: 2368094401510200604, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: m_LocalPosition.y
value: 0.005
value: 1.053
objectReference: {fileID: 0}
- target: {fileID: 2368094401510200604, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: m_LocalPosition.z
value: 0
value: 3
objectReference: {fileID: 0}
- target: {fileID: 2368094401510200604, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: m_LocalRotation.w
@ -2374,7 +3140,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 2368094401510200604, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: m_LocalRotation.x
value: 0
value: -0
objectReference: {fileID: 0}
- target: {fileID: 2368094401510200604, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: m_LocalRotation.y
@ -2382,7 +3148,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 2368094401510200604, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: m_LocalRotation.z
value: 0
value: -0
objectReference: {fileID: 0}
- target: {fileID: 2368094401510200604, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
@ -2423,5 +3189,6 @@ SceneRoots:
- {fileID: 518677617}
- {fileID: 584591836}
- {fileID: 1632951288}
- {fileID: 7547016027398857338}
- {fileID: 1281046468}
- {fileID: 1914178467}
- {fileID: 1699158561}

View file

@ -1,34 +1,73 @@
using System;
using KitsuneCafe.System;
using UnityEditor;
using UnityEditor.UIElements;
using UnityEngine.UIElements;
using TimeUnit = KitsuneCafe.System.TimeUnit;
[CustomPropertyDrawer(typeof(Duration))]
public class DurationPropertyDrawer : PropertyDrawer
{
public override VisualElement CreatePropertyGUI(SerializedProperty property)
{
var container = new VisualElement();
container.style.flexDirection = FlexDirection.Row;
return new DurationField(property);
}
var duration = new PropertyField(
property.FindPropertyRelative("displayValue"),
ObjectNames.NicifyVariableName(property.name)
);
public class DurationField : VisualElement
{
public readonly SerializedProperty Property;
private readonly SerializedObject serializedObject;
private readonly SerializedProperty value;
private readonly SerializedProperty unit;
private readonly DoubleField durationField;
duration.style.flexGrow = 1;
var unit = new EnumField
public DurationField(SerializedProperty property, string label = null)
{
bindingPath = "unit"
};
label ??= ObjectNames.NicifyVariableName(property.name);
style.flexDirection = FlexDirection.Row;
unit.style.flexGrow = 0;
Property = property;
serializedObject = property.serializedObject;
value = property.FindPropertyRelative("value");
unit = property.FindPropertyRelative("unit");
container.Add(duration);
container.Add(unit);
durationField = new DoubleField(
label
)
{
value = Duration.ToDisplayValue(value.longValue, (TimeUnit)unit.intValue)
};
durationField.style.flexGrow = 1;
var unitField = new EnumField
{
bindingPath = "unit"
};
unitField.style.flexGrow = 0;
Add(durationField);
Add(unitField);
AddToClassList(BaseField<double>.ussClassName);
durationField.AddToClassList(BaseField<double>.alignedFieldUssClassName);
durationField.RegisterValueChangedCallback(OnValueChanged);
}
private void OnValueChanged(ChangeEvent<double> evt)
{
value.longValue = Duration.FromDisplayValue(evt.newValue, (TimeUnit)unit.intValue);
serializedObject.ApplyModifiedProperties();
serializedObject.Update();
}
public new void RemoveFromHierarchy()
{
base.RemoveFromHierarchy();
durationField.UnregisterCallback<ChangeEvent<double>>(OnValueChanged);
}
return container;
}
}

View file

@ -201,6 +201,11 @@ namespace KitsuneCafe.Extension
{
return component.ObserveBool(c => c.didStart);
}
public static Observable<TResult> SelectOrDefault<TValue, TResult>(this Observable<TValue> source, Func<TValue, TResult> selector)
{
return source.Select(value => EqualityComparer<TValue>.Default.Equals(value, default) ? default : selector(value));
}
}
}

View file

@ -81,7 +81,9 @@ namespace KitsuneCafe.Interaction
bool IsInteractable { get; }
virtual void Target(IInteractor interactor) { }
void Select(IInteractor interactor) { }
void Deselect(IInteractor interactor) { }
IResult<Unit, InteractionError> Interact(IInteractor interactor);
}
}

View file

@ -10,7 +10,10 @@ namespace KitsuneCafe.Interaction
private bool oneTimeUse = false;
[SerializeField]
private UnityEvent<IInteractor> onTarget = default;
private UnityEvent<IInteractor> onSelected = default;
[SerializeField]
private UnityEvent<IInteractor> onDeselected = default;
[SerializeField]
private UnityEvent<IInteractor> onInteracted = default;
@ -19,12 +22,17 @@ namespace KitsuneCafe.Interaction
public bool IsInteractable => isInteractable;
void IInteractable.Target(IInteractor interactor)
void IInteractable.Select(IInteractor interactor)
{
onTarget.Invoke(interactor);
onSelected.Invoke(interactor);
}
void IInteractable.Deselect(IInteractor interactor)
{
onDeselected.Invoke(interactor);
}
public IResult<Unit, InteractionError> Interact(IInteractor interactor)
{
onInteracted.Invoke(interactor);

View file

@ -20,6 +20,9 @@ namespace KitsuneCafe.Player
[SerializeField]
private new Collider collider;
[SerializeField]
private ReactiveValue<GameObject> selectedObject;
[SerializeField]
private ReactiveEvent<float> interactSource;
@ -30,21 +33,6 @@ namespace KitsuneCafe.Player
private float minimumChangeDelta = 0.1f;
private float sqrtMovementDelta;
[SerializeField]
private Color outlineColor = Color.orangeRed;
[SerializeField]
private int outlineWidth = 3;
[SerializeField]
private Outline.Mode outlineMode = Outline.Mode.OutlineAll;
private readonly ObservableHashSet<IInteractable> interactables = new ObservableHashSet<IInteractable>();
public ReactiveProperty<IInteractable> CurrentHighlightedInteractable { get; private set; }
private Vector3 lastPosition;
public new T GetComponent<T>()
{
return Root.GetComponent<T>();
@ -55,7 +43,7 @@ namespace KitsuneCafe.Player
return root.TryGetComponent<T>(out component);
}
void Reset()
private void OnValidate()
{
root = gameObject;
collider = GetComponent<Collider>();
@ -63,83 +51,34 @@ namespace KitsuneCafe.Player
private void Awake()
{
CurrentHighlightedInteractable = new ReactiveProperty<IInteractable>(null);
lastPosition = transform.position;
selectedObject.Value = null;
sqrtMovementDelta = Mathf.Sqrt(minimumChangeDelta);
var d = Disposable.CreateBuilder();
collider.OnTriggerEnterAsObservable()
.Subscribe(other =>
{
if (other.TryGetComponent(out IInteractable interactable))
{
interactables.Add(interactable);
}
})
.AddTo(ref d);
var activeInteractables = TrackCollisions<IInteractable>(collider, ref d);
collider.OnTriggerExitAsObservable()
.Subscribe(other =>
{
if (other.TryGetComponent(out IInteractable interactable))
{
interactables.Remove(interactable);
}
})
.AddTo(ref d);
Observable.Merge(InteractablesChanged(), PlayerMoved())
.ThrottleFirstFrame(updateFrequency)
var selectedObjects = ObserveNearestInteractable(
PositionChanged(transform, sqrtMovementDelta),
activeInteractables
)
.DefaultIfEmpty()
.Select(_ =>
{
var closest = interactables
.Where(x => x.IsInteractable && x.gameObject != null)
.MinBy(x => Vector3.SqrMagnitude(gameObject.transform.position - x.gameObject.transform.position));
return closest;
})
.DistinctUntilChanged()
.Subscribe(highlighted =>
{
CurrentHighlightedInteractable.Value = highlighted;
})
.AddTo(ref d);
interactables.ObserveChanged()
.ThrottleFirstFrame(updateFrequency, UnityFrameProvider.FixedUpdate)
.Subscribe(_ =>
{
var highlighted = interactables
.Where(x => x.IsInteractable)
.MinBy(x => collider.transform.position.SqrDistance(x.gameObject.transform.position));
if (CurrentHighlightedInteractable.Value != highlighted)
{
CurrentHighlightedInteractable.Value = highlighted;
}
})
.AddTo(ref d);
var highlightedInteractable = CurrentHighlightedInteractable
.Scan((prev, cur) =>
{
UnhighlightInteractable(prev);
HighlightInteractable(cur);
return cur;
});
.Do(selected => selectedObject.Value = selected?.gameObject)
.SelectOrDefault(go => go.TryGetComponent(out IInteractable i) ? i : null)
.Scan<IInteractable, IInteractable>(null, SwapSelected);
interactSource
.AsObservable()
.WithLatestFrom(highlightedInteractable, (_, highlighted) => highlighted)
.WithLatestFrom(selectedObjects, (_, highlighted) => highlighted)
.WhereNotNull()
.Subscribe(interactable =>
{
var result = interactable.Interact(this);
if (result.IsOk)
{
interactables.Remove(interactable);
activeInteractables.Remove(interactable);
}
else
{
@ -151,46 +90,61 @@ namespace KitsuneCafe.Player
d.RegisterTo(destroyCancellationToken);
}
private Observable<Unit> InteractablesChanged()
private ObservableHashSet<T> TrackCollisions<T>(Collider collider, ref DisposableBuilder d)
{
return interactables.ObserveChanged().Select(_ => Unit.Default);
var interactables = new ObservableHashSet<T>();
collider.OnTriggerEnterAsObservable()
.Subscribe(other =>
{
if (other.TryGetComponent(out T interactable))
{
interactables.Add(interactable);
}
})
.AddTo(ref d);
collider.OnTriggerExitAsObservable()
.Subscribe(other =>
{
if (other.TryGetComponent(out T interactable))
{
interactables.Remove(interactable);
}
})
.AddTo(ref d);
return interactables;
}
private Observable<Unit> PlayerMoved()
private Observable<Vector3> PositionChanged(Transform target, float delta, FrameProvider frameProvider = null)
{
return Observable.EveryUpdate(UnityFrameProvider.FixedUpdate)
.Select(_ => transform.position)
.Where(pos => pos.SqrDistance(lastPosition) > sqrtMovementDelta)
.Do(pos => lastPosition = pos)
.Select(_ => Unit.Default);
frameProvider ??= UnityFrameProvider.FixedUpdate;
return Observable.EveryValueChanged(target, t => t.position, frameProvider)
.Scan((prev, cur) => cur.SqrDistance(prev) > delta ? cur : prev);
}
private void HighlightInteractable(IInteractable interactable)
private Observable<IInteractable> ObserveNearestInteractable(Observable<Vector3> positionSource, IObservableCollection<IInteractable> interactables)
{
if (interactable == null) { return; }
interactable.Target(this);
if (!interactable.TryGetComponent(out Outline outline))
{
outline = interactable.gameObject.AddComponent<Outline>();
outline.OutlineColor = outlineColor;
outline.OutlineWidth = outlineWidth;
outline.OutlineMode = outlineMode;
}
outline.enabled = true;
return Observable.CombineLatest(
interactables.ObserveChanged(),
positionSource,
(_, position) => Nearest(position, interactables)
);
}
private void UnhighlightInteractable(IInteractable interactable)
private IInteractable Nearest(Vector3 origin, IObservableCollection<IInteractable> interactables)
{
if (interactable == null) { return; }
return interactables
.Where(x => x.IsInteractable)
.MinBy(x => origin.SqrDistance(x.gameObject.transform.position));
}
if (interactable.TryGetComponent(out Outline outline))
{
outline.enabled = false;
}
private IInteractable SwapSelected(IInteractable previous, IInteractable current)
{
previous?.Deselect(this);
current?.Select(this);
return current;
}
}
}

View file

@ -0,0 +1,74 @@
using KitsuneCafe.SOAP;
using R3;
using UnityEngine;
namespace KitsuneCafe.Interaction
{
public class SelectedObjectHandler : MonoBehaviour
{
[SerializeField]
private GameObjectValue selectedObject;
[Header("Default Outline")]
[SerializeField]
private Color color = Color.orangeRed;
[SerializeField]
private float width = 1f;
[SerializeField]
private Outline.Mode mode = Outline.Mode.OutlineAll;
private void Awake()
{
selectedObject
.AsObservable()
.Scan<GameObject, GameObject>(null, SwapObjects)
.Subscribe()
.AddTo(this);
}
private GameObject SwapObjects(GameObject previous, GameObject current)
{
if (previous != null)
{
DeselectObject(previous);
}
if (current != null)
{
SelectObject(current);
}
return current;
}
private void DeselectObject(GameObject gameObject)
{
if (gameObject.TryGetComponent(out Outline outline))
{
outline.enabled = false;
}
}
private Outline AddSelectionEffect(GameObject gameObject)
{
var outline = gameObject.AddComponent<Outline>();
outline.OutlineColor = color;
outline.OutlineWidth = width;
outline.OutlineMode = mode;
return outline;
}
private void SelectObject(GameObject gameObject)
{
if (!gameObject.TryGetComponent(out Outline outline))
{
outline = AddSelectionEffect(gameObject);
}
outline.enabled = true;
}
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 982ec8c450193224282e5b6e15ed3f18

View file

@ -6,7 +6,7 @@ namespace KitsuneCafe.SOAP
public class ReactiveValue<T> : ReactiveSource<T>
{
#if UNITY_EDITOR
[Multiline]
[TextArea]
public string Description = "";
#endif

View file

@ -0,0 +1,13 @@
using KitsuneCafe.System;
using UnityEngine;
namespace KitsuneCafe.SOAP
{
[CreateAssetMenu(fileName = "GameObjectValue", menuName = KitsuneCafeMenu.SoapValue + "GameObject")]
public class GameObjectValue : ReactiveValue<GameObject>
{
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: c3b21f732f40c4e4cb96718b2e8e33bb

View file

@ -1,5 +1,4 @@
using System;
using NUnit.Framework.Constraints;
using UnityEngine;
using UnityEngine.UIElements;
@ -16,11 +15,8 @@ namespace KitsuneCafe.System
}
[Serializable]
public struct Duration : IComparable, IComparable<Duration>, IComparable<TimeSpan>, IEquatable<Duration>, IEquatable<TimeSpan>, ISerializationCallbackReceiver
public struct Duration : IComparable, IComparable<Duration>, IComparable<TimeSpan>, IEquatable<Duration>, IEquatable<TimeSpan>
{
[SerializeField]
private double displayValue;
[SerializeField, HideInInspector]
private long value;
@ -29,7 +25,6 @@ namespace KitsuneCafe.System
public Duration(long ticks, TimeUnit unit)
{
displayValue = ToDisplayValue(ticks, unit);
value = ticks;
this.unit = unit;
}
@ -78,16 +73,18 @@ namespace KitsuneCafe.System
public static double ToDisplayValue(long ticks, TimeUnit unit)
{
return unit switch
decimal value = unit switch
{
TimeUnit.Ticks => ticks,
TimeUnit.Milliseconds => ticks / TimeSpan.TicksPerMillisecond,
TimeUnit.Seconds => ticks / TimeSpan.TicksPerSecond,
TimeUnit.Minutes => ticks / TimeSpan.TicksPerMinute,
TimeUnit.Hours => ticks / TimeSpan.TicksPerHour,
TimeUnit.Days => ticks / TimeSpan.TicksPerHour,
TimeUnit.Milliseconds => (decimal)ticks / TimeSpan.TicksPerMillisecond,
TimeUnit.Seconds => (decimal)ticks / TimeSpan.TicksPerSecond,
TimeUnit.Minutes => (decimal)ticks / TimeSpan.TicksPerMinute,
TimeUnit.Hours => (decimal)ticks / TimeSpan.TicksPerHour,
TimeUnit.Days => (decimal)ticks / TimeSpan.TicksPerHour,
var x => throw new ArgumentException($"{x} is not a valid TimeUnit.")
};
return Convert.ToDouble(value);
}
public static long FromDisplayValue(double value, TimeUnit unit)
@ -168,15 +165,5 @@ namespace KitsuneCafe.System
{
return $"{value} {nameof(unit)}";
}
public void OnBeforeSerialize()
{
displayValue = Into();
}
public void OnAfterDeserialize()
{
value = FromDisplayValue(displayValue, unit);
}
}
}

View file

@ -5,6 +5,37 @@ using UnityEngine.UIElements;
namespace KitsuneCafe.UI
{
public readonly struct HeadlessModalElementInstance : IUiElement
{
public readonly string Content;
private readonly ModalElement so;
public readonly VisualTreeAsset VisualTreeAsset => so.VisualTreeAsset;
public HeadlessModalElementInstance(string content, ModalElement so)
{
Content = content;
this.so = so;
}
public VisualElement Instantiate()
{
var instance = VisualTreeAsset.CloneTree();
Configure(instance);
return instance;
}
public void Configure(VisualElement ve)
{
ve.Q(so.HeaderId).style.display = DisplayStyle.None;
ve.Q<Label>(so.ContentId).text = Content;
}
public IEnumerable<BaseUiEffect> GetEffectsFor(UiEvent timing)
{
return so.GetEffectsFor(timing);
}
}
public readonly struct ModalElementInstance : IUiElement
{
public readonly string Title;
@ -42,14 +73,28 @@ namespace KitsuneCafe.UI
[CreateAssetMenu(menuName = KitsuneCafeMenu.UiElement + "Modal")]
public class ModalElement : UiElementSo
{
[SerializeField]
private string headerId = "header";
public string HeaderId => headerId;
[SerializeField]
private string titleId = "title";
public string TitleId => titleId;
[SerializeField]
private string bodyId = "body";
public string BodyId => bodyId;
[SerializeField]
private string contentId = "content";
public string ContentId => contentId;
public HeadlessModalElementInstance CreateHeadless(string content)
{
return new HeadlessModalElementInstance(content, this);
}
public ModalElementInstance Create(string title, string content)
{
return new ModalElementInstance(title, content, this);

View file

@ -1,3 +1,4 @@
using KitsuneCafe.System.Attributes;
using UnityEngine;
namespace KitsuneCafe.UI
@ -10,11 +11,28 @@ namespace KitsuneCafe.UI
[SerializeField]
private ModalElement modal;
[SerializeField]
private bool hasTitle = true;
[SerializeField, ShowIf("hasTitle")]
private string title;
[SerializeField]
private string content;
private ElementId id;
public void Open()
{
id = orchestrator.SpawnElement(modal.Create("<3", "fuck !!!! :3"), transform.position + (Vector3.up * 2));
id = orchestrator.SpawnElement(
Create(),
transform.position + Vector3.up
);
}
private IUiElement Create()
{
return hasTitle ? modal.Create(title, content) : modal.CreateHeadless(content);
}
public void Close()

View file

@ -1,10 +1,10 @@
<ui:UXML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ui="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" noNamespaceSchemaLocation="../../UIElementsSchema/UIElements.xsd" editor-extension-mode="False">
<Style src="project://database/Assets/UI/global.uss?fileID=7433441132597879392&amp;guid=79b8bca9bb0db511c919138e0469c94a&amp;type=3#global" />
<ui:VisualElement name="container" style="background-color: rgba(26, 26, 26, 0.63); border-left-color: rgb(252, 252, 252); border-right-color: rgb(252, 252, 252); border-top-color: rgb(252, 252, 252); border-bottom-color: rgb(252, 252, 252); border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; flex-shrink: 1; margin-right: auto; margin-bottom: auto; transition-property: opacity; transition-duration: 1s; transition-timing-function: ease-in-out;">
<ui:VisualElement name="title-bar" style="border-bottom-color: rgb(252, 252, 252); border-left-color: rgb(252, 252, 252); border-right-color: rgb(252, 252, 252); border-top-color: rgb(252, 252, 252); border-bottom-width: 1px; padding-top: 8px; padding-right: 8px; padding-bottom: 8px; padding-left: 8px;">
<ui:VisualElement name="container" style="background-color: rgba(26, 26, 26, 0.63); border-left-color: rgb(252, 252, 252); border-right-color: rgb(252, 252, 252); border-top-color: rgb(252, 252, 252); border-bottom-color: rgb(252, 252, 252); border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; flex-shrink: 1; transition-property: opacity; transition-duration: 1s; transition-timing-function: ease-in-out; margin-right: auto; margin-bottom: auto; translate: -50% 0;">
<ui:VisualElement name="header" style="border-bottom-color: rgb(252, 252, 252); border-left-color: rgb(252, 252, 252); border-right-color: rgb(252, 252, 252); border-top-color: rgb(252, 252, 252); border-bottom-width: 1px; padding-top: 8px; padding-right: 8px; padding-bottom: 8px; padding-left: 8px;">
<ui:Label text="Title" name="title" enabled="true" class="header" style="color: rgb(252, 252, 252);" />
</ui:VisualElement>
<ui:VisualElement style="padding-top: 8px; padding-right: 8px; padding-bottom: 8px; padding-left: 8px;">
<ui:VisualElement name="body" style="padding-top: 8px; padding-right: 8px; padding-bottom: 8px; padding-left: 8px;">
<ui:Label text="Content" name="content" />
</ui:VisualElement>
</ui:VisualElement>

View file

@ -151,7 +151,7 @@ PlayerSettings:
enable360StereoCapture: 0
isWsaHolographicRemotingEnabled: 0
enableFrameTimingStats: 0
enableOpenGLProfilerGPURecorders: 1
enableOpenGLProfilerGPURecorders: 0
allowHDRDisplaySupport: 0
useHDRDisplay: 0
hdrBitDepth: 0
@ -527,6 +527,9 @@ PlayerSettings:
- m_BuildTarget: AndroidPlayer
m_APIs: 150000000b000000
m_Automatic: 0
- m_BuildTarget: LinuxStandaloneSupport
m_APIs: 1100000015000000
m_Automatic: 1
m_BuildTargetVRSettings: []
m_DefaultShaderChunkSizeInMB: 16
m_DefaultShaderChunkCount: 0

View file

@ -12,7 +12,7 @@ TagManager:
- Water
- UI
- Player
-
- Outline
-
-
-