add new room 2-sit,add assetbundle loader,read rooms and meeting list form api and show in list

This commit is contained in:
mher 2025-06-15 14:38:42 +03:30
parent 9fd622fc29
commit 0a29a0b48d
102 changed files with 3303 additions and 465 deletions

View File

@ -1565,6 +1565,7 @@
<ProjectReference Include="PhotonVoice.API.csproj" /> <ProjectReference Include="PhotonVoice.API.csproj" />
<ProjectReference Include="PhotonVoice.csproj" /> <ProjectReference Include="PhotonVoice.csproj" />
<ProjectReference Include="Fusion.Unity.Editor.csproj" /> <ProjectReference Include="Fusion.Unity.Editor.csproj" />
<ProjectReference Include="Unity.XR.Interaction.Toolkit.Samples.StarterAssets.Editor.csproj" />
<ProjectReference Include="ReadyPlayerMe.Samples.QuickStart.csproj" /> <ProjectReference Include="ReadyPlayerMe.Samples.QuickStart.csproj" />
<ProjectReference Include="ReadyPlayerMe.Samples.AvatarRenders.csproj" /> <ProjectReference Include="ReadyPlayerMe.Samples.AvatarRenders.csproj" />
<ProjectReference Include="ReadyPlayerMe.AvatarCreator.csproj" /> <ProjectReference Include="ReadyPlayerMe.AvatarCreator.csproj" />
@ -1574,6 +1575,7 @@
<ProjectReference Include="MicAmplifierEditor.Editor.csproj" /> <ProjectReference Include="MicAmplifierEditor.Editor.csproj" />
<ProjectReference Include="Paroxe.PDFRenderer.Editor.csproj" /> <ProjectReference Include="Paroxe.PDFRenderer.Editor.csproj" />
<ProjectReference Include="Unity.XR.Interaction.Toolkit.Samples.SpatialKeyboard.Editor.csproj" /> <ProjectReference Include="Unity.XR.Interaction.Toolkit.Samples.SpatialKeyboard.Editor.csproj" />
<ProjectReference Include="Unity.XR.Interaction.Toolkit.Samples.StarterAssets.csproj" />
<ProjectReference Include="Voice.FMOD.Editor.csproj" /> <ProjectReference Include="Voice.FMOD.Editor.csproj" />
<ProjectReference Include="PhotonVoice.Fusion.csproj" /> <ProjectReference Include="PhotonVoice.Fusion.csproj" />
<ProjectReference Include="ReadyPlayerMe.Samples.AvatarCreatorWizard.csproj" /> <ProjectReference Include="ReadyPlayerMe.Samples.AvatarCreatorWizard.csproj" />

View File

@ -146,6 +146,7 @@
<Compile Include="Assets\BNG Framework\Scripts\UI\VRCanvas.cs" /> <Compile Include="Assets\BNG Framework\Scripts\UI\VRCanvas.cs" />
<Compile Include="Assets\BNG Framework\Scripts\Extras\SlidingDoorMover.cs" /> <Compile Include="Assets\BNG Framework\Scripts\Extras\SlidingDoorMover.cs" />
<Compile Include="Assets\BNG Framework\Scripts\Core\SmoothLocomotion.cs" /> <Compile Include="Assets\BNG Framework\Scripts\Core\SmoothLocomotion.cs" />
<Compile Include="Assets\Scripts\ScreenShot\ScreenShot.cs" />
<Compile Include="Assets\BNG Framework\Scripts\Extras\TimeController.cs" /> <Compile Include="Assets\BNG Framework\Scripts\Extras\TimeController.cs" />
<Compile Include="Assets\BNG Framework\Scripts\Core\TrackedDevice.cs" /> <Compile Include="Assets\BNG Framework\Scripts\Core\TrackedDevice.cs" />
<Compile Include="Assets\BNG Framework\Scripts\Weapons\AmmoDispenser.cs" /> <Compile Include="Assets\BNG Framework\Scripts\Weapons\AmmoDispenser.cs" />
@ -181,6 +182,7 @@
<Compile Include="Assets\BNG Framework\Scripts\Helpers\HandRepresentationHelper.cs" /> <Compile Include="Assets\BNG Framework\Scripts\Helpers\HandRepresentationHelper.cs" />
<Compile Include="Assets\BNG Framework\Scripts\Components\Tooltip.cs" /> <Compile Include="Assets\BNG Framework\Scripts\Components\Tooltip.cs" />
<Compile Include="Assets\Photon\FusionXRHost\Scripts\Grabbing\NetworkGrabber.cs" /> <Compile Include="Assets\Photon\FusionXRHost\Scripts\Grabbing\NetworkGrabber.cs" />
<Compile Include="Assets\Script\ImportModel\DownloadGlb.cs" />
<Compile Include="Assets\BNG Framework\Scripts\Extras\FPSText.cs" /> <Compile Include="Assets\BNG Framework\Scripts\Extras\FPSText.cs" />
<Compile Include="Assets\Coworking office\PostProcessing\Runtime\Models\AmbientOcclusionModel.cs" /> <Compile Include="Assets\Coworking office\PostProcessing\Runtime\Models\AmbientOcclusionModel.cs" />
<Compile Include="Assets\Photon\FusionXRHost\Scripts\Locomotion\Fader.cs" /> <Compile Include="Assets\Photon\FusionXRHost\Scripts\Locomotion\Fader.cs" />
@ -1937,6 +1939,7 @@
<ProjectReference Include="PhotonVoice.API.csproj" /> <ProjectReference Include="PhotonVoice.API.csproj" />
<ProjectReference Include="PhotonVoice.csproj" /> <ProjectReference Include="PhotonVoice.csproj" />
<ProjectReference Include="Fusion.Unity.Editor.csproj" /> <ProjectReference Include="Fusion.Unity.Editor.csproj" />
<ProjectReference Include="Unity.XR.Interaction.Toolkit.Samples.StarterAssets.Editor.csproj" />
<ProjectReference Include="ReadyPlayerMe.Samples.QuickStart.csproj" /> <ProjectReference Include="ReadyPlayerMe.Samples.QuickStart.csproj" />
<ProjectReference Include="ReadyPlayerMe.Samples.AvatarRenders.csproj" /> <ProjectReference Include="ReadyPlayerMe.Samples.AvatarRenders.csproj" />
<ProjectReference Include="ReadyPlayerMe.AvatarCreator.csproj" /> <ProjectReference Include="ReadyPlayerMe.AvatarCreator.csproj" />
@ -1946,6 +1949,7 @@
<ProjectReference Include="MicAmplifierEditor.Editor.csproj" /> <ProjectReference Include="MicAmplifierEditor.Editor.csproj" />
<ProjectReference Include="Paroxe.PDFRenderer.Editor.csproj" /> <ProjectReference Include="Paroxe.PDFRenderer.Editor.csproj" />
<ProjectReference Include="Unity.XR.Interaction.Toolkit.Samples.SpatialKeyboard.Editor.csproj" /> <ProjectReference Include="Unity.XR.Interaction.Toolkit.Samples.SpatialKeyboard.Editor.csproj" />
<ProjectReference Include="Unity.XR.Interaction.Toolkit.Samples.StarterAssets.csproj" />
<ProjectReference Include="Voice.FMOD.Editor.csproj" /> <ProjectReference Include="Voice.FMOD.Editor.csproj" />
<ProjectReference Include="PhotonVoice.Fusion.csproj" /> <ProjectReference Include="PhotonVoice.Fusion.csproj" />
<ProjectReference Include="ReadyPlayerMe.Samples.AvatarCreatorWizard.csproj" /> <ProjectReference Include="ReadyPlayerMe.Samples.AvatarCreatorWizard.csproj" />

View File

@ -34,7 +34,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 0 filterMode: 1
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 0 wrapU: 0
@ -55,7 +55,7 @@ TextureImporter:
alphaIsTransparency: 0 alphaIsTransparency: 0
spriteTessellationDetail: -1 spriteTessellationDetail: -1
textureType: 0 textureType: 0
textureShape: 1 textureShape: 2
singleChannelComponent: 0 singleChannelComponent: 0
flipbookRows: 1 flipbookRows: 1
flipbookColumns: 1 flipbookColumns: 1
@ -70,9 +70,9 @@ TextureImporter:
- serializedVersion: 4 - serializedVersion: 4
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 8192 maxTextureSize: 8192
resizeAlgorithm: 0 resizeAlgorithm: 1
textureFormat: -1 textureFormat: -1
textureCompression: 0 textureCompression: 1
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0

View File

@ -0,0 +1,63 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!850595691 &4890085278179872738
LightingSettings:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: New Lighting Settings
serializedVersion: 9
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 0
m_RealtimeEnvironmentLighting: 1
m_BounceScale: 1
m_AlbedoBoost: 1
m_IndirectOutputScale: 1
m_UsingShadowmask: 1
m_BakeBackend: 1
m_LightmapMaxSize: 2048
m_LightmapSizeFixed: 0
m_UseMipmapLimits: 1
m_BakeResolution: 40
m_Padding: 2
m_LightmapCompression: 3
m_AO: 1
m_AOMaxDistance: 0.1
m_CompAOExponent: 1
m_CompAOExponentDirect: 0
m_ExtractAO: 0
m_MixedBakeMode: 2
m_LightmapsBakeMode: 1
m_FilterMode: 1
m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
m_ExportTrainingData: 0
m_EnableWorkerProcessBaking: 1
m_TrainingDataDestination: TrainingData
m_RealtimeResolution: 2
m_ForceWhiteAlbedo: 0
m_ForceUpdates: 0
m_PVRCulling: 1
m_PVRSampling: 1
m_PVRDirectSampleCount: 32
m_PVRSampleCount: 512
m_PVREnvironmentSampleCount: 256
m_PVREnvironmentReferencePointCount: 2048
m_LightProbeSampleCountMultiplier: 4
m_PVRBounces: 2
m_PVRMinBounces: 2
m_PVREnvironmentImportanceSampling: 1
m_PVRFilteringMode: 1
m_PVRDenoiserTypeDirect: 1
m_PVRDenoiserTypeIndirect: 1
m_PVRDenoiserTypeAO: 1
m_PVRFilterTypeDirect: 0
m_PVRFilterTypeIndirect: 0
m_PVRFilterTypeAO: 0
m_PVRFilteringGaussRadiusDirect: 1
m_PVRFilteringGaussRadiusIndirect: 1
m_PVRFilteringGaussRadiusAO: 1
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
m_PVRFilteringAtrousPositionSigmaIndirect: 2
m_PVRFilteringAtrousPositionSigmaAO: 1
m_RespectSceneVisibilityWhenBakingGI: 0

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 50a55ab1a6f16c346b97d3f1db92f513
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 4890085278179872738
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,142 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-3982346471357629615
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: 9
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: New Material
m_Shader: {fileID: 103, 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:
- 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}
- _Tex:
m_Texture: {fileID: 8900000, guid: 548d20378fd665e4aa0056817dccf79d, type: 3}
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
- _Exposure: 1
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _Metallic: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Rotation: 0
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 0
- _WorkflowMode: 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}
- _Tint: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

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

8
Assets/AssetBundles.meta Normal file
View File

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

View File

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

View File

@ -4,11 +4,10 @@ TrueTypeFontImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 4 serializedVersion: 4
fontSize: 16 fontSize: 16
forceTextureCase: -2 forceTextureCase: -1
characterSpacing: 0 characterSpacing: 0
characterPadding: 1 characterPadding: 1
includeFontData: 1 includeFontData: 1
fontName: Montserrat
fontNames: fontNames:
- Montserrat - Montserrat
fallbackFontReferences: fallbackFontReferences:

View File

@ -219,6 +219,9 @@ namespace BNG {
enabled = false; enabled = false;
} }
} }
else{
return;
}
// Are we pressing button to check for teleport? // Are we pressing button to check for teleport?
aimingTeleport = KeyDownForTeleport(); aimingTeleport = KeyDownForTeleport();

View File

