Compare commits

6 Commits

Author SHA1 Message Date
raccoon
aa0b1b6c8a Some shit i dunno 2024-12-17 06:28:48 +05:00
raccoon
91f0193a63 Wtf? 2024-11-08 14:34:04 +05:00
raccoon
0907ca5c54 Almost there 2024-11-07 23:08:02 +05:00
raccoon
c93b0a00ba Better solution 2024-11-07 21:27:04 +05:00
raccoon
a5772b2c5d Created interior imposter reflection shader 2024-11-07 20:57:39 +05:00
raccoon
4506926908 Updated .gitattributes and .gitignore 2024-11-03 18:38:55 +05:00
16 changed files with 14081 additions and 81 deletions

43
.gitattributes vendored
View File

@@ -5,6 +5,8 @@
*.asmdef text eol=lf
*.asset text eol=lf
*.controller text eol=lf
*.cubemap text eol=lf
*.flare text eol=lf
*.json text eol=lf
*.mat text eol=lf
*.meta text eol=lf
@@ -24,20 +26,30 @@
*.shader text eol=crlf
*.sln text eol=crlf
# Documents
*.pdf filter=lfs diff=lfs merge=lfs -text
# Blender
*.blend filter=lfs diff=lfs merge=lfs -text
# 3ds Max
*.3ds filter=lfs diff=lfs merge=lfs -text
*.max filter=lfs diff=lfs merge=lfs -text
# Maya
*.ma text eol=lf
*.mb filter=lfs diff=lfs merge=lfs -text
# Substance Painter/Designer
.sbs text eol=lf
.sbsar filter=lfs diff=lfs merge=lfs -text
.spp filter=lfs diff=lfs merge=lfs -text
.spsm filter=lfs diff=lfs merge=lfs -text
# Modo
*.lxo filter=lfs diff=lfs merge=lfs -text
# Filmbox
# Substance Painter/Designer
*.sbs text eol=lf
*.sbsar filter=lfs diff=lfs merge=lfs -text
*.spp filter=lfs diff=lfs merge=lfs -text
*.spsm filter=lfs diff=lfs merge=lfs -text
# Filmbox (FBX)
# *your mileage may vary, since .fbx can be either in binary or ascii
*.fbx text eol=lf
# *.fbx filter=lfs diff=lfs merge=lfs -text
@@ -47,11 +59,19 @@
*.glb filter=lfs diff=lfs merge=lfs -text
*.bin filter=lfs diff=lfs merge=lfs -text
# OBJ
*.obj text eol=lf
# Images
*.bmp filter=lfs diff=lfs merge=lfs -text
*.exr filter=lfs diff=lfs merge=lfs -text
*.gif filter=lfs diff=lfs merge=lfs -text
*.hdr filter=lfs diff=lfs merge=lfs -text
*.ico filter=lfs diff=lfs merge=lfs -text
*.jpeg filter=lfs diff=lfs merge=lfs -text
*.jpg filter=lfs diff=lfs merge=lfs -text
*.pdn filter=lfs diff=lfs merge=lfs -text
*.pfm filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.psd filter=lfs diff=lfs merge=lfs -text
*.tga filter=lfs diff=lfs merge=lfs -text
@@ -67,7 +87,18 @@
*.webm filter=lfs diff=lfs merge=lfs -text
# Sound
*.mid filter=lfs diff=lfs merge=lfs -text
*.midi filter=lfs diff=lfs merge=lfs -text
*.mp3 filter=lfs diff=lfs merge=lfs -text
*.ogg filter=lfs diff=lfs merge=lfs -text
*.opus filter=lfs diff=lfs merge=lfs -text
*.wav filter=lfs diff=lfs merge=lfs -text
# Binaries
*.dll filter=lfs diff=lfs merge=lfs -text
*.exe filter=lfs diff=lfs merge=lfs -text
# Shell scripts
*.bat text eol=crlf
*.cmd text eol=crlf
*.sh text eol=lf

1
.gitignore vendored
View File

@@ -99,6 +99,7 @@ crashlytics-build.properties
# OpenXR stuff
/[Aa]ssets/XR
/[Aa]ssets/XR.meta
/[Pp]roject[Ss]ettings/EditorBuildSettings.asset
# Trash stuff
*_cache.txt

View File

@@ -0,0 +1,98 @@
%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: window-imposter 1
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _SPECULARHIGHLIGHTS_OFF
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Cube:
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}
- _ReflectionTex:
m_Texture: {fileID: 8900000, guid: e94407d99ad43d5498f783d6554efd1a, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 1
- _GlossyReflections: 1
- _Metallic: 1
- _Mode: 0
- _OcclusionStrength: 1
- _Opacity: 1
- _Parallax: 0.02
- _ReflectionIntensity: 1
- _Roughness: 0
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 0
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _ReflectionProbeBoxMax: {r: 0, g: 0, b: 0, a: 0}
- _ReflectionProbeBoxMin: {r: 0, g: 0, b: 0, a: 0}
- _ReflectionProbePosition: {r: 0, g: 0, b: 0, a: 0}
m_BuildTextureStacks: []

View File

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

View File

@@ -8,12 +8,12 @@ Material:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: window-imposter
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_Shader: {fileID: 4800000, guid: 6e36733ecafa0ce46b70364ace1c77f0, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
m_ValidKeywords: []
m_InvalidKeywords:
- _SPECULARHIGHLIGHTS_OFF
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
@@ -28,6 +28,10 @@ Material:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Cube:
m_Texture: {fileID: 8900000, guid: 04e5871579983f6469e251272aff60ad, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
@@ -60,6 +64,14 @@ Material:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ReflectionTex:
m_Texture: {fileID: 8900000, guid: e94407d99ad43d5498f783d6554efd1a, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _BumpScale: 1
@@ -72,7 +84,10 @@ Material:
- _Metallic: 1
- _Mode: 0
- _OcclusionStrength: 1
- _Opacity: 0
- _Parallax: 0.02
- _ReflectionIntensity: 1
- _Roughness: 0
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 0
- _SrcBlend: 1
@@ -81,4 +96,9 @@ Material:
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _ReflectColor: {r: 1, g: 1, b: 1, a: 0.5}
- _ReflectionProbeBoxMax: {r: 0, g: 0, b: 0, a: 0}
- _ReflectionProbeBoxMin: {r: 0, g: 0, b: 0, a: 0}
- _ReflectionProbePosition: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 1, g: 1, b: 1, a: 1}
m_BuildTextureStacks: []

View File

@@ -825,8 +825,8 @@ OcclusionPortal:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 858163621}
m_Open: 0
m_Center: {x: 0, y: 0, z: 0}
m_Size: {x: 16, y: 1.0000004, z: 3.1999996}
m_Center: {x: 0, y: 0.45, z: 0}
m_Size: {x: 16, y: 0.1, z: 3.1999996}
--- !u!41 &858163626
OcclusionPortal:
m_ObjectHideFlags: 0

View File

@@ -174,13 +174,13 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 49341029}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068}
m_LocalPosition: {x: -0.5, y: 0, z: 0}
m_LocalScale: {x: 3.2, y: 3.2, z: 3.2}
m_ConstrainProportionsScale: 0
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 8, y: 3, z: 27.2}
m_LocalScale: {x: 3, y: 3, z: 3}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 1847783282}
m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!23 &49341031
MeshRenderer:
m_ObjectHideFlags: 0
@@ -195,7 +195,7 @@ MeshRenderer:
m_StaticShadowCaster: 0
m_MotionVectors: 2
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_ReflectionProbeUsage: 3
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
@@ -206,7 +206,7 @@ MeshRenderer:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_ProbeAnchor: {fileID: 85122258}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
@@ -326,7 +326,7 @@ ReflectionProbe:
m_Mode: 0
m_RefreshMode: 0
m_TimeSlicingMode: 0
m_Resolution: 128
m_Resolution: 512
m_UpdateFrequency: 0
m_BoxSize: {x: 9.6, y: 6.4, z: 9.6}
m_BoxOffset: {x: 0, y: 0, z: -0.0000009536743}
@@ -341,7 +341,7 @@ ReflectionProbe:
m_IntensityMultiplier: 1
m_BlendDistance: 1
m_HDR: 1
m_BoxProjection: 0
m_BoxProjection: 1
m_RenderDynamicObjects: 0
m_UseOcclusionCulling: 1
m_Importance: 1
@@ -406,7 +406,7 @@ ReflectionProbe:
m_IntensityMultiplier: 1
m_BlendDistance: 1
m_HDR: 1
m_BoxProjection: 0
m_BoxProjection: 1
m_RenderDynamicObjects: 0
m_UseOcclusionCulling: 1
m_Importance: 1
@@ -648,6 +648,111 @@ MeshCollider:
m_Convex: 0
m_CookingOptions: 30
m_Mesh: {fileID: -5343522263888663678, guid: eaa9b4e696a29be40911ffa640c38d22, type: 3}
--- !u!1 &432138784
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 432138785}
- component: {fileID: 432138788}
- component: {fileID: 432138787}
- component: {fileID: 432138786}
m_Layer: 0
m_Name: Sphere
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &432138785
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 432138784}
serializedVersion: 2
m_LocalRotation: {x: -0, y: 0.2630566, z: -0, w: 0.96478045}
m_LocalPosition: {x: 3.1190002, y: 0.748, z: 0.68200016}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1847783282}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!135 &432138786
SphereCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 432138784}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Radius: 0.5
m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &432138787
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 432138784}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 193e941aebe1a4f408ba57a79d37fdff, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &432138788
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 432138784}
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!64 &460301988
MeshCollider:
m_ObjectHideFlags: 0
@@ -692,6 +797,89 @@ MeshCollider:
m_Convex: 0
m_CookingOptions: 30
m_Mesh: {fileID: -1812281195186950719, guid: eaa9b4e696a29be40911ffa640c38d22, type: 3}
--- !u!1 &484799010
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 484799013}
- component: {fileID: 484799012}
- component: {fileID: 484799011}
m_Layer: 0
m_Name: Imposter (5)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 20
m_IsActive: 1
--- !u!23 &484799011
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 484799010}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 0
m_StaticShadowCaster: 0
m_MotionVectors: 2
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 3
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 193e941aebe1a4f408ba57a79d37fdff, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 1175776372}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &484799012
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 484799010}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &484799013
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 484799010}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 1.6, y: 1.6, z: 9.6}
m_LocalScale: {x: 3.2000003, y: 3.2000003, z: 3.2000003}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &510754355
GameObject:
m_ObjectHideFlags: 0
@@ -719,7 +907,7 @@ Transform:
m_GameObject: {fileID: 510754355}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0.7071068, z: 0, w: 0.7071068}
m_LocalPosition: {x: -0.5, y: 0, z: 0}
m_LocalPosition: {x: 0.898, y: 0, z: 0.091}
m_LocalScale: {x: 3.2, y: 3.2, z: 3.2}
m_ConstrainProportionsScale: 0
m_Children: []
@@ -739,7 +927,7 @@ MeshRenderer:
m_StaticShadowCaster: 0
m_MotionVectors: 2
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 1
m_ReflectionProbeUsage: 3
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
@@ -3476,6 +3664,89 @@ MeshCollider:
m_Convex: 0
m_CookingOptions: 30
m_Mesh: {fileID: -8700463308124579911, guid: eaa9b4e696a29be40911ffa640c38d22, type: 3}
--- !u!1 &1042797723
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1042797726}
- component: {fileID: 1042797725}
- component: {fileID: 1042797724}
m_Layer: 0
m_Name: Imposter (2)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 20
m_IsActive: 1
--- !u!23 &1042797724
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1042797723}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 0
m_StaticShadowCaster: 0
m_MotionVectors: 2
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 3
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 193e941aebe1a4f408ba57a79d37fdff, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 85122258}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &1042797725
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1042797723}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1042797726
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1042797723}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 4.8, y: 1.6, z: 32}
m_LocalScale: {x: 3.2000003, y: 3.2000003, z: 3.2000003}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1043648942
GameObject:
m_ObjectHideFlags: 0
@@ -3651,7 +3922,7 @@ Camera:
height: 1
near clip plane: 0.3
far clip plane: 1000
field of view: 60
field of view: 53.414112
orthographic: 0
orthographic size: 5
m_Depth: -1
@@ -3677,13 +3948,96 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1069902874}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0.7459082, z: -0, w: 0.6660489}
m_LocalPosition: {x: 6.07, y: 1.679, z: 14.27}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 4.043, y: 1.679, z: 28.683}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 623.526, z: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1112270837
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1112270840}
- component: {fileID: 1112270839}
- component: {fileID: 1112270838}
m_Layer: 0
m_Name: Imposter (3)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 20
m_IsActive: 1
--- !u!23 &1112270838
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1112270837}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 0
m_StaticShadowCaster: 0
m_MotionVectors: 2
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 3
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 193e941aebe1a4f408ba57a79d37fdff, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 1175776372}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &1112270839
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1112270837}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1112270840
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1112270837}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -1.6000004, y: 3, z: 1.6000004}
m_LocalScale: {x: 3, y: 3, z: 3}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1132566213
GameObject:
m_ObjectHideFlags: 0
@@ -4112,6 +4466,89 @@ MeshCollider:
m_Convex: 0
m_CookingOptions: 30
m_Mesh: {fileID: 7060625991244249409, guid: eaa9b4e696a29be40911ffa640c38d22, type: 3}
--- !u!1 &1342410049
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1342410052}
- component: {fileID: 1342410051}
- component: {fileID: 1342410050}
m_Layer: 0
m_Name: Imposter (4)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 20
m_IsActive: 1
--- !u!23 &1342410050
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1342410049}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 0
m_StaticShadowCaster: 0
m_MotionVectors: 2
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 3
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: f2edfab9d77276b49a6864f47221399e, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 1175776372}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &1342410051
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1342410049}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1342410052
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1342410049}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 1.3999996, y: 3, z: 1.6000004}
m_LocalScale: {x: 3, y: 3, z: 3}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1349455895 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 1473995832510647244, guid: eaa9b4e696a29be40911ffa640c38d22,
@@ -4862,6 +5299,89 @@ MeshCollider:
m_Convex: 0
m_CookingOptions: 30
m_Mesh: {fileID: 5008914253443777873, guid: eaa9b4e696a29be40911ffa640c38d22, type: 3}
--- !u!1 &1621275486
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1621275489}
- component: {fileID: 1621275488}
- component: {fileID: 1621275487}
m_Layer: 0
m_Name: Imposter (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 20
m_IsActive: 1
--- !u!23 &1621275487
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1621275486}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 0
m_StaticShadowCaster: 0
m_MotionVectors: 2
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 3
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: f2edfab9d77276b49a6864f47221399e, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 85122258}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &1621275488
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1621275486}
m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1621275489
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1621275486}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 11, y: 3, z: 27.2}
m_LocalScale: {x: 3, y: 3, z: 3}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1632003637
GameObject:
m_ObjectHideFlags: 0
@@ -6762,8 +7282,8 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 49341030}
- {fileID: 510754356}
- {fileID: 432138785}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1847783283
@@ -7385,4 +7905,10 @@ SceneRoots:
- {fileID: 2102237736}
- {fileID: 67636942}
- {fileID: 1632003640}
- {fileID: 49341030}
- {fileID: 1112270840}
- {fileID: 484799013}
- {fileID: 1042797726}
- {fileID: 1621275489}
- {fileID: 1342410052}
- {fileID: 1847783282}