@ -12,21 +12,14 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3}
m_Name: Vazir SDF m_Name: Vazir SDF
m_EditorClassIdentifier: m_EditorClassIdentifier:
hashCode: -1448666521
material: {fileID: 9007623695884566715}
materialHashCode: 714370151
m_Version: 1.1.0 m_Version: 1.1.0
m_SourceFontFileGUID: be27cb0ebbaeb544593165882587d50b
m_SourceFontFile_EditorRef: {fileID: 12800000, guid: be27cb0ebbaeb544593165882587d50b,
type: 3}
m_SourceFontFile: {fileID: 0}
m_AtlasPopulationMode: 0
m_FaceInfo: m_FaceInfo:
m_FaceIndex: 0 m_FaceIndex: 0
m_FamilyName: Vazir m_FamilyName: Vazir
m_StyleName: Regular m_StyleName: Regular
m_PointSize: 35 m_PointSize: 35
m_Scale: 1 m_Scale: 1
m_UnitsPerEM: 0
m_LineHeight: 54.6875 m_LineHeight: 54.6875
m_AscentLine: 36.743164 m_AscentLine: 36.743164
m_CapLine: 25 m_CapLine: 25
@ -42,6 +35,31 @@ MonoBehaviour:
m_StrikethroughOffset: 7.6 m_StrikethroughOffset: 7.6
m_StrikethroughThickness: 1.7089844 m_StrikethroughThickness: 1.7089844
m_TabWidth: 10 m_TabWidth: 10
m_Material: {fileID: 9007623695884566715}
m_SourceFontFileGUID: be27cb0ebbaeb544593165882587d50b
m_CreationSettings:
sourceFontFileName:
sourceFontFileGUID: be27cb0ebbaeb544593165882587d50b
faceIndex: 0
pointSizeSamplingMode: 0
pointSize: 35
padding: 5
paddingMode: 0
packingMode: 4
atlasWidth: 512
atlasHeight: 512
characterSetSelectionMode: 6
characterSequence: 060C,061B,061F,0621,0622,0623,0624,0625,0626,0627,0628,0629,062A,062B,062C,062D,062E,062F,0630,0631,0632,0633,0634,0635,0636,0637,0638,0639,063A,0640,0641,0642,0643,0644,0645,0646,0647,0648,0649,064A,067E,0686,0698,06A9,06AF,FEE1,FED1,06CC,FB56,FB57,FB58,FB59,FB7A,FB7B,FB7C,FB7D,FB8A,FB8B,FB8C,FB8D,FB92,FB93,FB94,FB95,FB8E,FB8F,FB90,FB91,FBFC-FBFF,FE70-FEFF,064b-065f,0670,FC5E-FC63,0660-0669,06F0-06F9
referencedFontAssetGUID:
referencedTextAssetGUID:
fontStyle: 0
fontStyleModifier: 0
renderMode: 4134
includeFontFeatures: 1
m_SourceFontFile: {fileID: 0}
m_SourceFontFilePath:
m_AtlasPopulationMode: 0
InternalDynamicOS: 0
m_GlyphTable: m_GlyphTable:
- m_Index: 152 - m_Index: 152
m_Metrics: m_Metrics:
@ -4665,7 +4683,12 @@ MonoBehaviour:
- {fileID: 4102001370814347148} - {fileID: 4102001370814347148}
m_AtlasTextureIndex: 0 m_AtlasTextureIndex: 0
m_IsMultiAtlasTexturesEnabled: 0 m_IsMultiAtlasTexturesEnabled: 0
m_GetFontFeatures: 1
m_ClearDynamicDataOnBuild: 0 m_ClearDynamicDataOnBuild: 0
m_AtlasWidth: 512
m_AtlasHeight: 512
m_AtlasPadding: 5
m_AtlasRenderMode: 4134
m_UsedGlyphRects: m_UsedGlyphRects:
- m_X: 0 - m_X: 0
m_Y: 0 m_Y: 0
@ -6136,57 +6159,14 @@ MonoBehaviour:
m_Y: 475 m_Y: 475
m_Width: 50 m_Width: 50
m_Height: 36 m_Height: 36
m_fontInfo:
Name:
PointSize: 0
Scale: 0
CharacterCount: 0
LineHeight: 0
Baseline: 0
Ascender: 0
CapHeight: 0
Descender: 0
CenterLine: 0
SuperscriptOffset: 0
SubscriptOffset: 0
SubSize: 0
Underline: 0
UnderlineThickness: 0
strikethrough: 0
strikethroughThickness: 0
TabWidth: 0
Padding: 0
AtlasWidth: 0
AtlasHeight: 0
atlas: {fileID: 0}
m_AtlasWidth: 512
m_AtlasHeight: 512
m_AtlasPadding: 5
m_AtlasRenderMode: 4134
m_glyphInfoList: []
m_KerningTable:
kerningPairs: []
m_FontFeatureTable: m_FontFeatureTable:
m_MultipleSubstitutionRecords: []
m_LigatureSubstitutionRecords: []
m_GlyphPairAdjustmentRecords: [] m_GlyphPairAdjustmentRecords: []
fallbackFontAssets: [] m_MarkToBaseAdjustmentRecords: []
m_MarkToMarkAdjustmentRecords: []
m_ShouldReimportFontFeatures: 0
m_FallbackFontAssetTable: [] m_FallbackFontAssetTable: []
m_CreationSettings:
sourceFontFileName:
sourceFontFileGUID: be27cb0ebbaeb544593165882587d50b
pointSizeSamplingMode: 0
pointSize: 35
padding: 5
packingMode: 4
atlasWidth: 512
atlasHeight: 512
characterSetSelectionMode: 6
characterSequence: 060C,061B,061F,0621,0622,0623,0624,0625,0626,0627,0628,0629,062A,062B,062C,062D,062E,062F,0630,0631,0632,0633,0634,0635,0636,0637,0638,0639,063A,0640,0641,0642,0643,0644,0645,0646,0647,0648,0649,064A,067E,0686,0698,06A9,06AF,FEE1,FED1,06CC,FB56,FB57,FB58,FB59,FB7A,FB7B,FB7C,FB7D,FB8A,FB8B,FB8C,FB8D,FB92,FB93,FB94,FB95,FB8E,FB8F,FB90,FB91,FBFC-FBFF,FE70-FEFF,064b-065f,0670,FC5E-FC63,0660-0669,06F0-06F9
referencedFontAssetGUID:
referencedTextAssetGUID:
fontStyle: 0
fontStyleModifier: 0
renderMode: 4134
includeFontFeatures: 1
m_FontWeightTable: m_FontWeightTable:
- regularTypeface: {fileID: 0} - regularTypeface: {fileID: 0}
italicTypeface: {fileID: 0} italicTypeface: {fileID: 0}
@ -6215,6 +6195,33 @@ MonoBehaviour:
boldSpacing: 7 boldSpacing: 7
italicStyle: 35 italicStyle: 35
tabSize: 10 tabSize: 10
m_fontInfo:
Name:
PointSize: 0
Scale: 0
CharacterCount: 0
LineHeight: 0
Baseline: 0
Ascender: 0
CapHeight: 0
Descender: 0
CenterLine: 0
SuperscriptOffset: 0
SubscriptOffset: 0
SubSize: 0
Underline: 0
UnderlineThickness: 0
strikethrough: 0
strikethroughThickness: 0
TabWidth: 0
Padding: 0
AtlasWidth: 0
AtlasHeight: 0
m_glyphInfoList: []
m_KerningTable:
kerningPairs: []
fallbackFontAssets: []
atlas: {fileID: 0}
--- !u!28 &4102001370814347148 --- !u!28 &4102001370814347148
Texture2D: Texture2D:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -6225,10 +6232,8 @@ Texture2D:
m_ImageContentsHash: m_ImageContentsHash:
serializedVersion: 2 serializedVersion: 2
Hash: 00000000000000000000000000000000 Hash: 00000000000000000000000000000000
m_ForcedFallbackFormat: 4
m_DownscaleFallback: 0
m_IsAlphaChannelOptional: 0 m_IsAlphaChannelOptional: 0
serializedVersion: 2 serializedVersion: 3
m_Width: 512 m_Width: 512
m_Height: 512 m_Height: 512
m_CompleteImageSize: 262144 m_CompleteImageSize: 262144
@ -6237,7 +6242,8 @@ Texture2D:
m_MipCount: 1 m_MipCount: 1
m_IsReadable: 0 m_IsReadable: 0
m_IsPreProcessed: 0 m_IsPreProcessed: 0
m_IgnoreMasterTextureLimit: 0 m_IgnoreMipmapLimit: 0
m_MipmapLimitGroupName:
m_StreamingMipmaps: 0 m_StreamingMipmaps: 0
m_StreamingMipmapsPriority: 0 m_StreamingMipmapsPriority: 0
m_VTOnly: 0 m_VTOnly: 0
@ -6370,3 +6376,4 @@ Material:
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1} - _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
- _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
m_BuildTextureStacks: [] m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@ -3,8 +3,8 @@ guid: 575337e635cd9ba449c8606ebec1f846
TrueTypeFontImporter: TrueTypeFontImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 4 serializedVersion: 4
fontSize: 16 fontSize: 200
forceTextureCase: -2 forceTextureCase: -1
characterSpacing: 0 characterSpacing: 0
characterPadding: 1 characterPadding: 1
includeFontData: 1 includeFontData: 1
@ -13,6 +13,8 @@ TrueTypeFontImporter:
fallbackFontReferences: fallbackFontReferences:
- {fileID: 12800000, guid: 60c217f3db68db4449cc6f2188365185, type: 3} - {fileID: 12800000, guid: 60c217f3db68db4449cc6f2188365185, type: 3}
- {fileID: 12800000, guid: e2ee5a696599a644697bcfc244e6747e, type: 3} - {fileID: 12800000, guid: e2ee5a696599a644697bcfc244e6747e, type: 3}
- {fileID: 12800000, guid: be27cb0ebbaeb544593165882587d50b, type: 3}
- {fileID: 12800000, guid: 38dde9f5e50a2c541a5d747fa989c9f6, type: 3}
customCharacters: customCharacters:
fontRenderingMode: 0 fontRenderingMode: 0
ascentCalculationMode: 1 ascentCalculationMode: 1

View File

@ -3,8 +3,8 @@ guid: be27cb0ebbaeb544593165882587d50b
TrueTypeFontImporter: TrueTypeFontImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 4 serializedVersion: 4
fontSize: 16 fontSize: 198
forceTextureCase: -2 forceTextureCase: -1
characterSpacing: 0 characterSpacing: 0
characterPadding: 1 characterPadding: 1
includeFontData: 1 includeFontData: 1

View File

@ -0,0 +1,39 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!84 &8400000
RenderTexture:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: CameraLayer
m_ImageContentsHash:
serializedVersion: 2
Hash: 00000000000000000000000000000000
m_IsAlphaChannelOptional: 0
serializedVersion: 6
m_Width: 1920
m_Height: 1080
m_AntiAliasing: 4
m_MipCount: -1
m_DepthStencilFormat: 0
m_ColorFormat: 8
m_MipMap: 0
m_GenerateMips: 1
m_SRGB: 0
m_UseDynamicScale: 0
m_UseDynamicScaleExplicit: 0
m_BindMS: 0
m_EnableCompatibleFormat: 1
m_EnableRandomWrite: 0
m_TextureSettings:
serializedVersion: 2
m_FilterMode: 1
m_Aniso: 0
m_MipBias: 0
m_WrapU: 1
m_WrapV: 1
m_WrapW: 1
m_Dimension: 2
m_VolumeDepth: 1
m_ShadowSamplingMode: 2

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 94acf02510cfb02449715e586b712709
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 8400000
userData:
assetBundleName:
assetBundleVariant:

BIN
Assets/CoachingRoom.unity (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 83dc4faec09f89a4ca317b09af0f14c2
DefaultImporter:
externalObjects: {}
userData:
assetBundleName: futuristicroom10
assetBundleVariant: 12

View File

@ -25,6 +25,8 @@ Material:
m_Parent: {fileID: 0} m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0 m_ModifiedSerializedProperties: 0
m_ValidKeywords: m_ValidKeywords:
- _ALPHAPREMULTIPLY_ON
- _SPECULAR_SETUP
- _SURFACE_TYPE_TRANSPARENT - _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords: [] m_InvalidKeywords: []
m_LightmapFlags: 4 m_LightmapFlags: 4
@ -102,7 +104,7 @@ Material:
- _AddPrecomputedVelocity: 0 - _AddPrecomputedVelocity: 0
- _AlphaClip: 0 - _AlphaClip: 0
- _AlphaToMask: 0 - _AlphaToMask: 0
- _Blend: 1 - _Blend: 0
- _BlendModePreserveSpecular: 1 - _BlendModePreserveSpecular: 1
- _BumpScale: 1 - _BumpScale: 1
- _ClearCoatMask: 0 - _ClearCoatMask: 0
@ -130,7 +132,7 @@ Material:
- _SrcBlendAlpha: 1 - _SrcBlendAlpha: 1
- _Surface: 1 - _Surface: 1
- _UVSec: 0 - _UVSec: 0
- _WorkflowMode: 1 - _WorkflowMode: 0
- _ZWrite: 0 - _ZWrite: 0
m_Colors: m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 0} - _BaseColor: {r: 1, g: 1, b: 1, a: 0}

View File

@ -1,9 +1,16 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 87ea2079a91b3e74f84b5cb700abb4d6 guid: 87ea2079a91b3e74f84b5cb700abb4d6
AssetOrigin:
serializedVersion: 1
productId: 199010
packageName: Dark Theme UI
packageVersion: 1.1
assetPath: Assets/Dark UI/Free/128.png
uploadId: 700413
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 13
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -20,10 +27,12 @@ TextureImporter:
externalNormalMap: 0 externalNormalMap: 0
heightScale: 0.25 heightScale: 0.25
normalMapFilter: 0 normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0 isReadable: 0
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,9 +41,9 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: -1 filterMode: 0
aniso: -1 aniso: 1
mipBias: -100 mipBias: 0
wrapU: 1 wrapU: 1
wrapV: 1 wrapV: 1
wrapW: 1 wrapW: 1
@ -62,8 +71,10 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 4
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 2048 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
@ -73,12 +84,40 @@ TextureImporter:
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
overridden: 0 overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
outline: [] outline: []
customData:
physicsShape: [] physicsShape: []
bones: [] bones: []
spriteID: 5e97eb03825dee720800000000000000 spriteID: 5e97eb03825dee720800000000000000
@ -88,16 +127,11 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
spritePackingTag: spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData: userData:
assetBundleName: assetBundleName:
assetBundleVariant: assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 199010
packageName: Dark Theme UI
packageVersion: 1.1
assetPath: Assets/Dark UI/Free/128.png
uploadId: 700413

View File