File diff suppressed because it is too large Load Diff

View File

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

View File

@@ -0,0 +1,73 @@
// Original code from https://gist.github.com/josephbk117/a43f5335cea9b3e12a44f196dc81f30f
Shader "Custom/InteriorReflectionShader"
{
Properties
{
// TODO: Implement me!
_Opacity("Opacity", Range(0.0, 1.0)) = 1.0
}
SubShader
{
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
float _Opacity; // TODO: Implement me!
struct appdata
{
float4 vertex : POSITION;
float3 normal : NORMAL;
};
struct v2f
{
float3 worldPos : TEXCOORD0;
float3 worldNormal : TEXCOORD1;
float4 pos : SV_POSITION;
};
v2f vert (appdata v)
{
v2f o;
o.pos = UnityObjectToClipPos(v.vertex);
o.worldPos = mul(unity_ObjectToWorld, v.vertex).xyz;
o.worldNormal = UnityObjectToWorldNormal(v.normal);
return o;
}
// ChatGPT snippet
float3 BoxProjectReflectionDir(float3 worldPos, float3 worldRefl)
{
// Calculate relative position within the box
float3 boxMin = unity_SpecCube0_BoxMin.xyz;
float3 boxMax = unity_SpecCube0_BoxMax.xyz;
float3 boxCenter = 0.5 * (boxMin + boxMax);
float3 boxSize = boxMax - boxMin;
float3 localPos = worldPos - boxCenter;
float3 absLocalRefl = abs(worldRefl);
// Scale the reflection vector based on which side of the box it hits
float3 scale = boxSize / absLocalRefl;
float scaleMin = min(min(scale.x, scale.y), scale.z);
return localPos + worldRefl * scaleMin;
}
fixed4 frag (v2f i) : SV_Target
{
half3 worldViewDir = normalize(UnityWorldSpaceViewDir(i.worldPos)); // Direction of ray from the camera towards the object surface
half3 reflection = reflect(-worldViewDir, i.worldNormal); // Direction of ray after hitting the surface of object
reflection = BoxProjectReflectionDir(i.worldPos, reflection);
half4 skyData = UNITY_SAMPLE_TEXCUBE(unity_SpecCube0, reflection);
half3 skyColor = DecodeHDR(skyData, unity_SpecCube0_HDR); // This is done becasue the cubemap is stored HDR
return half4(skyColor, 1.0);
}
ENDCG
}
}
}

View File

@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 6e36733ecafa0ce46b70364ace1c77f0
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,84 @@
// Original code from https://gist.github.com/josephbk117/a43f5335cea9b3e12a44f196dc81f30f
Shader "Custom/InteriorReflectionShader"
{
Properties
{
_Glossiness ("Smoothness", Range(0,1)) = 0.8
_ReflectionProbePosition ("Reflection Probe Position", Vector) = (0,0,0,0)
_ReflectionProbeBoxMin ("Box Min", Vector) = (0,0,0,0)
_ReflectionProbeBoxMax ("Box Max", Vector) = (0,0,0,0)
}
SubShader
{
Tags { "RenderType"="Opaque" }
LOD 200
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
#include "UnityStandardUtils.cginc"
struct appdata
{
float4 vertex : POSITION;
float3 normal : NORMAL;
};
struct v2f
{
float4 pos : SV_POSITION;
float3 worldNormal : TEXCOORD0;
float3 worldPos : TEXCOORD1;
};
float4 _ReflectionProbePosition;
float4 _ReflectionProbeBoxMin;
float4 _ReflectionProbeBoxMax;
half _Glossiness;
v2f vert (appdata v)
{
v2f o;
o.pos = UnityObjectToClipPos(v.vertex);
o.worldNormal = UnityObjectToWorldNormal(v.normal);
o.worldPos = mul(unity_ObjectToWorld, v.vertex).xyz;
return o;
}
float3 BoxProjectReflectionDir(float3 worldPos, float3 worldRefl)
{
// Calculate relative position within the box
float3 boxMin = _ReflectionProbeBoxMin.xyz;
float3 boxMax = _ReflectionProbeBoxMax.xyz;
float3 boxCenter = 0.5 * (boxMin + boxMax);
float3 boxSize = boxMax - boxMin;
float3 localPos = worldPos - boxCenter;
float3 absLocalRefl = abs(worldRefl);
// Scale the reflection vector based on which side of the box it hits
float3 scale = boxSize / absLocalRefl;
float scaleMin = min(min(scale.x, scale.y), scale.z);
return localPos + worldRefl * scaleMin;
}
fixed4 frag (v2f i) : SV_Target
{
// Get reflection vector
float3 worldViewDir = normalize(_WorldSpaceCameraPos - i.worldPos);
float3 worldRefl = reflect(worldViewDir, i.worldNormal);
// Apply box projection to the reflection vector
float3 projectedReflDir = BoxProjectReflectionDir(i.worldPos, worldRefl);
fixed4 reflectionColor = UNITY_SAMPLE_TEXCUBE(unity_SpecCube0, projectedReflDir);
return reflectionColor;
}
ENDCG
}
}
FallBack "Diffuse"
}