@ -1,29 +1,28 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using UnityEngine; using UnityEngine;
using UnityEngine.Android; using UnityEngine.Android;
using static ENMenu; using static ENMenu;
public class EN : MonoBehaviour public class EN : MonoBehaviour
{ {
//[System.Serializable]
//public class User
//{
// public int id;
// public string name;
// public string job;
// public GameObject character;
//}
public static EN instance; public static EN instance;
public List<User> users = new List<User>(); public List<User> users = new List<User>();
public User SelectedUser; public User SelectedUser;
public User Me; public User Me;
// ✅ Lists for meetings and spaces
public List<Meeting> meetings = new List<Meeting>();
public List<UserSpace> spaces = new List<UserSpace>();
public string selectedSpaceUrl;
public string selectedSpaceId;
public GameObject Error;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Awake() void Awake()
{ {
if (EN.instance) if (EN.instance)
@ -33,18 +32,63 @@ public class EN : MonoBehaviour
} }
DontDestroyOnLoad(this.gameObject); DontDestroyOnLoad(this.gameObject);
instance = this; instance = this;
} }
public void Start() public void Start()
{ {
if (!Permission.HasUserAuthorizedPermission(Permission.Microphone)) if (!Permission.HasUserAuthorizedPermission(Permission.Microphone))
{ {
Permission.RequestUserPermission(Permission.Microphone); Permission.RequestUserPermission(Permission.Microphone);
} }
// StartCoroutine(webservice.instance. LoginRequest(OnLoginSuccess));
// Optionally preload meetings and spaces if Me is available
// StartCoroutine(webservice.instance.GetUserMeetings(OnMeetingsLoaded));
// StartCoroutine(webservice.instance.GetSpaces(OnSpacesLoaded));
}
// ✅ Callback to populate meetings list
public void OnMeetingsLoaded(MeetingResponse response)
{
if (response != null && response.meetings != null)
{
meetings = response.meetings;
Debug.Log("Meetings loaded: " + meetings.Count);
}
else
{
showError("خطا", "بارگذاری جلسات با خطا مواجه شد");
}
}
// ✅ Callback to populate spaces list
public void OnSpacesLoaded(SpaceResponse response)
{
if (response != null && response.spaces != null)
{
spaces = response.spaces;
if (spaces != null && spaces.Count > 0 && spaces[0].assetBundleRoomId != null)
{
selectedSpaceUrl = spaces[0].assetBundleRoomId.url;
}
else
{
Debug.LogWarning("No available spaces or assetBundleRoomId is null.");
selectedSpaceUrl = null; // or some fallback
}
Debug.Log("Spaces loaded: " + spaces.Count);
}
else
{
showError("خطا", "بارگذاری فضاها با خطا مواجه شد");
}
} }
public GameObject Error;
public void showError(string title, string description) public void showError(string title, string description)
{ {
@ -56,17 +100,12 @@ public class EN : MonoBehaviour
Error.transform.Find("error/description").GetComponentInChildren<RTLTMPro.RTLTextMeshPro>().text = description; Error.transform.Find("error/description").GetComponentInChildren<RTLTMPro.RTLTextMeshPro>().text = description;
Invoke("hideError", 6); Invoke("hideError", 6);
} }
public void hideError() public void hideError()
{ {
Error.SetActive(false); Error.SetActive(false);
} }
// Update is called once per frame
void Update()
{
}
internal void Print(string j) internal void Print(string j)
{ {
print(j); print(j);

View File

@ -7,15 +7,19 @@ using Siccity.GLTFUtility;
using BNG; using BNG;
using Fusion.XR.Host.Rig; using Fusion.XR.Host.Rig;
using Fusion; using Fusion;
using System.Threading;
using System.Linq;
public class ENMenu : NetworkBehaviour public class ENMenu : NetworkBehaviour
{ {
SceneDownloader SceneDownloader;
public GameObject itemPr; public GameObject itemPr;
public Transform menu; public Transform menu;
public List<GameObject> items = new List<GameObject>(); public List<GameObject> items = new List<GameObject>();
public GameObject tablet; public GameObject tablet;
public UnityEngine.UI.Button button; public UnityEngine.UI.Button button;
public UnityEngine.UI.Button buttonLoadSpace;
public GameObject loading; public GameObject loading;
public GameObject LoginMenu; public GameObject LoginMenu;
public GameObject Rooms; public GameObject Rooms;
@ -36,9 +40,11 @@ public class ENMenu : NetworkBehaviour
void Start() void Start()
{ {
SceneDownloader=GetComponent<SceneDownloader>();
Invoke("PlayWelcome", delay); Invoke("PlayWelcome", delay);
EN.instance.SelectedUser = EN.instance.users[0]; EN.instance.SelectedUser = EN.instance.users.Count > 0 ? EN.instance.users[0] : null;
string user = PlayerPrefs.GetString("user", ""); string user = PlayerPrefs.GetString("user", "");
if (!string.IsNullOrEmpty(user)) if (!string.IsNullOrEmpty(user))
@ -49,8 +55,8 @@ public class ENMenu : NetworkBehaviour
var data = new Dictionary<string, string> var data = new Dictionary<string, string>
{ {
{ "password", code.text.ToString() }, { "password", code.text },
{ "mobile_number", phone.text.ToString() } { "mobile_number", phone.text }
}; };
StartCoroutine(webservice.instance.LoginRequest(data, OnLoginSuccess)); StartCoroutine(webservice.instance.LoginRequest(data, OnLoginSuccess));
@ -77,24 +83,24 @@ public class ENMenu : NetworkBehaviour
public void Login() public void Login()
{ {
LoginMenu.gameObject.SetActive(false); LoginMenu.SetActive(false);
loading.gameObject.SetActive(true); loading.SetActive(true);
var data = new Dictionary<string, string> var data = new Dictionary<string, string>
{ {
{ "password", code.text.ToString() }, { "password", code.text },
{ "mobile_number", phone.text.ToString() } { "mobile_number", phone.text }
}; };
PlayerPrefs.SetString("mobile_number", phone.text.ToString()); PlayerPrefs.SetString("mobile_number", phone.text);
PlayerPrefs.SetString("password", code.text.ToString()); PlayerPrefs.SetString("password", code.text);
StartCoroutine(webservice.instance.LoginRequest(data, OnLoginSuccess)); StartCoroutine(webservice.instance.LoginRequest(data, OnLoginSuccess));
} }
void OnLoginSuccess(User response) void OnLoginSuccess(User response)
{ {
loading.gameObject.SetActive(false); loading.SetActive(false);
if (response != null) if (response != null)
{ {
@ -106,17 +112,24 @@ public class ENMenu : NetworkBehaviour
GuestButton.SetActive(false); GuestButton.SetActive(false);
ExitButton.SetActive(true); ExitButton.SetActive(true);
EnterButton.SetActive(true); EnterButton.SetActive(true);
Debug.Log("Login successful"); Debug.Log("Login successful");
// Call GetInfo after successful login // After login success, load user info
StartCoroutine(webservice.instance.GetInfoRequest(OnGetInfoSuccess)); StartCoroutine(webservice.instance.GetInfoRequest(OnGetInfoSuccess));
// Also, load meetings and spaces
StartCoroutine(webservice.instance.GetUserMeetings(EN.instance.OnMeetingsLoaded));
StartCoroutine(webservice.instance.GetSpaces(EN.instance.OnSpacesLoaded));
} }
else else
{ {
switch (webservice.instance.lastErrorType) switch (webservice.instance.lastErrorType)
{ {
case ErrorType.Authentication: case ErrorType.Authentication:
LoginMenu.gameObject.SetActive(true); LoginMenu.SetActive(true);
EN.instance.showError("خطا در ورود", webservice.instance.lastErrorResponse?.message ?? "نام کاربری یا رمز عبور اشتباه است"); EN.instance.showError("خطا در ورود", webservice.instance.lastErrorResponse?.message ?? "نام کاربری یا رمز عبور اشتباه است");
break; break;
case ErrorType.Network: case ErrorType.Network:
@ -136,7 +149,6 @@ public class ENMenu : NetworkBehaviour
{ {
if (response != null) if (response != null)
{ {
// Update user information with GetInfo response
EN.instance.Me.characterUrl = response.customer.profile_glb; EN.instance.Me.characterUrl = response.customer.profile_glb;
EN.instance.Me.character = playerPref; EN.instance.Me.character = playerPref;
Debug.Log("GetInfo successful - Character URL: " + response.customer.profile_glb); Debug.Log("GetInfo successful - Character URL: " + response.customer.profile_glb);
@ -160,11 +172,9 @@ public class ENMenu : NetworkBehaviour
if (clip != null) if (clip != null)
{ {
GameObject audioObject = new GameObject("AudioSource_" + soundName); GameObject audioObject = new GameObject("AudioSource_" + soundName);
AudioSource audioSource = audioObject.AddComponent<AudioSource>(); AudioSource audioSource = audioObject.AddComponent<AudioSource>();
audioSource.volume = volume; audioSource.volume = volume;
audioSource.spatialBlend = 0; audioSource.spatialBlend = 0;
audioSource.clip = clip; audioSource.clip = clip;
audioSource.Play(); audioSource.Play();
@ -183,20 +193,26 @@ public class ENMenu : NetworkBehaviour
public void Select(GameObject i) public void Select(GameObject i)
{ {
EN.instance.SelectedUser = EN.instance.users[int.Parse(i.name)]; if (int.TryParse(i.name, out int index) && index >= 0 && index < EN.instance.users.Count)
{
EN.instance.SelectedUser = EN.instance.users[index];
}
} }
public void SelectEnviroment(GameObject i) public void SelectEnvironment(GameObject i)
{ {
Application.LoadLevel(int.Parse(i.name) + 1); if (int.TryParse(i.name, out int index))
{
Application.LoadLevel(index + 1);
}
} }
void Update() void Update()
{ {
tablet.gameObject.SetActive(!EN.instance.Error.gameObject.activeSelf); tablet.SetActive(!EN.instance.Error.activeSelf);
button.interactable = phone.text.Length > 10 && code.text.Length > 3; button.interactable = phone.text.Length > 10 && code.text.Length > 3;
if (Application.isEditor) if (Application.isEditor)
tablet.transform.parent = null; tablet.transform.parent = null;
} }
} }

8
Assets/Editor.meta Normal file
View File

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

View File

@ -0,0 +1,31 @@
using UnityEditor;
using UnityEngine;
public class AssetBundleCreator
{
[MenuItem("Tools/Build AssetBundles/Android")]
public static void BuildAndroidAssetBundles()
{
string outputPath = "AssetBundles/Android";
if (!System.IO.Directory.Exists(outputPath))
{
System.IO.Directory.CreateDirectory(outputPath);
}
// Recommended: Force include shaders to prevent pink materials
BuildAssetBundleOptions options =
BuildAssetBundleOptions.StrictMode | // Ensures strict dependency checking
BuildAssetBundleOptions.ForceRebuildAssetBundle; // Ensures a clean rebuild
// Build the AssetBundles
BuildPipeline.BuildAssetBundles(
outputPath,
options,
BuildTarget.Android
);
Debug.Log("✅ Android AssetBundles built at: " + outputPath);
AssetDatabase.Refresh(); // Refresh Unity's asset database
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 29fd4556041338043b18d2872ca1afc9

View File

@ -69,7 +69,9 @@ MonoBehaviour:
- rid: 420368092579495945 - rid: 420368092579495945
- rid: 420368092579495946 - rid: 420368092579495946
- rid: 420368092579495948 - rid: 420368092579495948
- rid: 7351829830484885594
- rid: 420368092579495952 - rid: 420368092579495952
- rid: 7351829830484885598
- rid: 420368092579495955 - rid: 420368092579495955
m_AssetVersion: 8 m_AssetVersion: 8
m_ObsoleteDefaultVolumeProfile: {fileID: 0} m_ObsoleteDefaultVolumeProfile: {fileID: 0}

View File

@ -27,7 +27,7 @@ public class InternetChecker : MonoBehaviour
{ {
UnityWebRequest request = new UnityWebRequest("https://www.google.com"); UnityWebRequest request = new UnityWebRequest("https://www.google.com");
request.method = UnityWebRequest.kHttpVerbHEAD; request.method = UnityWebRequest.kHttpVerbHEAD;
print("ERROR"); //print("ERROR");
yield return request.SendWebRequest(); yield return request.SendWebRequest();
#if UNITY_2020_1_OR_NEWER #if UNITY_2020_1_OR_NEWER

View File

@ -0,0 +1,34 @@
%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: CameraLayer
m_Shader: {fileID: 10721, 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:
- _MainTex:
m_Texture: {fileID: 8400000, guid: 94acf02510cfb02449715e586b712709, type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats: []
m_Colors: []
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

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

View File

@ -2,156 +2,138 @@
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000 --- !u!21 &2100000
Material: Material:
serializedVersion: 6 serializedVersion: 8
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: PDFPlaneMaterial m_Name: PDFPlaneMaterial
m_Shader: {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} m_Shader: {fileID: 4800000, guid: 8d2bb70cbf9db8d4da26e15b26e74248, type: 3}
m_ShaderKeywords: m_Parent: {fileID: 0}
m_LightmapFlags: 5 m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _EMISSION
- _GLOSSINESS_FROM_BASE_ALPHA
- _SPECULAR_COLOR
m_InvalidKeywords: []
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1 m_CustomRenderQueue: -1
stringTagMap: {} stringTagMap:
RenderType: Opaque
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties: m_SavedProperties:
serializedVersion: 2 serializedVersion: 3
m_TexEnvs: m_TexEnvs:
data: - _BaseMap:
first:
name: _MainTex
second:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
data: - _BumpMap:
first:
name: _BumpMap
second:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
data: - _DetailAlbedoMap:
first:
name: _DetailNormalMap
second:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
data: - _DetailMask:
first:
name: _ParallaxMap
second:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
data: - _DetailNormalMap:
first:
name: _OcclusionMap
second:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
data: - _EmissionMap:
first:
name: _EmissionMap
second:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
data: - _MainTex:
first:
name: _DetailMask
second:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
data: - _MetallicGlossMap:
first:
name: _DetailAlbedoMap
second:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
data: - _OcclusionMap:
first:
name: _MetallicGlossMap
second:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
data: - _ParallaxMap:
first:
name: _SpecGlossMap
second:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} 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: m_Floats:
data: - _AddPrecomputedVelocity: 0
first: - _AlphaClip: 0
name: _SrcBlend - _AlphaToMask: 0
second: 1 - _Blend: 0
data: - _BlendModePreserveSpecular: 1
first: - _BumpScale: 1
name: _DstBlend - _Cull: 2
second: 0 - _Cutoff: 0.5
data: - _DetailNormalMapScale: 1
first: - _DstBlend: 0
name: _Cutoff - _DstBlendAlpha: 0
second: 0.5 - _EmissionScaleUI: 0
data: - _Glossiness: 0.5
first: - _GlossinessSource: 0
name: _Parallax - _Metallic: 0
second: 0.02 - _Mode: 0
data: - _OcclusionStrength: 1
first: - _Parallax: 0.02
name: _ZWrite - _QueueOffset: 0
second: 1 - _ReceiveShadows: 1
data: - _Shininess: 0
first: - _Smoothness: 0.5
name: _Glossiness - _SmoothnessSource: 1
second: 0.5 - _SpecSource: 0
data: - _SpecularHighlights: 1
first: - _SrcBlend: 1
name: _BumpScale - _SrcBlendAlpha: 1
second: 1 - _Surface: 0
data: - _UVSec: 0
first: - _ZWrite: 1
name: _OcclusionStrength
second: 1
data:
first:
name: _DetailNormalMapScale
second: 1
data:
first:
name: _UVSec
second: 0
data:
first:
name: _Mode
second: 0
data:
first:
name: _Metallic
second: 0
data:
first:
name: _EmissionScaleUI
second: 0
m_Colors: m_Colors:
data: - _BaseColor: {r: 1, g: 1, b: 1, a: 1}
first: - _Color: {r: 1, g: 1, b: 1, a: 1}
name: _EmissionColor - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
second: {r: 0, g: 0, b: 0, a: 1} - _EmissionColorUI: {r: 1, g: 1, b: 1, a: 1}
data: - _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
first: m_BuildTextureStacks: []
name: _Color m_AllowLocking: 1
second: {r: 1, g: 1, b: 1, a: 1} --- !u!114 &8218264903885036047
data: MonoBehaviour:
first: m_ObjectHideFlags: 11
name: _SpecColor m_CorrespondingSourceObject: {fileID: 0}
second: {r: 0.2, g: 0.2, b: 0.2, a: 1} m_PrefabInstance: {fileID: 0}
data: m_PrefabAsset: {fileID: 0}
first: m_GameObject: {fileID: 0}
name: _EmissionColorUI m_Enabled: 1
second: {r: 1, g: 1, b: 1, a: 1} m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 9

View File

@ -18,7 +18,7 @@ MonoBehaviour:
AppIdVoice: 1fba3dfc-beb8-4854-8cf3-f3e90d096822 AppIdVoice: 1fba3dfc-beb8-4854-8cf3-f3e90d096822
AppVersion: AppVersion:
UseNameServer: 1 UseNameServer: 1
FixedRegion: in FixedRegion: tr
Server: Server:
Port: 0 Port: 0
ProxyServer: ProxyServer:

View File

@ -3,15 +3,17 @@ using Fusion.Sockets;
using Fusion.XR.Host.Rig; using Fusion.XR.Host.Rig;
using Photon.Realtime; using Photon.Realtime;
using System; using System;
using System.Linq;
using System.Collections.Generic; using System.Collections.Generic;
using System.Security.Policy; using System.Security.Policy;
using System.Threading.Tasks; using System.Threading.Tasks;
using UnityEngine; using UnityEngine;
using UnityEngine.Events; using UnityEngine.Events;
using UnityEngine.Rendering;
using UnityEngine.SceneManagement; using UnityEngine.SceneManagement;
using UnityEngine.UI; using UnityEngine.UI;
using static Unity.Collections.Unicode; using static Unity.Collections.Unicode;
using System.Text.RegularExpressions;
namespace Fusion.Addons.ConnectionManagerAddon namespace Fusion.Addons.ConnectionManagerAddon
{ {
/** /**
@ -22,6 +24,7 @@ namespace Fusion.Addons.ConnectionManagerAddon
**/ **/
public class ConnectionManager : MonoBehaviour, INetworkRunnerCallbacks public class ConnectionManager : MonoBehaviour, INetworkRunnerCallbacks
{ {
//public AssetBundleDownloaderAndLoader assetBundleDownloaderAndLoader;
public GameObject[] chairs; public GameObject[] chairs;
public bool presentation; public bool presentation;
public GameObject Loading; public GameObject Loading;
@ -38,6 +41,26 @@ namespace Fusion.Addons.ConnectionManagerAddon
public string propertyName; public string propertyName;
public string value; public string value;
} }
public void AssignMapReferences()
{
if (usersPlace.Length == 0 || chairs.Length == 0)
Debug.LogWarning("[ConnectionManager] usersPlace or chairs not found after AssetBundle load.");
else
Debug.Log("[ConnectionManager] usersPlace and chairs assigned.");
roomName=EN.instance.selectedSpaceId;
}
int ExtractNumber(string name)
{
var match = Regex.Match(name, @"\d+");
return match.Success ? int.Parse(match.Value) : int.MaxValue;
}
public void Update() public void Update()
{ {
if (Application.loadedLevelName.Equals("Lobby")) if (Application.loadedLevelName.Equals("Lobby"))
@ -46,16 +69,19 @@ namespace Fusion.Addons.ConnectionManagerAddon
{ {
FusionRig.instance.transform.position = usersPlace[0].transform.position; FusionRig.instance.transform.position = usersPlace[0].transform.position;
} }
if (runner.IsConnectedToServer&&presentation&&!PlayerTeleport.instance.chair&&runner.LocalPlayer.PlayerId>1) if (runner.IsConnectedToServer&&presentation&&!PlayerTeleport.instance.chair&&runner.LocalPlayer.PlayerId>=0)
{ {
chairs[runner.LocalPlayer.PlayerId].GetComponent<Chair>().SetSit(); chairs[runner.LocalPlayer.PlayerId].GetComponent<Chair>().SetSit();
} }
Loading.gameObject.SetActive(!runner||! runner.IsConnectedToServer); Loading.gameObject.SetActive(!runner||! runner.IsConnectedToServer);
} }
[Header("Room configuration")] [Header("Room configuration")]
public GameMode gameMode = GameMode.Shared; public GameMode gameMode = GameMode.Shared;
public string roomName = "SampleFusion"; [SerializeField]private string roomName = "SampleFusion";
public bool connectOnStart = true; public bool connectOnStart = true;
[Tooltip("Set it to 0 to use the DefaultPlayers value, from the Global NetworkProjectConfig (simulation section)")] [Tooltip("Set it to 0 to use the DefaultPlayers value, from the Global NetworkProjectConfig (simulation section)")]
public int playerCount = 0; public int playerCount = 0;
@ -89,13 +115,16 @@ namespace Fusion.Addons.ConnectionManagerAddon
private void Awake() private void Awake()
{ {
//assetBundleDownloaderAndLoader=GetComponent<AssetBundleDownloaderAndLoader>();
if (!EN.instance) if (!EN.instance)
{ {
//Application.LoadLevel(0); Application.LoadLevel(0);
Destroy(gameObject); Destroy(gameObject);
return; return;
} }
AssignMapReferences();
// Check if a runner exist on the same game object // Check if a runner exist on the same game object
if (runner == null) runner = GetComponent<NetworkRunner>(); if (runner == null) runner = GetComponent<NetworkRunner>();
instance = this; instance = this;
@ -115,7 +144,7 @@ namespace Fusion.Addons.ConnectionManagerAddon
private async void Start() private async void Start()
{ {
chairs = GameObject.FindGameObjectsWithTag("chair"); //chairs = GameObject.FindGameObjectsWithTag("chair");
//Invoke("createChairs", 5); //Invoke("createChairs", 5);
PlaySound("intro"); PlaySound("intro");
// Launch the connection at start // Launch the connection at start

BIN
Assets/Prefabs/1.prefab (Stored with Git LFS) Normal file

Binary file not shown.

View File

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

BIN
Assets/Prefabs/X_Room_03_04-03-18-002 - Copy.glb (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,28 @@
fileFormatVersion: 2
guid: ec149ee6d067e1c49a85d7381baeaf96
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 715df9372183c47e389bb6e19fbc3b52, type: 3}
editorImportSettings:
generateSecondaryUVSet: 0
importSettings:
nodeNameMethod: 1
animationMethod: 2
generateMipMaps: 1
texturesReadable: 0
defaultMinFilterMode: 9729
defaultMagFilterMode: 9729
anisotropicFilterLevel: 1
instantiationSettings:
mask: -1
layer: 0
skinUpdateWhenOffscreen: 1
lightIntensityFactor: 1
sceneObjectCreation: 2
assetDependencies: []
reportItems: []

View File

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

Binary file not shown.

View File

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: e70703469e9a9f5478232cfe73e395ce
labels:
- FusionPrefab
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,18 @@
%YAML 1.1 %YAML 1.1
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!114 &-4991990423166999442
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: 9
--- !u!21 &2100000 --- !u!21 &2100000
Material: Material:
serializedVersion: 8 serializedVersion: 8
@ -8,7 +21,9 @@ Material:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: Blocks m_Name: Blocks
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: m_ValidKeywords:
- _EMISSION - _EMISSION
- _NORMALMAP - _NORMALMAP
@ -17,11 +32,18 @@ Material:
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0 m_DoubleSidedGI: 0
m_CustomRenderQueue: -1 m_CustomRenderQueue: -1
stringTagMap: {} stringTagMap:
disabledShaderPasses: [] RenderType: Opaque
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties: m_SavedProperties:
serializedVersion: 3 serializedVersion: 3
m_TexEnvs: m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 2800000, guid: d1118dda59970a2449ee890fa247c4c5, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap: - _BumpMap:
m_Texture: {fileID: 2800000, guid: c5c221ed57a3bf6488f8eba0db28a004, type: 3} m_Texture: {fileID: 2800000, guid: c5c221ed57a3bf6488f8eba0db28a004, type: 3}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
@ -43,7 +65,7 @@ Material:
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _MainTex: - _MainTex:
m_Texture: {fileID: 2800000, guid: d1118dda59970a2449ee890fa247c4c5, type: 3} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _MetallicGlossMap: - _MetallicGlossMap:
@ -58,12 +80,39 @@ Material:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} 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_Ints: []
m_Floats: m_Floats:
- _AddPrecomputedVelocity: 0
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1 - _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5 - _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1 - _DetailNormalMapScale: 1
- _DstBlend: 0 - _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1
- _GlossMapScale: 1 - _GlossMapScale: 1
- _Glossiness: 0 - _Glossiness: 0
- _GlossyReflections: 1 - _GlossyReflections: 1
@ -71,12 +120,21 @@ Material:
- _Mode: 0 - _Mode: 0
- _OcclusionStrength: 1 - _OcclusionStrength: 1
- _Parallax: 0.02 - _Parallax: 0.02
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0
- _SmoothnessTextureChannel: 0 - _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1 - _SpecularHighlights: 1
- _SrcBlend: 1 - _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 0
- _UVSec: 0 - _UVSec: 0
- _WorkflowMode: 1
- _ZWrite: 1 - _ZWrite: 1
m_Colors: m_Colors:
- _Color: {r: 1, g: 0.6, b: 0, a: 1} - _BaseColor: {r: 1, g: 0.6, b: 0, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1} - _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: [] m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@ -8,7 +8,9 @@ Material:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: GridFloor m_Name: GridFloor
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: m_ValidKeywords:
- _EMISSION - _EMISSION
- _NORMALMAP - _NORMALMAP
@ -17,18 +19,25 @@ Material:
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0 m_DoubleSidedGI: 0
m_CustomRenderQueue: -1 m_CustomRenderQueue: -1
stringTagMap: {} stringTagMap:
disabledShaderPasses: [] RenderType: Opaque
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties: m_SavedProperties:
serializedVersion: 3 serializedVersion: 3
m_TexEnvs: m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 2800000, guid: d1118dda59970a2449ee890fa247c4c5, type: 3}
m_Scale: {x: 5, y: 5}
m_Offset: {x: 0, y: 0}
- _BumpMap: - _BumpMap:
m_Texture: {fileID: 2800000, guid: c5c221ed57a3bf6488f8eba0db28a004, type: 3} m_Texture: {fileID: 2800000, guid: c5c221ed57a3bf6488f8eba0db28a004, type: 3}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap: - _DetailAlbedoMap:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 0.2, y: 0.2}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _DetailMask: - _DetailMask:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
@ -43,8 +52,8 @@ Material:
m_Scale: {x: 5, y: 5} m_Scale: {x: 5, y: 5}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _MainTex: - _MainTex:
m_Texture: {fileID: 2800000, guid: d1118dda59970a2449ee890fa247c4c5, type: 3} m_Texture: {fileID: 0}
m_Scale: {x: 5, y: 5} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _MetallicGlossMap: - _MetallicGlossMap:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
@ -58,12 +67,39 @@ Material:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} 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_Ints: []
m_Floats: m_Floats:
- _AddPrecomputedVelocity: 0
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1 - _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5 - _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1 - _DetailNormalMapScale: 1
- _DstBlend: 0 - _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1
- _GlossMapScale: 1 - _GlossMapScale: 1
- _Glossiness: 0 - _Glossiness: 0
- _GlossyReflections: 1 - _GlossyReflections: 1
@ -71,12 +107,34 @@ Material:
- _Mode: 0 - _Mode: 0
- _OcclusionStrength: 1 - _OcclusionStrength: 1
- _Parallax: 0.02 - _Parallax: 0.02
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0
- _SmoothnessTextureChannel: 0 - _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1 - _SpecularHighlights: 1
- _SrcBlend: 1 - _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 0
- _UVSec: 0 - _UVSec: 0
- _WorkflowMode: 1
- _ZWrite: 1 - _ZWrite: 1
m_Colors: m_Colors:
- _Color: {r: 0.27058825, g: 0.65882355, b: 0.8784314, a: 1} - _BaseColor: {r: 0.2705882, g: 0.65882355, b: 0.8784314, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1} - _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: [] m_BuildTextureStacks: []
m_AllowLocking: 1
--- !u!114 &8876155319544260431
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: 9

View File

@ -1,5 +1,18 @@
%YAML 1.1 %YAML 1.1
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!114 &-4619473865430559386
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: 9
--- !u!21 &2100000 --- !u!21 &2100000
Material: Material:
serializedVersion: 8 serializedVersion: 8
@ -8,25 +21,34 @@ Material:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: Ground m_Name: Ground
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: [] m_ValidKeywords: []
m_InvalidKeywords: [] m_InvalidKeywords: []
m_LightmapFlags: 4 m_LightmapFlags: 4
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0 m_DoubleSidedGI: 0
m_CustomRenderQueue: -1 m_CustomRenderQueue: -1
stringTagMap: {} stringTagMap:
disabledShaderPasses: [] RenderType: Opaque
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties: m_SavedProperties:
serializedVersion: 3 serializedVersion: 3
m_TexEnvs: m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 20, y: 20}
m_Offset: {x: 0, y: 0}
- _BumpMap: - _BumpMap:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap: - _DetailAlbedoMap:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 0.05, y: 0.05}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _DetailMask: - _DetailMask:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
@ -42,7 +64,7 @@ Material:
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _MainTex: - _MainTex:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 20, y: 20} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _MetallicGlossMap: - _MetallicGlossMap:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
@ -56,12 +78,39 @@ Material:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} 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_Ints: []
m_Floats: m_Floats:
- _AddPrecomputedVelocity: 0
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1 - _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5 - _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1 - _DetailNormalMapScale: 1
- _DstBlend: 0 - _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1
- _GlossMapScale: 1 - _GlossMapScale: 1
- _Glossiness: 0 - _Glossiness: 0
- _GlossyReflections: 1 - _GlossyReflections: 1
@ -69,12 +118,21 @@ Material:
- _Mode: 0 - _Mode: 0
- _OcclusionStrength: 1 - _OcclusionStrength: 1
- _Parallax: 0.02 - _Parallax: 0.02
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0
- _SmoothnessTextureChannel: 0 - _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1 - _SpecularHighlights: 1
- _SrcBlend: 1 - _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 0
- _UVSec: 0 - _UVSec: 0
- _WorkflowMode: 1
- _ZWrite: 1 - _ZWrite: 1
m_Colors: m_Colors:
- _Color: {r: 0.50980395, g: 0.627451, b: 0.6901961, a: 1} - _BaseColor: {r: 0.5098039, g: 0.62745106, b: 0.6901961, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1} - _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: [] m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@ -8,15 +8,21 @@ Material:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: GrabHandle m_Name: GrabHandle
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_Shader: {fileID: -6465566751694194690, guid: 0927d29e476ce5843b1f7d2a96943c51,
type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: [] m_ValidKeywords: []
m_InvalidKeywords: [] m_InvalidKeywords: []
m_LightmapFlags: 4 m_LightmapFlags: 4
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0 m_DoubleSidedGI: 0
m_CustomRenderQueue: -1 m_CustomRenderQueue: -1
stringTagMap: {} stringTagMap:
disabledShaderPasses: [] RenderType: Opaque
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties: m_SavedProperties:
serializedVersion: 3 serializedVersion: 3
m_TexEnvs: m_TexEnvs:
@ -44,10 +50,18 @@ Material:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _MainTexture:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap: - _MetallicGlossMap:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _NormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap: - _OcclusionMap:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
@ -56,9 +70,38 @@ Material:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} 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_Ints: []
m_Floats: m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _BUILTIN_AlphaClip: 0
- _BUILTIN_Blend: 0
- _BUILTIN_CullMode: 2
- _BUILTIN_DstBlend: 0
- _BUILTIN_QueueControl: -1
- _BUILTIN_QueueOffset: 0
- _BUILTIN_SrcBlend: 1
- _BUILTIN_Surface: 0
- _BUILTIN_ZTest: 4
- _BUILTIN_ZWrite: 1
- _BUILTIN_ZWriteControl: 0
- _Blend: 0
- _BlendModePreserveSpecular: 0
- _BumpScale: 1 - _BumpScale: 1
- _CastShadows: 1
- _Cull: 2
- _Cutoff: 0.5 - _Cutoff: 0.5
- _DetailNormalMapScale: 1 - _DetailNormalMapScale: 1
- _DstBlend: 0 - _DstBlend: 0
@ -67,14 +110,55 @@ Material:
- _GlossyReflections: 1 - _GlossyReflections: 1
- _Metallic: 0 - _Metallic: 0
- _Mode: 0 - _Mode: 0
- _NormalStrength: 0.2
- _OcclusionStrength: 1 - _OcclusionStrength: 1
- _Parallax: 0.02 - _Parallax: 0.02
- _QueueControl: 0
- _QueueOffset: 0
- _ReceiveShadows: 1
- _RimPower: 5
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0 - _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1 - _SpecularHighlights: 1
- _SrcBlend: 1 - _SrcBlend: 1
- _Surface: 0
- _UVSec: 0 - _UVSec: 0
- _WorkflowMode: 1
- _ZTest: 4
- _ZWrite: 1 - _ZWrite: 1
- _ZWriteControl: 0
m_Colors: m_Colors:
- _BaseColor: {r: 0.44339618, g: 0.44339618, b: 0.44339618, a: 0}
- _Color: {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} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _NormalOffset: {r: 0, g: 0, b: 0, a: 0}
- _NormalTiling: {r: 1, g: 1, b: 0, a: 0}
- _RimColor: {r: 1, g: 1, b: 1, a: 0.5803922}
m_BuildTextureStacks: [] m_BuildTextureStacks: []
m_AllowLocking: 1
--- !u!114 &3572587442085198344
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: 639247ca83abc874e893eb93af2b5e44, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 0
--- !u!114 &8779885048964753496
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: 9

View File

@ -1,5 +1,18 @@
%YAML 1.1 %YAML 1.1
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!114 &-4450609276103759250
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: 9
--- !u!21 &2100000 --- !u!21 &2100000
Material: Material:
serializedVersion: 8 serializedVersion: 8
@ -8,20 +21,25 @@ Material:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: ScaleHandle m_Name: ScaleHandle
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_Shader: {fileID: -6465566751694194690, guid: 0927d29e476ce5843b1f7d2a96943c51,
type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: m_ValidKeywords:
- _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
m_InvalidKeywords:
- _ALPHABLEND_ON - _ALPHABLEND_ON
- _GLOSSYREFLECTIONS_OFF - _GLOSSYREFLECTIONS_OFF
- _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
- _SPECULARHIGHLIGHTS_OFF - _SPECULARHIGHLIGHTS_OFF
m_InvalidKeywords: []
m_LightmapFlags: 4 m_LightmapFlags: 4
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0 m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000 m_CustomRenderQueue: -1
stringTagMap: stringTagMap:
RenderType: Transparent RenderType: Opaque
disabledShaderPasses: [] disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties: m_SavedProperties:
serializedVersion: 3 serializedVersion: 3
m_TexEnvs: m_TexEnvs:
@ -53,10 +71,18 @@ Material:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _MainTexture:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap: - _MetallicGlossMap:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- _NormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap: - _OcclusionMap:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
@ -69,34 +95,91 @@ Material:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} 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_Ints: []
m_Floats: m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _BUILTIN_AlphaClip: 0
- _BUILTIN_Blend: 0
- _BUILTIN_CullMode: 2
- _BUILTIN_DstBlend: 0
- _BUILTIN_QueueControl: -1
- _BUILTIN_QueueOffset: 0
- _BUILTIN_SrcBlend: 1
- _BUILTIN_Surface: 0
- _BUILTIN_ZTest: 4
- _BUILTIN_ZWrite: 1
- _BUILTIN_ZWriteControl: 0
- _Blend: 0
- _BlendModePreserveSpecular: 0
- _BumpScale: 1 - _BumpScale: 1
- _CastShadows: 1
- _ColorMask: 15 - _ColorMask: 15
- _Cull: 2
- _Cutoff: 0.5 - _Cutoff: 0.5
- _DetailNormalMapScale: 1 - _DetailNormalMapScale: 1
- _DstBlend: 10 - _DstBlend: 0
- _GlossMapScale: 0 - _GlossMapScale: 0
- _Glossiness: 0 - _Glossiness: 0
- _GlossyReflections: 0 - _GlossyReflections: 0
- _Metallic: 0 - _Metallic: 0
- _Mode: 2 - _Mode: 2
- _NormalStrength: 0.2
- _OcclusionStrength: 1 - _OcclusionStrength: 1
- _Parallax: 0.02 - _Parallax: 0.02
- _QueueControl: 0
- _QueueOffset: 0
- _ReceiveShadows: 1
- _RimPower: 5
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 1 - _SmoothnessTextureChannel: 1
- _SpecularHighlights: 0 - _SpecularHighlights: 0
- _SrcBlend: 5 - _SrcBlend: 1
- _Stencil: 0 - _Stencil: 0
- _StencilComp: 8 - _StencilComp: 8
- _StencilOp: 0 - _StencilOp: 0
- _StencilReadMask: 255 - _StencilReadMask: 255
- _StencilWriteMask: 255 - _StencilWriteMask: 255
- _Strength: 0.2 - _Strength: 0.2
- _Surface: 0
- _UVSec: 0 - _UVSec: 0
- _UseUIAlphaClip: 0 - _UseUIAlphaClip: 0
- _ZWrite: 0 - _WorkflowMode: 1
- _ZTest: 4
- _ZWrite: 1
- _ZWriteControl: 0
m_Colors: m_Colors:
- _BaseColor: {r: 0.44339618, g: 0.44339618, b: 0.44339618, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 0.050980393} - _Color: {r: 1, g: 1, b: 1, a: 0.050980393}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _NormalOffset: {r: 0, g: 0, b: 0, a: 0}
- _NormalTiling: {r: 1, g: 1, b: 0, a: 0}
- _RimColor: {r: 1, g: 1, b: 1, a: 0.5803922}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: [] m_BuildTextureStacks: []
m_AllowLocking: 1
--- !u!114 &5696284256474513518
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: 639247ca83abc874e893eb93af2b5e44, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 0

View File

@ -3,7 +3,7 @@ guid: 30a9256eb7d98ad4188fe103a8e7143b
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 12 serializedVersion: 13
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -20,11 +20,12 @@ TextureImporter:
externalNormalMap: 0 externalNormalMap: 0
heightScale: 0.25 heightScale: 0.25
normalMapFilter: 0 normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0 isReadable: 0
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0 ignoreMipmapLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -33,11 +34,11 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 0
wrapV: 1 wrapV: 0
wrapW: 0 wrapW: 0
nPOTScale: 0 nPOTScale: 0
lightmap: 0 lightmap: 0
@ -63,9 +64,10 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0 cookieLightType: 0
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 4
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 2048 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
@ -75,9 +77,10 @@ TextureImporter:
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
overridden: 0 overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3 - serializedVersion: 4
buildTarget: Standalone buildTarget: Standalone
maxTextureSize: 2048 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
@ -87,9 +90,10 @@ TextureImporter:
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
overridden: 0 overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3 - serializedVersion: 4
buildTarget: Android buildTarget: Android
maxTextureSize: 2048 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
@ -99,9 +103,10 @@ TextureImporter:
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
overridden: 0 overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3 - serializedVersion: 4
buildTarget: Server buildTarget: Server
maxTextureSize: 2048 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
@ -111,12 +116,14 @@ TextureImporter:
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
overridden: 0 overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
outline: [] outline: []
customData:
physicsShape: [] physicsShape: []
bones: [] bones: []
spriteID: 5e97eb03825dee720800000000000000 spriteID: 5e97eb03825dee720800000000000000
@ -126,10 +133,11 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {} nameFileIdTable: {}
spritePackingTag: mipmapLimitGroupName:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData: userData:
assetBundleName: assetBundleName:
assetBundleVariant: assetBundleVariant:

BIN
Assets/Scenes/test.unity (Stored with Git LFS)

Binary file not shown.

View File

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

View File

@ -0,0 +1,103 @@
using System;
using System.Threading.Tasks;
using UnityEngine;
using UnityEngine.Networking;
using Fusion;
public class AssetBundleNetworkDownloader : NetworkBehaviour
{
[Header("Reference")]
public GameObject map; // Where to spawn downloaded content
[Networked, OnChangedRender(nameof(OnUrlChanged))]
private NetworkString<_512> BundleUrl { get; set; }
[NonSerialized] public bool serverDownloaded = false;
private string _previousUrl = null;
public override void Spawned()
{
Debug.Log($"[AssetBundleDownloader] Spawned for {Object.InputAuthority}");
if (Object.HasInputAuthority)
{
string url = EN.instance.mapUrl;
if (!string.IsNullOrEmpty(url))
{
Debug.Log($"[AssetBundleDownloader] Setting BundleUrl to {url}");
BundleUrl = url;
}
else
{
Debug.LogWarning("[AssetBundleDownloader] Empty mapUrl in EN.instance");
}
}
else
{
// Late joiner: use already set BundleUrl
if (!string.IsNullOrEmpty(BundleUrl.ToString()))
{
_previousUrl = BundleUrl.ToString();
Debug.Log($"[AssetBundleDownloader] Late joiner loading bundle: {_previousUrl}");
_ = DownloadAndInstantiate(_previousUrl);
}
}
}
private void OnUrlChanged()
{
Debug.Log($"[AssetBundleDownloader] OnUrlChanged triggered: {BundleUrl}");
string newUrl = BundleUrl.ToString();
if (!string.IsNullOrEmpty(newUrl) && newUrl != _previousUrl)
{
_previousUrl = newUrl;
_ = DownloadAndInstantiate(newUrl);
}
}
private async Task DownloadAndInstantiate(string url)
{
serverDownloaded = false;
using (UnityWebRequest uwr = UnityWebRequestAssetBundle.GetAssetBundle(url))
{
var op = uwr.SendWebRequest();
while (!op.isDone)
await Task.Yield();
if (uwr.result != UnityWebRequest.Result.Success)
{
Debug.LogError($"[AssetBundleDownloader] Download failed: {uwr.error}");
return;
}
AssetBundle bundle = DownloadHandlerAssetBundle.GetContent(uwr);
if (bundle == null)
{
Debug.LogError("[AssetBundleDownloader] Failed to load AssetBundle content");
return;
}
string[] assetNames = bundle.GetAllAssetNames();
if (assetNames.Length > 0)
{
GameObject prefab = bundle.LoadAsset<GameObject>(assetNames[0]);
if (prefab != null)
{
GameObject obj = Instantiate(prefab, map ? map.transform.position : Vector3.zero, Quaternion.identity);
obj.tag = "NetworkAssetBundle";
Debug.Log("[AssetBundleDownloader] Asset instantiated.");
}
}
else
{
Debug.LogWarning("[AssetBundleDownloader] No assets found in bundle.");
}
bundle.Unload(false); // Keep loaded assets in memory
serverDownloaded = true;
}
}
}

View File

@ -0,0 +1,62 @@
using System.Threading.Tasks;
using UnityEngine;
using UnityEngine.Networking;
using Fusion;
using System.Linq;
public class AssetBundleDownloaderAndLoader : MonoBehaviour
{
public string assetBundleUrl;
public GameObject loadedMapPrefab;
public async Task<bool> DownloadAndPrepareMap()
{
string spaceUrl = EN.instance.spaces.FirstOrDefault()?.assetBundleRoomId?.url;
if (string.IsNullOrEmpty(spaceUrl))
{
Debug.LogError("[Loader] No AssetBundle URL found.");
return false;
}
assetBundleUrl = "http://194.62.43.230:8000/" + spaceUrl;
Debug.Log("[Loader] Downloading AssetBundle from: " + assetBundleUrl);
using (UnityWebRequest uwr = UnityWebRequestAssetBundle.GetAssetBundle(assetBundleUrl))
{
var operation = uwr.SendWebRequest();
while (!operation.isDone)
await Task.Yield();
if (uwr.result != UnityWebRequest.Result.Success)
{
Debug.LogError("[Loader] AssetBundle download failed: " + uwr.error);
return false;
}
AssetBundle bundle = DownloadHandlerAssetBundle.GetContent(uwr);
if (bundle == null)
{
Debug.LogError("[Loader] Failed to load AssetBundle.");
return false;
}
string[] assetNames = bundle.GetAllAssetNames();
if (assetNames.Length == 0)
{
Debug.LogError("[Loader] No assets found in AssetBundle.");
return false;
}
loadedMapPrefab = bundle.LoadAsset<GameObject>(assetNames[0]);
if (loadedMapPrefab == null || loadedMapPrefab.GetComponent<NetworkObject>() == null)
{
Debug.LogError("[Loader] Prefab missing or missing NetworkObject.");
return false;
}
Debug.Log("[Loader] AssetBundle downloaded and prefab prepared.");
bundle.Unload(false); // Keep asset in memory
return true;
}
}
}

View File

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

View File

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

View File

@ -0,0 +1,215 @@
using System.Collections;
using System.Collections.Generic;
using RTLTMPro;
using TMPro;
using UnityEngine;
using UnityEngine.Networking;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
public class SceneDownloader : MonoBehaviour
{
[SerializeField] private GameObject buttonPrefab;
[SerializeField] private Transform buttonParent;
private Dictionary<string, AssetBundle> downloadedBundles = new();
private Dictionary<string, string> sceneNames = new();
void Start()
{
StartCoroutine(GenerateButtonsForSpaces());
}
public void loadSceneManually()
{
EN.instance.selectedSpaceId = "coaching";
}
private IEnumerator GenerateButtonsForSpaces()
{
while (EN.instance == null || EN.instance.spaces == null || EN.instance.spaces.Count == 0)
yield return null;
foreach (var space in EN.instance.spaces)
{
if (!string.IsNullOrEmpty(space.assetBundleRoomId?.url))
{
string fullUrl = "http://194.62.43.230:8000/" + space.assetBundleRoomId.url;
GameObject buttonObj = Instantiate(buttonPrefab, buttonParent);
buttonObj.name = "Button_" + space.name;
RTLTextMeshPro btnText = buttonObj.GetComponentInChildren<RTLTextMeshPro>();
btnText.text = space.name;
GameObject progressPanel = buttonObj.transform.Find("progressPanel").gameObject;
TMP_Text progressText = FindTextWithTag(progressPanel, "percent");
progressPanel.SetActive(false);
Button btn = buttonObj.GetComponent<Button>();
btn.onClick.AddListener(() =>
{
StartCoroutine(OnSpaceButtonClicked(space, fullUrl, progressPanel, progressText));
});
}
}
}
private IEnumerator OnSpaceButtonClicked(UserSpace space, string bundleUrl, GameObject progressPanel, TMP_Text progressText)
{
string spaceName = space.name;
if (downloadedBundles.ContainsKey(spaceName))
{
LoadScene(space);
yield break;
}
progressPanel.SetActive(true);
progressText.text = "0%";
// Use a hardcoded or dynamic hash to uniquely version your bundles
Hash128 bundleHash = Hash128.Parse("0123456789abcdef0123456789abcdef"); // replace with your actual versioning logic
// Check if bundle is already cached
bool isCached = Caching.IsVersionCached(bundleUrl, bundleHash);
if (isCached)
{
Debug.Log("Loading from cache: " + bundleUrl);
}
UnityWebRequest request = UnityWebRequestAssetBundle.GetAssetBundle(bundleUrl, bundleHash, 0);
var operation = request.SendWebRequest();
while (!operation.isDone)
{
int percent = Mathf.RoundToInt(operation.progress * 100);
progressText.text = percent + "%";
yield return null;
}
if (request.result != UnityWebRequest.Result.Success)
{
Debug.LogError("Failed to download AssetBundle: " + request.error);
progressText.text = "Error!";
yield return new WaitForSeconds(1.5f);
progressPanel.SetActive(false);
}
else
{
AssetBundle bundle = DownloadHandlerAssetBundle.GetContent(request);
if (bundle == null)
{
progressText.text = "Load failed!";
yield return new WaitForSeconds(1.5f);
progressPanel.SetActive(false);
yield break;
}
downloadedBundles[spaceName] = bundle;
string scenePath = bundle.GetAllScenePaths()[0];
string sceneName = System.IO.Path.GetFileNameWithoutExtension(scenePath);
sceneNames[spaceName] = sceneName;
progressText.text = "Done!";
yield return new WaitForSeconds(0.5f);
progressPanel.SetActive(false);
}
}
private void LoadScene(UserSpace space)
{
string spaceName = space.name;
if (!sceneNames.ContainsKey(spaceName))
{
Debug.LogError("No scene for space: " + spaceName);
return;
}
string sceneToLoad = sceneNames[spaceName];
EN.instance.selectedSpaceId = space.assetBundleRoomId.id.ToString(); // Save scene ID for use elsewhere
SceneManager.sceneLoaded += OnSceneLoaded;
SceneManager.LoadScene(sceneToLoad);
}
private void OnSceneLoaded(Scene scene, LoadSceneMode mode)
{
Debug.Log("Scene loaded, fixing shaders and skybox...");
Renderer[] renderers = GameObject.FindObjectsOfType<Renderer>(true);
foreach (Renderer renderer in renderers)
{
foreach (Material mat in renderer.sharedMaterials)
{
FixMaterialShader(mat);
}
}
if (RenderSettings.skybox == null || RenderSettings.skybox.shader == null)
{
Material fallbackSkybox = Resources.Load<Material>("FallbackSkybox");
if (fallbackSkybox != null)
{
RenderSettings.skybox = fallbackSkybox;
Debug.Log("Applied fallback skybox.");
}
else
{
Debug.LogWarning("FallbackSkybox material not found in Resources.");
}
}
else
{
Shader skyboxShader = Shader.Find(RenderSettings.skybox.shader.name);
if (skyboxShader != null)
{
RenderSettings.skybox.shader = skyboxShader;
Debug.Log("Skybox shader fixed: " + skyboxShader.name);
}
else
{
Debug.LogWarning("Skybox shader not found: " + RenderSettings.skybox.shader.name);
}
}
SceneManager.sceneLoaded -= OnSceneLoaded;
}
private void FixMaterialShader(Material mat)
{
if (mat == null || mat.shader == null) return;
Shader foundShader = Shader.Find(mat.shader.name);
if (foundShader != null)
{
mat.shader = foundShader;
}
else
{
Debug.LogWarning("Shader not found: " + mat.shader.name);
}
}
public void UnloadAllBundles()
{
foreach (var bundle in downloadedBundles.Values)
bundle.Unload(false);
downloadedBundles.Clear();
sceneNames.Clear();
}
private TMP_Text FindTextWithTag(GameObject parent, string tag)
{
foreach (Transform child in parent.transform)
{
if (child.CompareTag(tag))
return child.GetComponent<TMP_Text>();
}
return null;
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 82927fa0a5df565418996b983dcad3dd

View File

@ -1,15 +1,47 @@
using UnityEngine; using UnityEngine;
using System.IO;
using System.Collections; using System.Collections;
using UnityEngine.Networking; using UnityEngine.Networking;
public class ScreenShot : MonoBehaviour public class ScreenShot : MonoBehaviour
{ {
[SerializeField] private string apiUrl = "YOUR_API_ENDPOINT_HERE"; // Replace with your API endpoint [Header("API Settings")]
[SerializeField] private float screenshotCooldown = 5f; // Cooldown in seconds [SerializeField] private string apiUrl = "http://my.xroomapp.com:8000/uploadImage/";
[SerializeField] private string screenshotName = "Screenshot";
[Header("Cooldown Settings")]
[SerializeField] private float screenshotCooldown = 5f;
private bool canTakeScreenshot = true; private bool canTakeScreenshot = true;
[Header("Camera Setup")]
[SerializeField] private Camera BackCamera;
[SerializeField] private Camera selfieCamera;
[SerializeField] private RenderTexture tr;
private Camera activeCamera;
void Start()
{
SetActiveCamera(BackCamera); // Start with back camera by default
}
public void ToggleCamera()
{
if (activeCamera == BackCamera)
{
SetActiveCamera(selfieCamera);
}
else
{
SetActiveCamera(BackCamera);
}
}
private void SetActiveCamera(Camera cameraToActivate)
{
BackCamera.gameObject.SetActive(cameraToActivate == BackCamera);
selfieCamera.gameObject.SetActive(cameraToActivate == selfieCamera);
activeCamera = cameraToActivate;
}
public void TakeAndUploadScreenshot() public void TakeAndUploadScreenshot()
{ {
if (canTakeScreenshot) if (canTakeScreenshot)
@ -26,29 +58,48 @@ public class ScreenShot : MonoBehaviour
{ {
canTakeScreenshot = false; canTakeScreenshot = false;
// Wait for the end of the frame to ensure all rendering is complete // Store currently active camera
Camera previousCamera = activeCamera;
yield return new WaitForEndOfFrame(); yield return new WaitForEndOfFrame();
// Create a texture to hold the screenshot // Store the original active RenderTexture
Texture2D screenshot = new Texture2D(Screen.width, Screen.height, TextureFormat.RGB24, false); RenderTexture originalRT = RenderTexture.active;
// Read the screen pixels into the texture // Create temporary RenderTexture
RenderTexture tempRT = new RenderTexture(Screen.width, Screen.height, 24);
// Render camera to the temporary RenderTexture
activeCamera.targetTexture = tempRT;
activeCamera.Render();
RenderTexture.active = tempRT;
// Read pixels into a Texture2D
Texture2D screenshot = new Texture2D(Screen.width, Screen.height, TextureFormat.RGB24, false);
screenshot.ReadPixels(new Rect(0, 0, Screen.width, Screen.height), 0, 0); screenshot.ReadPixels(new Rect(0, 0, Screen.width, Screen.height), 0, 0);
screenshot.Apply(); screenshot.Apply();
// Convert the texture to a PNG byte array // Cleanup: restore original targets
byte[] imageBytes = screenshot.EncodeToPNG(); //activeCamera.targetTexture = null;
RenderTexture.active = originalRT;
// Clean up the texture tempRT.Release();
Destroy(tempRT);
// Convert screenshot to PNG
byte[] imageBytes = screenshot.EncodeToPNG();
Destroy(screenshot); Destroy(screenshot);
// Create a form to send the image // Upload to server
WWWForm form = new WWWForm(); WWWForm form = new WWWForm();
form.AddField("name", screenshotName);
form.AddBinaryData("image", imageBytes, "screenshot.png", "image/png"); form.AddBinaryData("image", imageBytes, "screenshot.png", "image/png");
// Create and send the request
using (UnityWebRequest www = UnityWebRequest.Post(apiUrl, form)) using (UnityWebRequest www = UnityWebRequest.Post(apiUrl, form))
{ {
string token = EN.instance.Me.token;
www.SetRequestHeader("Authorization", "token " + token);
yield return www.SendWebRequest(); yield return www.SendWebRequest();
if (www.result == UnityWebRequest.Result.Success) if (www.result == UnityWebRequest.Result.Success)
@ -58,10 +109,15 @@ public class ScreenShot : MonoBehaviour
else else
{ {
Debug.LogError("Error uploading screenshot: " + www.error); Debug.LogError("Error uploading screenshot: " + www.error);
EN.instance.showError("Upload Failed", www.error);
} }
} }
// Wait for cooldown before allowing another screenshot // Restore active camera state
SetActiveCamera(previousCamera);
BackCamera.targetTexture=tr;
selfieCamera.targetTexture=tr;
yield return new WaitForSeconds(screenshotCooldown); yield return new WaitForSeconds(screenshotCooldown);
canTakeScreenshot = true; canTakeScreenshot = true;
} }

View File

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

View File

@ -0,0 +1,129 @@
using UnityEngine;
using UnityEngine.UI;
using TMPro;
using System.Collections;
using RTLTMPro;
public class timerStarter : MonoBehaviour
{
public TextMeshProUGUI timerText;
public RTLTextMeshPro questionText;
public GameObject startButton;
public GameObject answerButton;
public GameObject resumeButton;
public GameObject endButton;
private float countdownTime = 300f;
private float timeLeft;
private Coroutine countdownCoroutine;
private bool isPaused = false;
private int cycleCount = 0;
private const int maxCycles = 4;
// Manual messages for each cycle
public string[] questions = {
"Question 1: What is your name?",
"Question 2: What is your quest?",
"Question 3: What is your favorite color?",
"Question 4: What is the airspeed velocity of an unladen swallow?"
};
void Start()
{
ResetUI();
}
public void OnStartButtonPressed()
{
cycleCount = 0;
timeLeft = countdownTime;
SetButtons(activeStart: false, activeAnswer: true, activeResume: false, activeEnd: false);
ShowNextQuestion();
countdownCoroutine = StartCoroutine(StartCountdown());
}
public void OnAnswerButtonPressed()
{
if (countdownCoroutine != null)
{
StopCoroutine(countdownCoroutine);
}
isPaused = true;
SetButtons(activeStart: false, activeAnswer: false, activeResume: true, activeEnd: false);
}
public void OnResumeButtonPressed()
{
cycleCount++;
if (cycleCount >= maxCycles)
{
SetButtons(activeStart: false, activeAnswer: false, activeResume: false, activeEnd: true);
}
else
{
ShowNextQuestion();
SetButtons(activeStart: false, activeAnswer: true, activeResume: false, activeEnd: false);
}
isPaused = false;
countdownCoroutine = StartCoroutine(StartCountdown());
}
public void OnEndButtonPressed()
{
ResetUI();
}
IEnumerator StartCountdown()
{
while (timeLeft > 0)
{
int minutes = Mathf.FloorToInt(timeLeft / 60);
int seconds = Mathf.FloorToInt(timeLeft % 60);
timerText.text = $"{minutes:D2}:{seconds:D2}";
yield return new WaitForSeconds(1f);
timeLeft -= 1f;
if (isPaused) yield break;
}
// If time runs out mid-cycle, reset everything
ResetUI();
}
void ShowNextQuestion()
{
if (cycleCount < questions.Length)
{
questionText.text = questions[cycleCount];
}
else
{
questionText.text = "No more questions.";
}
}
void ResetUI()
{
if (countdownCoroutine != null)
{
StopCoroutine(countdownCoroutine);
}
timerText.text = "00:00";
questionText.text = "Press Start to begin.";
timeLeft = countdownTime;
isPaused = false;
cycleCount = 0;
SetButtons(activeStart: true, activeAnswer: false, activeResume: false, activeEnd: false);
}
void SetButtons(bool activeStart, bool activeAnswer, bool activeResume, bool activeEnd)
{
startButton.SetActive(activeStart);
answerButton.SetActive(activeAnswer);
resumeButton.SetActive(activeResume);
endButton.SetActive(activeEnd);
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 7567bc184726e3a4997e8f53ff52c940

View File

@ -0,0 +1,55 @@
%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: de640fe3d0db1804a85f9fc8f5cadab6, type: 3}
m_Name: Android Preset
m_EditorClassIdentifier:
debugShaders:
debugReplacementPS: {fileID: 4800000, guid: cf852408f2e174538bcd9b7fda1c5ae7,
type: 3}
hdrDebugViewPS: {fileID: 4800000, guid: 573620ae32aec764abd4d728906d2587, type: 3}
probeVolumeSamplingDebugComputeShader: {fileID: 7200000, guid: 53626a513ea68ce47b59dc1299fe3959,
type: 3}
probeVolumeResources:
probeVolumeDebugShader: {fileID: 0}
probeVolumeFragmentationDebugShader: {fileID: 0}
probeVolumeOffsetDebugShader: {fileID: 0}
probeVolumeSamplingDebugShader: {fileID: 0}
probeSamplingDebugMesh: {fileID: 0}
probeSamplingDebugTexture: {fileID: 0}
probeVolumeBlendStatesCS: {fileID: 0}
m_RendererFeatures: []
m_RendererFeatureMap:
m_UseNativeRenderPass: 1
xrSystemData: {fileID: 11400000, guid: 60e1133243b97e347b653163a8c01b64, type: 2}
postProcessData: {fileID: 0}
m_AssetVersion: 2
m_OpaqueLayerMask:
serializedVersion: 2
m_Bits: 4294967295
m_TransparentLayerMask:
serializedVersion: 2
m_Bits: 4294967295
m_DefaultStencilState:
overrideStencilState: 0
stencilReference: 0
stencilCompareFunction: 8
passOperation: 2
failOperation: 0
zFailOperation: 0
m_ShadowTransparentReceive: 1
m_RenderingMode: 0
m_DepthPrimingMode: 0
m_CopyDepthMode: 0
m_DepthAttachmentFormat: 0
m_DepthTextureFormat: 0
m_AccurateGbufferNormals: 0
m_IntermediateTextureMode: 0

View File

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

View File

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

View File

@ -0,0 +1,52 @@
%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: 15003, guid: 0000000000000000e000000000000000, type: 0}
m_Name: "New Android\u2122 Profile"
m_EditorClassIdentifier:
m_AssetVersion: 1
m_BuildTarget: 13
m_Subtarget: 0
m_PlatformId: b9b35072a6f44c2e863f17467ea3dc13
m_PlatformBuildProfile:
rid: 6142483560080343326
m_OverrideGlobalSceneList: 0
m_Scenes: []
m_ScriptingDefines: []
m_PlayerSettingsYaml:
m_Settings: []
references:
version: 2
RefIds:
- rid: 6142483560080343326
type: {class: AndroidPlatformBuildSettings, ns: UnityEditor.Android, asm: UnityEditor.Android.Extensions}
data:
m_Development: 0
m_ConnectProfiler: 0
m_BuildWithDeepProfilingSupport: 0
m_AllowDebugging: 0
m_WaitForManagedDebugger: 0
m_ManagedDebuggerFixedPort: 0
m_ExplicitNullChecks: 0
m_ExplicitDivideByZeroChecks: 0
m_ExplicitArrayBoundsChecks: 0
m_CompressionType: 2
m_InstallInBuildFolder: 0
m_BuildSubtarget: 0
m_BuildSystem: 1
m_ExportAsGoogleAndroidProject: 0
m_DebugSymbolLevel: 1
m_DebugSymbolFormat: 5
m_CurrentDeploymentTargetId: __builtin__target_default
m_BuildType: 2
m_BuildAppBundle: 0
m_IPAddressToConnect:
m_SymlinkSources: 0

View File

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

View File

@ -122,9 +122,9 @@ MonoBehaviour:
m_PrefilterDBufferMRT1: 1 m_PrefilterDBufferMRT1: 1
m_PrefilterDBufferMRT2: 1 m_PrefilterDBufferMRT2: 1
m_PrefilterDBufferMRT3: 1 m_PrefilterDBufferMRT3: 1
m_PrefilterSoftShadowsQualityLow: 1 m_PrefilterSoftShadowsQualityLow: 0
m_PrefilterSoftShadowsQualityMedium: 1 m_PrefilterSoftShadowsQualityMedium: 1
m_PrefilterSoftShadowsQualityHigh: 0 m_PrefilterSoftShadowsQualityHigh: 1
m_PrefilterSoftShadows: 1 m_PrefilterSoftShadows: 1
m_PrefilterScreenCoord: 1 m_PrefilterScreenCoord: 1
m_PrefilterNativeRenderPass: 1 m_PrefilterNativeRenderPass: 1

View File

@ -0,0 +1,136 @@
%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: bf2edee5c58d82540a51f03df9d42094, type: 3}
m_Name: Performance URP Config
m_EditorClassIdentifier:
k_AssetVersion: 12
k_AssetPreviousVersion: 12
m_RendererType: 1
m_RendererData: {fileID: 0}
m_RendererDataList:
- {fileID: 11400000, guid: 83e3e009b86f0d945bfdd9bf866d03b1, type: 2}
m_DefaultRendererIndex: 0
m_RequireDepthTexture: 0
m_RequireOpaqueTexture: 0
m_OpaqueDownsampling: 1
m_SupportsTerrainHoles: 0
m_SupportsHDR: 0
m_HDRColorBufferPrecision: 0
m_MSAA: 4
m_RenderScale: 1.04
m_UpscalingFilter: 0
m_FsrOverrideSharpness: 1
m_FsrSharpness: 0.75
m_EnableLODCrossFade: 0
m_LODCrossFadeDitheringType: 1
m_ShEvalMode: 0
m_LightProbeSystem: 1
m_ProbeVolumeMemoryBudget: 1024
m_ProbeVolumeBlendingMemoryBudget: 256
m_SupportProbeVolumeGPUStreaming: 0
m_SupportProbeVolumeDiskStreaming: 0
m_SupportProbeVolumeScenarios: 0
m_SupportProbeVolumeScenarioBlending: 0
m_ProbeVolumeSHBands: 1
m_MainLightRenderingMode: 1
m_MainLightShadowsSupported: 1
m_MainLightShadowmapResolution: 1024
m_AdditionalLightsRenderingMode: 0
m_AdditionalLightsPerObjectLimit: 1
m_AdditionalLightShadowsSupported: 0
m_AdditionalLightsShadowmapResolution: 512
m_AdditionalLightsShadowResolutionTierLow: 256
m_AdditionalLightsShadowResolutionTierMedium: 512
m_AdditionalLightsShadowResolutionTierHigh: 1024
m_ReflectionProbeBlending: 0
m_ReflectionProbeBoxProjection: 0
m_ShadowDistance: 50
m_ShadowCascadeCount: 1
m_Cascade2Split: 0.095
m_Cascade3Split: {x: 0.1, y: 0.3}
m_Cascade4Split: {x: 0.067, y: 0.2, z: 0.467}
m_CascadeBorder: 0.38
m_ShadowDepthBias: 1.6
m_ShadowNormalBias: 0
m_AnyShadowsSupported: 1
m_SoftShadowsSupported: 0
m_ConservativeEnclosingSphere: 1
m_NumIterationsEnclosingSphere: 64
m_SoftShadowQuality: 1
m_AdditionalLightsCookieResolution: 512
m_AdditionalLightsCookieFormat: 3
m_UseSRPBatcher: 1
m_SupportsDynamicBatching: 0
m_MixedLightingSupported: 1
m_SupportsLightCookies: 1
m_SupportsLightLayers: 0
m_DebugLevel: 0
m_StoreActionsOptimization: 0
m_UseAdaptivePerformance: 1
m_ColorGradingMode: 0
m_ColorGradingLutSize: 32
m_AllowPostProcessAlphaOutput: 0
m_UseFastSRGBLinearConversion: 0
m_SupportDataDrivenLensFlare: 1
m_SupportScreenSpaceLensFlare: 1
m_GPUResidentDrawerMode: 0
m_SmallMeshScreenPercentage: 0
m_GPUResidentDrawerEnableOcclusionCullingInCameras: 0
m_ShadowType: 1
m_LocalShadowsSupported: 0
m_LocalShadowsAtlasResolution: 256
m_MaxPixelLights: 0
m_ShadowAtlasResolution: 256
m_VolumeFrameworkUpdateMode: 0
m_VolumeProfile: {fileID: 0}
apvScenesData:
obsoleteSceneBounds:
m_Keys: []
m_Values: []
obsoleteHasProbeVolumes:
m_Keys: []
m_Values:
m_PrefilteringModeMainLightShadows: 3
m_PrefilteringModeAdditionalLight: 0
m_PrefilteringModeAdditionalLightShadows: 0
m_PrefilterXRKeywords: 0
m_PrefilteringModeForwardPlus: 0
m_PrefilteringModeDeferredRendering: 0
m_PrefilteringModeScreenSpaceOcclusion: 0
m_PrefilterDebugKeywords: 1
m_PrefilterWriteRenderingLayers: 1
m_PrefilterHDROutput: 1
m_PrefilterAlphaOutput: 1
m_PrefilterSSAODepthNormals: 1
m_PrefilterSSAOSourceDepthLow: 1
m_PrefilterSSAOSourceDepthMedium: 1
m_PrefilterSSAOSourceDepthHigh: 1
m_PrefilterSSAOInterleaved: 1
m_PrefilterSSAOBlueNoise: 1
m_PrefilterSSAOSampleCountLow: 1
m_PrefilterSSAOSampleCountMedium: 1
m_PrefilterSSAOSampleCountHigh: 1
m_PrefilterDBufferMRT1: 1
m_PrefilterDBufferMRT2: 1
m_PrefilterDBufferMRT3: 1
m_PrefilterSoftShadowsQualityLow: 1
m_PrefilterSoftShadowsQualityMedium: 1
m_PrefilterSoftShadowsQualityHigh: 1
m_PrefilterSoftShadows: 0
m_PrefilterScreenCoord: 1
m_PrefilterNativeRenderPass: 1
m_PrefilterUseLegacyLightmaps: 0
m_ShaderVariantLogLevel: 0
m_ShadowCascades: 0
m_Textures:
blueNoise64LTex: {fileID: 2800000, guid: e3d24661c1e055f45a7560c033dbb837, type: 3}
bayerMatrixTex: {fileID: 2800000, guid: f9ee4ed84c1d10c49aabb9b210b0fc44, type: 3}

View File

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

View File

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

View File

@ -0,0 +1,44 @@
%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: a689d91966dfb46499fb63f130d9b905, type: 3}
m_Name: NewPlayModeScenario
m_EditorClassIdentifier:
m_Description:
m_EnableEditors: 1
m_MainEditorInstance:
Name: Main Editor
<CorrespondingNodeId>k__BackingField: Main Editor|0_run
m_Nodes:
- Main Editor|0_run
- Main Editor|0_deploy
m_PlayerTag: t1
m_InitialScene: {fileID: 102900000, guid: 7b533dfe561bc47c8975c955fe4ef3d3, type: 3}
m_EditorInstances: []
m_LocalInstances:
- Name: tttt
<CorrespondingNodeId>k__BackingField:
m_Nodes: []
m_BuildProfile: {fileID: 11400000, guid: 882ce14fe8455d6408b49f77566742dd, type: 2}
advancedConfiguration:
m_StreamLogsToMainEditor: 1
m_LogsColor: {r: 0.3643, g: 0.581, b: 0.8679, a: 1}
m_Arguments: -screen-fullscreen 0 -screen-width 1024 -screen-height 720
m_RemoteInstances: []
m_OverridePort: 0
m_Port: 0
m_MainEditorInstanceObsolete:
rid: -2
references:
version: 2
RefIds:
- rid: -2
type: {class: , ns: , asm: }

View File

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

View File

@ -17,7 +17,7 @@ MonoBehaviour:
m_RendererType: 1 m_RendererType: 1
m_RendererData: {fileID: 0} m_RendererData: {fileID: 0}
m_RendererDataList: m_RendererDataList:
- {fileID: 11400000, guid: 9284b680dea7f7a4dae79d9efd0fe3b4, type: 2} - {fileID: 11400000, guid: 83e3e009b86f0d945bfdd9bf866d03b1, type: 2}
m_DefaultRendererIndex: 0 m_DefaultRendererIndex: 0
m_RequireDepthTexture: 0 m_RequireDepthTexture: 0
m_RequireOpaqueTexture: 0 m_RequireOpaqueTexture: 0
@ -26,7 +26,7 @@ MonoBehaviour:
m_SupportsHDR: 1 m_SupportsHDR: 1
m_HDRColorBufferPrecision: 0 m_HDRColorBufferPrecision: 0
m_MSAA: 2 m_MSAA: 2
m_RenderScale: 1 m_RenderScale: 1.908
m_UpscalingFilter: 0 m_UpscalingFilter: 0
m_FsrOverrideSharpness: 0 m_FsrOverrideSharpness: 0
m_FsrSharpness: 0.92 m_FsrSharpness: 0.92
@ -76,7 +76,7 @@ MonoBehaviour:
m_DebugLevel: 0 m_DebugLevel: 0
m_StoreActionsOptimization: 0 m_StoreActionsOptimization: 0
m_UseAdaptivePerformance: 1 m_UseAdaptivePerformance: 1
m_ColorGradingMode: 0 m_ColorGradingMode: 1
m_ColorGradingLutSize: 32 m_ColorGradingLutSize: 32
m_AllowPostProcessAlphaOutput: 0 m_AllowPostProcessAlphaOutput: 0
m_UseFastSRGBLinearConversion: 0 m_UseFastSRGBLinearConversion: 0
@ -100,10 +100,10 @@ MonoBehaviour:
m_Keys: [] m_Keys: []
m_Values: m_Values:
m_PrefilteringModeMainLightShadows: 3 m_PrefilteringModeMainLightShadows: 3
m_PrefilteringModeAdditionalLight: 4 m_PrefilteringModeAdditionalLight: 0
m_PrefilteringModeAdditionalLightShadows: 0 m_PrefilteringModeAdditionalLightShadows: 0
m_PrefilterXRKeywords: 0 m_PrefilterXRKeywords: 0
m_PrefilteringModeForwardPlus: 0 m_PrefilteringModeForwardPlus: 2
m_PrefilteringModeDeferredRendering: 0 m_PrefilteringModeDeferredRendering: 0
m_PrefilteringModeScreenSpaceOcclusion: 0 m_PrefilteringModeScreenSpaceOcclusion: 0
m_PrefilterDebugKeywords: 1 m_PrefilterDebugKeywords: 1

View File

@ -46,7 +46,7 @@ MonoBehaviour:
failOperation: 0 failOperation: 0
zFailOperation: 0 zFailOperation: 0
m_ShadowTransparentReceive: 1 m_ShadowTransparentReceive: 1
m_RenderingMode: 0 m_RenderingMode: 2
m_DepthPrimingMode: 0 m_DepthPrimingMode: 0
m_CopyDepthMode: 1 m_CopyDepthMode: 1
m_DepthAttachmentFormat: 0 m_DepthAttachmentFormat: 0

View File

@ -3,7 +3,7 @@ guid: e3265ab4bf004d28a9537516768c1c75
TrueTypeFontImporter: TrueTypeFontImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 4 serializedVersion: 4
fontSize: 16 fontSize: 200
forceTextureCase: -1 forceTextureCase: -1
characterSpacing: 0 characterSpacing: 0
characterPadding: 1 characterPadding: 1
@ -12,7 +12,7 @@ TrueTypeFontImporter:
- Liberation Sans - Liberation Sans
fallbackFontReferences: [] fallbackFontReferences: []
customCharacters: customCharacters:
fontRenderingMode: 2 fontRenderingMode: 0
ascentCalculationMode: 1 ascentCalculationMode: 1
useLegacyBoundsCalculation: 0 useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1 shouldRoundAdvanceValue: 1

View File

@ -34,7 +34,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -71,7 +71,7 @@ TextureImporter:
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 4096 maxTextureSize: 4096
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: 4
textureCompression: 1 textureCompression: 1
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0

Binary file not shown.

BIN
Assets/classRoom10_sit.unity (Stored with Git LFS)

Binary file not shown.

View File

@ -3,5 +3,5 @@ guid: 834a317f294323e4c843b9199a8f79fa
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
assetBundleName: assetBundleName: futuristicroom10
assetBundleVariant: assetBundleVariant: 12

Binary file not shown.

View File

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

Binary file not shown.

View File

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

View File

@ -0,0 +1,131 @@
%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: 4881f9a2c4d568047b316028d20a8dca, type: 3}
m_Name: classRoom10_sit Baking Set
m_EditorClassIdentifier:
singleSceneMode: 1
dialogNoProbeVolumeInSetShown: 1
settings:
m_Version: 1
dilationSettings:
enableDilation: 0
dilationDistance: 1
dilationValidityThreshold: 0.25
dilationIterations: 1
squaredDistWeighting: 1
virtualOffsetSettings:
useVirtualOffset: 1
validityThreshold: 0.25
outOfGeoOffset: 0.01
searchMultiplier: 0.2
rayOriginBias: -0.001
collisionMask:
serializedVersion: 2
m_Bits: 4294967291
m_SceneGUIDs:
- 834a317f294323e4c843b9199a8f79fa
obsoleteScenesToNotBake: []
m_LightingScenarios:
- Default
cellDescs:
m_Keys:
m_Values: []
m_SerializedPerSceneCellList:
- sceneGUID: 834a317f294323e4c843b9199a8f79fa
cellList:
cellSharedDataAsset:
m_AssetGUID:
m_StreamableAssetPath:
m_ElementSize: 0
m_StreamableCellDescs:
m_Keys:
m_Values: []
m_Asset: {fileID: 0}
scenarios:
m_Keys: []
m_Values: []
cellBricksDataAsset:
m_AssetGUID:
m_StreamableAssetPath:
m_ElementSize: 0
m_StreamableCellDescs:
m_Keys:
m_Values: []
m_Asset: {fileID: 0}
cellSupportDataAsset:
m_AssetGUID:
m_StreamableAssetPath:
m_ElementSize: 0
m_StreamableCellDescs:
m_Keys:
m_Values: []
m_Asset: {fileID: 0}
chunkSizeInBricks: 128
maxCellPosition: {x: 0, y: 0, z: 0}
minCellPosition: {x: 0, y: 0, z: 0}
globalBounds:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
bakedSimplificationLevels: 3
bakedMinDistanceBetweenProbes: 1
bakedProbeOcclusion: 0
bakedSkyOcclusionValue: 0
bakedSkyShadingDirectionValue: 0
bakedProbeOffset: {x: 0, y: 0, z: 0}
bakedMaskCount: 1
bakedLayerMasks:
x: 0
y: 0
z: 0
w: 0
maxSHChunkCount: -1
L0ChunkSize: 0
L1ChunkSize: 0
L2TextureChunkSize: 0
ProbeOcclusionChunkSize: 0
sharedValidityMaskChunkSize: 8192
sharedSkyOcclusionL0L1ChunkSize: 0
sharedSkyShadingDirectionIndicesChunkSize: 0
sharedDataChunkSize: 0
supportPositionChunkSize: 0
supportValidityChunkSize: 0
supportTouchupChunkSize: 0
supportLayerMaskChunkSize: 0
supportOffsetsChunkSize: 0
supportDataChunkSize: 0
lightingScenario: Default
version: 2
freezePlacement: 0
probeOffset: {x: 0, y: 0, z: 0}
simplificationLevels: 3
minDistanceBetweenProbes: 1
renderersLayerMask:
serializedVersion: 2
m_Bits: 4294967295
minRendererVolumeSize: 0.1
skyOcclusion: 0
skyOcclusionBakingSamples: 2048
skyOcclusionBakingBounces: 2
skyOcclusionAverageAlbedo: 0.6
skyOcclusionBackFaceCulling: 0
skyOcclusionShadingDirection: 0
useRenderingLayers: 0
renderingLayerMasks: []
m_SceneBakeData:
m_Keys:
- 834a317f294323e4c843b9199a8f79fa
m_Values:
- hasProbeVolume: 0
bakeScene: 1
bounds:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 81, y: 81, z: 81}

View File

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

BIN
Assets/icons/pngaaa.com-5652364.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

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

View File

@ -0,0 +1,146 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-5895570464342500934
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: 9
--- !u!114 &-3736755245287547707
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: 639247ca83abc874e893eb93af2b5e44, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 0
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Frozen white metal 1
m_Shader: {fileID: -6465566751694194690, guid: b9d29dfa1474148e792ac720cbd45122,
type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords:
- _UV_CHANNEL_SELECT
m_LightmapFlags: 2
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 1
m_CustomRenderQueue: 2000
stringTagMap:
MotionVector: User
RenderType: Opaque
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- baseColorTexture:
m_Texture: {fileID: 1744999280371285708, guid: 06deb92f7835c6c4c828a4f23983556e,
type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- emissiveTexture:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- metallicRoughnessTexture:
m_Texture: {fileID: 2669244593429743303, guid: 06deb92f7835c6c4c828a4f23983556e,
type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- normalTexture:
m_Texture: {fileID: -2214381432715469515, guid: 06deb92f7835c6c4c828a4f23983556e,
type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- occlusionTexture:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- transmissionTexture:
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:
- _AlphaClip: 0
- _AlphaToMask: 0
- _BUILTIN_AlphaClip: 0
- _BUILTIN_Blend: 0
- _BUILTIN_CullMode: 2
- _BUILTIN_DstBlend: 0
- _BUILTIN_QueueControl: 1
- _BUILTIN_QueueOffset: 0
- _BUILTIN_SrcBlend: 1
- _BUILTIN_Surface: 0
- _BUILTIN_ZTest: 4
- _BUILTIN_ZWrite: 1
- _BUILTIN_ZWriteControl: 0
- _Blend: 0
- _BlendModePreserveSpecular: 0
- _CastShadows: 1
- _Cull: 0
- _DstBlend: 0
- _QueueControl: 1
- _QueueOffset: 0
- _ReceiveShadows: 1
- _SrcBlend: 1
- _Surface: 0
- _WorkflowMode: 1
- _ZTest: 4
- _ZWrite: 1
- _ZWriteControl: 0
- alphaCutoff: 0
- baseColorTexture_texCoord: 1
- emissiveExposureWeight: 0
- emissiveTexture_texCoord: 0
- metallicFactor: 1
- metallicRoughnessTexture_texCoord: 1
- normalTexture_scale: 1
- normalTexture_texCoord: 1
- occlusionTexture_strength: 1
- occlusionTexture_texCoord: 0
- roughnessFactor: 1
- transmissionFactor: 0
m_Colors:
- baseColorFactor: {r: 1, g: 1, b: 1, a: 1}
- baseColorTexture_Rotation: {r: 0, g: 0, b: 0, a: 0}
- emissiveFactor: {r: 0, g: 0, b: 0, a: 1}
- emissiveTexture_Rotation: {r: 0, g: 0, b: 0, a: 0}
- metallicRoughnessTexture_Rotation: {r: 0, g: 0, b: 0, a: 0}
- normalTexture_Rotation: {r: 0, g: 0, b: 0, a: 0}
- occlusionTexture_Rotation: {r: 0, g: 0, b: 0, a: 0}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

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

View File

@ -25,18 +25,21 @@ Material:
type: 3} type: 3}
m_Parent: {fileID: 0} m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0 m_ModifiedSerializedProperties: 0
m_ValidKeywords: [] m_ValidKeywords:
- _RECEIVE_SHADOWS_OFF
- _SPECULAR_SETUP
m_InvalidKeywords: m_InvalidKeywords:
- _UV_CHANNEL_SELECT - _UV_CHANNEL_SELECT
m_LightmapFlags: 2 m_LightmapFlags: 1
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
m_DoubleSidedGI: 1 m_DoubleSidedGI: 1
m_CustomRenderQueue: 2000 m_CustomRenderQueue: 1973
stringTagMap: stringTagMap:
MotionVector: User MotionVector: User
RenderType: Opaque RenderType: Opaque
disabledShaderPasses: disabledShaderPasses:
- MOTIONVECTORS - MOTIONVECTORS
- SHADOWCASTER
m_LockedProperties: m_LockedProperties:
m_SavedProperties: m_SavedProperties:
serializedVersion: 3 serializedVersion: 3
@ -51,8 +54,7 @@ Material:
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- metallicRoughnessTexture: - metallicRoughnessTexture:
m_Texture: {fileID: 2669244593429743303, guid: 06deb92f7835c6c4c828a4f23983556e, m_Texture: {fileID: 0}
type: 3}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
- normalTexture: - normalTexture:
@ -97,15 +99,15 @@ Material:
- _BUILTIN_ZWriteControl: 0 - _BUILTIN_ZWriteControl: 0
- _Blend: 0 - _Blend: 0
- _BlendModePreserveSpecular: 0 - _BlendModePreserveSpecular: 0
- _CastShadows: 1 - _CastShadows: 0
- _Cull: 0 - _Cull: 0
- _DstBlend: 0 - _DstBlend: 0
- _QueueControl: 1 - _QueueControl: 0
- _QueueOffset: 0 - _QueueOffset: -27
- _ReceiveShadows: 1 - _ReceiveShadows: 0
- _SrcBlend: 1 - _SrcBlend: 1
- _Surface: 0 - _Surface: 0
- _WorkflowMode: 1 - _WorkflowMode: 0
- _ZTest: 4 - _ZTest: 4
- _ZWrite: 1 - _ZWrite: 1
- _ZWriteControl: 0 - _ZWriteControl: 0

145
Assets/prefab/Marble.mat Normal file
View File

@ -0,0 +1,145 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-228728997369815082
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: 639247ca83abc874e893eb93af2b5e44, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 0
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Marble
m_Shader: {fileID: -6465566751694194690, guid: b9d29dfa1474148e792ac720cbd45122,
type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords:
- _UV_CHANNEL_SELECT
m_LightmapFlags: 2
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 1
m_CustomRenderQueue: 2000
stringTagMap:
MotionVector: User
RenderType: Opaque
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- baseColorTexture:
m_Texture: {fileID: 2800000, guid: 6c6741f5c5b329c429891ab79ca7f8fc, type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- emissiveTexture:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- metallicRoughnessTexture:
m_Texture: {fileID: 4669988254933705347, guid: 06deb92f7835c6c4c828a4f23983556e,
type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- normalTexture:
m_Texture: {fileID: -7972291948059404516, guid: 06deb92f7835c6c4c828a4f23983556e,
type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- occlusionTexture:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- transmissionTexture:
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:
- _AlphaClip: 0
- _AlphaToMask: 0
- _BUILTIN_AlphaClip: 0
- _BUILTIN_Blend: 0
- _BUILTIN_CullMode: 2
- _BUILTIN_DstBlend: 0
- _BUILTIN_QueueControl: 1
- _BUILTIN_QueueOffset: 0
- _BUILTIN_SrcBlend: 1
- _BUILTIN_Surface: 0
- _BUILTIN_ZTest: 4
- _BUILTIN_ZWrite: 1
- _BUILTIN_ZWriteControl: 0
- _Blend: 0
- _BlendModePreserveSpecular: 0
- _CastShadows: 1
- _Cull: 0
- _DstBlend: 0
- _QueueControl: 1
- _QueueOffset: 0
- _ReceiveShadows: 1
- _SrcBlend: 1
- _Surface: 0
- _WorkflowMode: 1
- _ZTest: 4
- _ZWrite: 1
- _ZWriteControl: 0
- alphaCutoff: 0
- baseColorTexture_texCoord: 1
- emissiveExposureWeight: 0
- emissiveTexture_texCoord: 0
- metallicFactor: 0
- metallicRoughnessTexture_texCoord: 1
- normalTexture_scale: 1
- normalTexture_texCoord: 1
- occlusionTexture_strength: 1
- occlusionTexture_texCoord: 0
- roughnessFactor: 1
- transmissionFactor: 0
m_Colors:
- baseColorFactor: {r: 1, g: 1, b: 1, a: 1}
- baseColorTexture_Rotation: {r: 0, g: 0, b: 0, a: 0}
- emissiveFactor: {r: 0, g: 0, b: 0, a: 1}
- emissiveTexture_Rotation: {r: 0, g: 0, b: 0, a: 0}
- metallicRoughnessTexture_Rotation: {r: 0, g: 0, b: 0, a: 0}
- normalTexture_Rotation: {r: 0, g: 0, b: 0, a: 0}
- occlusionTexture_Rotation: {r: 0, g: 0, b: 0, a: 0}
m_BuildTextureStacks: []
m_AllowLocking: 1
--- !u!114 &1539836543854674545
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: 9

View File

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

View File

@ -34,12 +34,12 @@ LightingSettings:
m_ExportTrainingData: 0 m_ExportTrainingData: 0
m_EnableWorkerProcessBaking: 1 m_EnableWorkerProcessBaking: 1
m_TrainingDataDestination: TrainingData m_TrainingDataDestination: TrainingData
m_RealtimeResolution: 2 m_RealtimeResolution: 2.01
m_ForceWhiteAlbedo: 0 m_ForceWhiteAlbedo: 0
m_ForceUpdates: 0 m_ForceUpdates: 0
m_PVRCulling: 1 m_PVRCulling: 1
m_PVRSampling: 1 m_PVRSampling: 1
m_PVRDirectSampleCount: 32 m_PVRDirectSampleCount: 64
m_PVRSampleCount: 512 m_PVRSampleCount: 512
m_PVREnvironmentSampleCount: 256 m_PVREnvironmentSampleCount: 256
m_PVREnvironmentReferencePointCount: 2048 m_PVREnvironmentReferencePointCount: 2048

View File

@ -24,7 +24,8 @@ Material:
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3} m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_Parent: {fileID: 0} m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0 m_ModifiedSerializedProperties: 0
m_ValidKeywords: [] m_ValidKeywords:
- _SPECULAR_SETUP
m_InvalidKeywords: [] m_InvalidKeywords: []
m_LightmapFlags: 4 m_LightmapFlags: 4
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
@ -125,7 +126,7 @@ Material:
- _SrcBlend: 1 - _SrcBlend: 1
- _SrcBlendAlpha: 1 - _SrcBlendAlpha: 1
- _Surface: 0 - _Surface: 0
- _WorkflowMode: 1 - _WorkflowMode: 0
- _ZWrite: 1 - _ZWrite: 1
m_Colors: m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1} - _BaseColor: {r: 1, g: 1, b: 1, a: 1}

BIN
Assets/prefab/X_Room_03_04-03-18-002 - Copy.glb (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,28 @@
fileFormatVersion: 2
guid: 64f02ec20ac9fdd4380473c8e55ef1a3
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 715df9372183c47e389bb6e19fbc3b52, type: 3}
editorImportSettings:
generateSecondaryUVSet: 0
importSettings:
nodeNameMethod: 1
animationMethod: 2
generateMipMaps: 1
texturesReadable: 0
defaultMinFilterMode: 9729
defaultMagFilterMode: 9729
anisotropicFilterLevel: 1
instantiationSettings:
mask: -1
layer: 0
skinUpdateWhenOffscreen: 1
lightIntensityFactor: 1
sceneObjectCreation: 2
assetDependencies: []
reportItems: []

BIN
Assets/prefab/futuristic _Room_04-03-06-003 1.glb (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,44 @@
fileFormatVersion: 2
guid: f6977c589cb082d4e8bf12562bd53072
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 715df9372183c47e389bb6e19fbc3b52, type: 3}
editorImportSettings:
generateSecondaryUVSet: 0
importSettings:
nodeNameMethod: 1
animationMethod: 2
generateMipMaps: 1
texturesReadable: 0
defaultMinFilterMode: 9729
defaultMagFilterMode: 9729
anisotropicFilterLevel: 1
instantiationSettings:
mask: -1
layer: 0
skinUpdateWhenOffscreen: 1
lightIntensityFactor: 1
sceneObjectCreation: 2
assetDependencies: []
reportItems:
- type: 2
code: 20
messages:
- KHR_materials_emissive_strength
- type: 2
code: 20
messages:
- KHR_materials_specular
- type: 2
code: 20
messages:
- KHR_materials_anisotropy
- type: 2
code: 20
messages:
- KHR_materials_ior

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6c6741f5c5b329c429891ab79ca7f8fc
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2800000
userData:
assetBundleName:
assetBundleVariant:

BIN
Assets/tablet.prefab (Stored with Git LFS)

Binary file not shown.

View File

@ -56,7 +56,7 @@ public class tabletManager : NetworkBehaviour
{ {
if (!Object.HasStateAuthority) if (!Object.HasStateAuthority)
return; return;
Debug.Log("video link: "+ApiConnection.instance.videoLinks[int.Parse(i.name)]);
GetComponent<VideoPlayerManager>().Show(ApiConnection.instance.videoLinks[int.Parse(i.name)]); GetComponent<VideoPlayerManager>().Show(ApiConnection.instance.videoLinks[int.Parse(i.name)]);
// ConnectionManager.instance.CreateVideo(itemPlace, video, ApiConnection.instance.videoLinks[int.Parse(i.name)]); // ConnectionManager.instance.CreateVideo(itemPlace, video, ApiConnection.instance.videoLinks[int.Parse(i.name)]);
} }

View File

@ -1,40 +1,42 @@
using UnityEngine; using UnityEngine;
using UnityEngine.UI; using UnityEngine.UI;
using UnityEngine.Video; using UnityEngine.Video;
using UnityEngine.EventSystems;
using Fusion; using Fusion;
using System.Collections.Generic;
using System.Collections; using System.Collections;
using System.Collections.Generic;
public class VideoPlayerManager : NetworkBehaviour public class VideoPlayerManager : NetworkBehaviour
{ {
public VideoPlayer videoPlayer; public VideoPlayer videoPlayer;
public RawImage raw;
public Material sample;
public GameObject loadingScreen;
public Slider videoSlider;
public Image play;
public GameObject cast;
public Transform startPoint;
public Transform Player;
private GameObject nearestTV; private GameObject nearestTV;
public float detectionRadius = 4f; public float detectionRadius = 4f;
public LineRenderer lineRenderer; public LineRenderer lineRenderer;
public Transform startPoint;
public Image play;
public GameObject cast;
public Slider videoSlider;
private float lastSyncTime = 0f; private float lastSyncTime = 0f;
private bool isDraggingSlider = false;
public string videoUrl; public string videoUrl;
public Material sample; [Networked]
private bool isPlaying { get; set; }
[Networked] [Networked]
private bool isPlaying { get; set; } // همگام‌سازی وضعیت پخش private float videoTime { get; set; }
[Networked]
private float videoTime { get; set; } // همگام‌سازی زمان ویدیو
void Start() void Start()
{ {
if (videoPlayer == null) if (videoPlayer == null)
videoPlayer = GetComponent<VideoPlayer>(); videoPlayer = GetComponent<VideoPlayer>();
videoPlayer.loopPointReached += OnVideoFinished; videoPlayer.loopPointReached += OnVideoFinished;
if (lineRenderer == null) if (lineRenderer == null)
@ -46,40 +48,41 @@ public class VideoPlayerManager : NetworkBehaviour
lineRenderer.material = new Material(Shader.Find("Sprites/Default")); lineRenderer.material = new Material(Shader.Find("Sprites/Default"));
lineRenderer.material.color = Color.yellow; lineRenderer.material.color = Color.yellow;
} }
raw.material = new Material(sample); raw.material = new Material(sample);
RenderTexture renderTexture = new RenderTexture(1920, 1080, 16); RenderTexture renderTexture = new RenderTexture(1920, 1080, 16);
videoPlayer.targetTexture = renderTexture; videoPlayer.targetTexture = renderTexture;
raw.texture = renderTexture; raw.texture = renderTexture;
// Slider drag listeners
AddSliderDragHandlers();
videoSlider.onValueChanged.AddListener(OnSliderValueChanged);
} }
public GameObject loadingScreen;
void Update() void Update()
{ {
if (videoPlayer.isPlaying) if (!isDraggingSlider && videoPlayer.isPlaying)
{ {
videoSlider.value = (float)videoPlayer.time; videoSlider.value = (float)videoPlayer.time;
} }
play.color = videoPlayer.isPlaying ? Color.green : Color.white; play.color = videoPlayer.isPlaying ? Color.green : Color.white;
cast.SetActive(nearestTV); cast.SetActive(nearestTV);
FindNearestTV(); FindNearestTV();
if (nearestTV != null)
{
DrawCurvedLine();
}
else
{
lineRenderer.enabled = false;
}
// بررسی وضعیت پخش ویدیو در کلاینت‌ها if (nearestTV != null)
DrawCurvedLine();
else
lineRenderer.enabled = false;
// Sync play state
if (videoPlayer.isPlaying != isPlaying) if (videoPlayer.isPlaying != isPlaying)
{ {
if (isPlaying) if (isPlaying)
{
StartCoroutine(StartVideo()); StartCoroutine(StartVideo());
} else
else videoPlayer.Pause(); videoPlayer.Pause();
} }
} }
@ -89,16 +92,15 @@ public class VideoPlayerManager : NetworkBehaviour
while (!videoPlayer.isPrepared) while (!videoPlayer.isPrepared)
{ {
yield return null; yield return null;
// آپدیت کردن نوار پیشرفت
// progressBar.value = (float)(videoPlayer.frame / (double)videoPlayer.frameCount);
} }
// وقتی ویدئو آماده بود، صفحه لودینگ را مخفی کرده و پخش ویدئو را آغاز می‌کنیم
loadingScreen.SetActive(false); loadingScreen.SetActive(false);
videoSlider.minValue = 0;
videoSlider.maxValue = (float)videoPlayer.length;
videoPlayer.Play(); videoPlayer.Play();
} }
// اسلایدر برای کنترل موقعیت ویدئو
public void send() public void send()
{ {
@ -106,9 +108,9 @@ public class VideoPlayerManager : NetworkBehaviour
{ {
Play(); Play();
InvokeRepeating(nameof(SyncVideoTime), 5f, 5f); InvokeRepeating(nameof(SyncVideoTime), 5f, 5f);
}
}
}
}
public void Cast() public void Cast()
{ {
if (Object.HasStateAuthority && nearestTV != null) if (Object.HasStateAuthority && nearestTV != null)
@ -116,38 +118,29 @@ public class VideoPlayerManager : NetworkBehaviour
RPC_SetScreenTexture(Object.Id, nearestTV.GetComponent<NetworkObject>().Id); RPC_SetScreenTexture(Object.Id, nearestTV.GetComponent<NetworkObject>().Id);
} }
} }
public void Play() public void Play()
{ {
if (Object.HasStateAuthority) if (Object.HasStateAuthority)
{
RPC_TogglePlayPause(videoUrl); RPC_TogglePlayPause(videoUrl);
} }
public Transform Player; }
[Rpc(RpcSources.All, RpcTargets.All)] [Rpc(RpcSources.All, RpcTargets.All)]
private void RPC_TogglePlayPause(string url) private void RPC_TogglePlayPause(string url)
{ {
videoUrl = url; videoUrl = url;
if (!string.IsNullOrEmpty(videoUrl) && url != videoPlayer.url) if (!string.IsNullOrEmpty(videoUrl) && url != videoPlayer.url)
{ {
Player.parent.gameObject.SetActive(true); Player.parent.gameObject.SetActive(true);
Player.gameObject.SetActive(true); Player.gameObject.SetActive(true);
videoSlider.minValue = 0;
videoSlider.maxValue = (float)videoPlayer.length;
videoSlider.onValueChanged.RemoveAllListeners();
// در صورتی که اسلایدر تغییر کند، موقعیت ویدئو تغییر می‌کند
videoSlider.onValueChanged.AddListener(OnSliderValueChanged);
loadingScreen.SetActive(true); loadingScreen.SetActive(true);
videoPlayer.url = videoUrl; videoPlayer.url = videoUrl;
} }
isPlaying = !isPlaying; isPlaying = !isPlaying;
videoTime = (float)videoPlayer.time; videoTime = (float)videoPlayer.time;
RPC_SyncVideoState(isPlaying, videoTime); RPC_SyncVideoState(isPlaying, videoTime);
@ -160,6 +153,7 @@ public class VideoPlayerManager : NetworkBehaviour
videoTime = syncTime; videoTime = syncTime;
videoPlayer.time = syncTime; videoPlayer.time = syncTime;
if (isPlaying) videoPlayer.Play(); if (isPlaying) videoPlayer.Play();
else videoPlayer.Pause(); else videoPlayer.Pause();
} }
@ -183,22 +177,15 @@ public class VideoPlayerManager : NetworkBehaviour
if (tv.GetComponent<NetworkObject>().Id == tvId) if (tv.GetComponent<NetworkObject>().Id == tvId)
{ {
RawImage tvScreen = tv.GetComponentInChildren<RawImage>(); RawImage tvScreen = tv.GetComponentInChildren<RawImage>();
// AudioSource audio = tv.GetComponentInChildren<AudioSource>();
if (tvScreen != null) if (tvScreen != null)
{ {
tvScreen.texture = raw.texture; tvScreen.texture = raw.texture;
tvScreen.material = raw.material; tvScreen.material = raw.material;
//if (audio)
//{
// audio.clip = GetComponent<AudioSource>().clip;
// audio.Play();
//}
} }
} }
} }
} }
public RawImage raw;
private void FindNearestTV() private void FindNearestTV()
{ {
GameObject[] tvObjects = GameObject.FindGameObjectsWithTag("tv"); GameObject[] tvObjects = GameObject.FindGameObjectsWithTag("tv");
@ -248,8 +235,42 @@ public class VideoPlayerManager : NetworkBehaviour
videoUrl = u; videoUrl = u;
Invoke("send", 1); Invoke("send", 1);
} }
void OnSliderValueChanged(float value)
public void OnSliderValueChanged(float value)
{
if (isDraggingSlider)
{ {
videoPlayer.time = value; videoPlayer.time = value;
} }
} }
private void AddSliderDragHandlers()
{
EventTrigger trigger = videoSlider.gameObject.GetComponent<EventTrigger>();
if (trigger == null)
trigger = videoSlider.gameObject.AddComponent<EventTrigger>();
trigger.triggers = new List<EventTrigger.Entry>();
// Pointer Down
EventTrigger.Entry entryDown = new EventTrigger.Entry();
entryDown.eventID = EventTriggerType.PointerDown;
entryDown.callback.AddListener((data) => { isDraggingSlider = true; });
trigger.triggers.Add(entryDown);
// Pointer Up
EventTrigger.Entry entryUp = new EventTrigger.Entry();
entryUp.eventID = EventTriggerType.PointerUp;
entryUp.callback.AddListener((data) =>
{
isDraggingSlider = false;
if (Object.HasStateAuthority)
{
videoTime = (float)videoPlayer.time;
RPC_SyncVideoState(isPlaying, videoTime);
}
});
trigger.triggers.Add(entryUp);
}
}

View File

@ -1,6 +1,7 @@
using System; using System;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using Fusion;
using SimpleJSON; using SimpleJSON;
using UnityEngine; using UnityEngine;
using UnityEngine.Networking; using UnityEngine.Networking;
@ -224,6 +225,68 @@ public class webservice : MonoBehaviour
onComplete?.Invoke(null); onComplete?.Invoke(null);
} }
} }
public IEnumerator GetUserMeetings(Action<MeetingResponse> onComplete)
{
string url = "http://194.62.43.230:8000/get_user_meetings";
lastError = null;
lastErrorResponse = null;
UnityWebRequest www = UnityWebRequest.Get(url);
www.SetRequestHeader("Authorization", "token " + EN.instance.Me.token);
yield return www.SendWebRequest();
if (www.result == UnityWebRequest.Result.Success)
{
Debug.Log("Meetings Response: " + www.downloadHandler.text);
var response = JsonUtility.FromJson<MeetingResponse>(www.downloadHandler.text);
onComplete?.Invoke(response);
}
else
{
HandleRequestError(www);
onComplete?.Invoke(null);
}
}
public IEnumerator GetSpaces(Action<SpaceResponse> onComplete)
{
UnityWebRequest request = UnityWebRequest.Get("http://194.62.43.230:8000/get_space");
request.SetRequestHeader("Authorization", "token " + EN.instance.Me.token);
yield return request.SendWebRequest();
if (request.result == UnityWebRequest.Result.Success)
{
string json = request.downloadHandler.text;
Debug.Log("Spaces Response: " + json);
SpaceResponse response = JsonUtility.FromJson<SpaceResponse>(json);
EN.instance.spaces = response.spaces;
Debug.Log("Spaces loaded: " + EN.instance.spaces.Count);
}
else
{
Debug.LogError("Failed to fetch spaces: " + request.error);
}
}
private void HandleRequestError(UnityWebRequest www)
{
try
{
lastErrorResponse = JsonUtility.FromJson<ErrorResponse>(www.downloadHandler.text);
lastError = lastErrorResponse.message;
Debug.LogError($"API Error: Status={lastErrorResponse.status}, Message={lastErrorResponse.message}");
}
catch
{
lastError = www.error;
Debug.LogError("Network Error: " + www.error);
}
}
} }
[System.Serializable] [System.Serializable]
@ -323,3 +386,61 @@ public class User
EN.instance.Print(response.last_name); EN.instance.Print(response.last_name);
} }
} }
[Serializable]
public class MeetingResponse
{
public List<Meeting> meetings;
}
[Serializable]
public class Meeting
{
public int id;
public string name;
public string description;
public string date_time;
public int creator_user;
public bool use_space;
public int space;
public int asset_bundle;
public AssetBundleRoom asset_bundle_data;
public List<InvitedUser> invited_users;
}
[Serializable]
public class InvitedUser
{
public int id;
public string username;
public string email;
public Customer customer;
}
[System.Serializable]
public class SpaceResponse
{
public List<UserSpace> spaces;
}
[System.Serializable]
public class UserSpace
{
public int id;
public string name;
public string description;
public int capacity;
public int userId;
public AssetBundleRoom assetBundleRoomId;
}
[System.Serializable]
public class AssetBundleRoom
{
public int id;
public string url;
public string name;
public string description;
public int maxPerson;
public string img;
public bool Private;
}

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