View File

@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: c1a005edb69585b4d83df74c3c4c5ba3
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,10 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1045 &1
EditorBuildSettings:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Scenes: []
m_configObjects:
com.unity.xr.management.loader_settings: {fileID: 11400000, guid: e303a264f042df44299bf35287a4122c,
type: 2}

26
repo-cleanup.cmd Normal file
View File

@@ -0,0 +1,26 @@
@ECHO OFF
TITLE Clean up Unity Project repo
SETLOCAL EnableDelayedExpansion
CALL :cleanup --dry-run || GOTO die
CHOICE /M "Execute"
IF !ERRORLEVEL! NEQ 1 (
ECHO Aborting cleanup...
) ELSE (
CALL :cleanup || GOTO die
ECHO Done.
)
:end
PAUSE
EXIT /B 0
:die
PAUSE
EXIT /B %ERRORLEVEL%
:cleanup
git clean -dfX %* "%~dp0." || EXIT /B
EXIT /B 0

30
repo-cleanup.sh Normal file
View File

@@ -0,0 +1,30 @@
#!/bin/sh
me="$(realpath "$0")"
repository="$(dirname "$me")/."
# I have no mouth but i must scream
if [ ! -t 0 ]; then
if command -v x-terminal-emulator >/dev/null 2>&1; then
x-terminal-emulator -e "$me"
elif command -v xdg-terminal >/dev/null 2>&1; then
xdg-terminal "$me"
else
echo "Run me from the fucking terminal!" >"${me}.README"
exit 1
fi
exit 0
fi
git clean -dfX --dry-run "${repository}"
printf "Execute [Y,N]?"; read -r yn
if [ "$yn" = "${yn#[Yy]}" ] ;then
echo "Aborting cleanup..."
else
git clean -dfX "${repository}"
echo "Done."
fi
printf "Press any key to continue..."; read -r _
exit 0