update scene change

master
uc-hoba 8 years ago
parent 9ce57d32a5
commit 751533edc3
  1. 16
      Unity_2018_Frozen/Assets/Frozen/DayCosineGradient.asset
  2. 10
      Unity_2018_Frozen/Assets/Frozen/DayCosineGradient.asset.meta
  3. 159
      Unity_2018_Frozen/Assets/Frozen/Frozen.unity
  4. 30
      Unity_2018_Frozen/Assets/Frozen/FrozenDayParticleUniforms.asset
  5. 10
      Unity_2018_Frozen/Assets/Frozen/FrozenDayParticleUniforms.asset.meta
  6. 30
      Unity_2018_Frozen/Assets/Frozen/FrozenNightParticleUniforms.asset
  7. 10
      Unity_2018_Frozen/Assets/Frozen/FrozenNightParticleUniforms.asset.meta
  8. 2
      Unity_2018_Frozen/Assets/Frozen/Material/Point.mat
  9. 4
      Unity_2018_Frozen/Assets/Frozen/Material/Snowflake.mat
  10. 7
      Unity_2018_Frozen/Assets/Frozen/Material/Space.mat
  11. 16
      Unity_2018_Frozen/Assets/Frozen/NightCosineGradient.asset
  12. 10
      Unity_2018_Frozen/Assets/Frozen/NightCosineGradient.asset.meta
  13. 2
      Unity_2018_Frozen/Assets/Frozen/Script/DFVolumeParticleUpdater.cs
  14. 51
      Unity_2018_Frozen/Assets/Frozen/Script/SceneController.cs
  15. 13
      Unity_2018_Frozen/Assets/Frozen/Script/SceneController.cs.meta
  16. 3
      Unity_2018_Frozen/Assets/Frozen/Script/SnowflakeParticleUpdater.cs
  17. 3
      Unity_2018_Frozen/Assets/Frozen/Shader/FrozenSpaceMapping.shader
  18. 57
      Unity_2018_Frozen/Assets/Frozen/Shader/FrozenUnlitBlendedTexture.shader
  19. 10
      Unity_2018_Frozen/Assets/Frozen/Shader/FrozenUnlitBlendedTexture.shader.meta
  20. 39
      Unity_2018_Frozen/Assets/Frozen/Shader/FrozenVertexBufferUpdate.compute
  21. 8
      Unity_2018_Frozen/Assets/Frozen/Shader/FrozenVertexBufferUpdate.compute.meta
  22. 25
      Unity_2018_Frozen/Assets/ParticleWorks/Script/BlendedCosineGradient.cs
  23. 13
      Unity_2018_Frozen/Assets/ParticleWorks/Script/BlendedCosineGradient.cs.meta
  24. 28
      Unity_2018_Frozen/Assets/ParticleWorks/Script/UniformBlendedStructuredBuffer.cs
  25. 13
      Unity_2018_Frozen/Assets/ParticleWorks/Script/UniformBlendedStructuredBuffer.cs.meta
  26. 6
      Unity_2018_Frozen/Assets/ParticleWorks/Script/UniformStructuredBuffer.cs

@ -0,0 +1,16 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 54276434dda9c694e85abaf98cdd981d, type: 3}
m_Name: DayCosineGradient
m_EditorClassIdentifier:
_redCoeffs: {x: 0.081, y: 0.054, z: 1.56, w: 0.453}
_greenCoeffs: {x: 0.318, y: 0.237, z: 1.35, w: 0.825}
_blueCoeffs: {x: 0.836, y: 0.131, z: 1.96, w: 0}

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: dc41f63c436894340a6736facd7dd4a9
timeCreated: 1513340684
licenseType: Free
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -205,7 +205,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 5
m_RootOrder: 6
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &145750430
GameObject:
@ -233,7 +233,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 8
m_RootOrder: 9
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &151858420
GameObject:
@ -468,7 +468,7 @@ Transform:
m_Children:
- {fileID: 917676528}
m_Father: {fileID: 0}
m_RootOrder: 13
m_RootOrder: 14
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &350883107
GameObject:
@ -515,8 +515,8 @@ MonoBehaviour:
maxParticles: 262144
particleBuffer: {fileID: 438615022}
shader: {fileID: 7200000, guid: d6604fabdbb13e9428c849c59feccdac, type: 3}
uniformBuffer: {fileID: 441718966}
cosineGradient: {fileID: 11400000, guid: 2138651e11178d04ba510ef9164baf46, type: 2}
uniformBuffer: {fileID: 441718965}
cosineGradient: {fileID: 1167120024}
kinectOpticalFlow: {fileID: 1848145251}
smokeFluidSim: {fileID: 774429923}
particleViewerMesh: {fileID: 776169031}
@ -586,7 +586,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 9
m_RootOrder: 10
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
--- !u!1 &386695295
GameObject:
@ -617,7 +617,7 @@ Transform:
- {fileID: 850228141}
- {fileID: 1848145250}
m_Father: {fileID: 0}
m_RootOrder: 7
m_RootOrder: 8
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &401185750
GameObject:
@ -648,7 +648,7 @@ Transform:
- {fileID: 694714222}
- {fileID: 1553193321}
m_Father: {fileID: 0}
m_RootOrder: 6
m_RootOrder: 7
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &432509337
GameObject:
@ -676,7 +676,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 17
m_RootOrder: 18
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &438615021
GameObject:
@ -768,7 +768,7 @@ RectTransform:
- {fileID: 770059767}
- {fileID: 1774693142}
m_Father: {fileID: 0}
m_RootOrder: 16
m_RootOrder: 17
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
@ -783,7 +783,6 @@ GameObject:
serializedVersion: 5
m_Component:
- component: {fileID: 441718964}
- component: {fileID: 441718966}
- component: {fileID: 441718965}
m_Layer: 0
m_Name: Uniforms
@ -813,23 +812,13 @@ MonoBehaviour:
m_GameObject: {fileID: 441718963}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 799fd07762a67b348818cbe8e6502e21, type: 3}
m_Name:
m_EditorClassIdentifier:
impule: {fileID: 0}
--- !u!114 &441718966
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 441718963}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: de2687c4b3b02dc4ebc0495697f1cfb0, type: 3}
m_Script: {fileID: 11500000, guid: 3b2b572af25338e4594570cf0c8a1806, type: 3}
m_Name:
m_EditorClassIdentifier:
bufferName: uniform_buffer
uniform: {fileID: 11400000, guid: 43a114cac50c03e4ea881a51dbb6e7bd, type: 2}
uniform: {fileID: 11400000, guid: 43473f0506b1ba64c86ae17dd11d902a, type: 2}
subUniform: {fileID: 11400000, guid: 54b82be1afe58664c8daeb575db89094, type: 2}
rate: 0
--- !u!1 &520040865
GameObject:
m_ObjectHideFlags: 0
@ -893,7 +882,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 21
m_RootOrder: 22
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &528715328
GameObject:
@ -1176,7 +1165,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 11
m_RootOrder: 12
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &671544960
GameObject:
@ -1410,8 +1399,9 @@ Transform:
- {fileID: 776169028}
- {fileID: 1035960134}
- {fileID: 441718964}
- {fileID: 1167120023}
m_Father: {fileID: 0}
m_RootOrder: 10
m_RootOrder: 11
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &750667758
GameObject:
@ -1461,7 +1451,7 @@ RectTransform:
m_Children:
- {fileID: 1000268179}
m_Father: {fileID: 0}
m_RootOrder: 19
m_RootOrder: 20
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
@ -1494,7 +1484,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 14
m_RootOrder: 15
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &770059766
GameObject:
@ -1800,7 +1790,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
buffer: {fileID: 438615022}
material: {fileID: 2100000, guid: 0858735f439783448b9cc855a56a9e94, type: 2}
shader: {fileID: 7200000, guid: 226ca53b2a6b1f34cb8e462337683d07, type: 3}
shader: {fileID: 7200000, guid: 12722f65bf7d89d448b703b34b9e4dcb, type: 3}
references: []
--- !u!1 &806122349
GameObject:
@ -2366,6 +2356,49 @@ Transform:
m_Father: {fileID: 0}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
--- !u!1 &1167120022
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 5
m_Component:
- component: {fileID: 1167120023}
- component: {fileID: 1167120024}
m_Layer: 0
m_Name: CosineGradient
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1167120023
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1167120022}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 732632615}
m_RootOrder: 5
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1167120024
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 1167120022}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 47a33aaf81d9cd84190b40b44c73516c, type: 3}
m_Name:
m_EditorClassIdentifier:
fromGradient: {fileID: 11400000, guid: dc41f63c436894340a6736facd7dd4a9, type: 2}
toGradient: {fileID: 11400000, guid: 64901b7b2c93cde4fa631ba16f78157c, type: 2}
rate: 0
--- !u!1 &1227078084
GameObject:
m_ObjectHideFlags: 0
@ -2509,7 +2542,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 15
m_RootOrder: 16
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1390635887
GameObject:
@ -2618,7 +2651,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 12
m_RootOrder: 13
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
--- !u!1 &1553193320
GameObject:
@ -2855,7 +2888,7 @@ RectTransform:
- {fileID: 1227078085}
- {fileID: 2084135710}
m_Father: {fileID: 0}
m_RootOrder: 22
m_RootOrder: 23
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
@ -2967,9 +3000,14 @@ MonoBehaviour:
m_GameObject: {fileID: 1817143146}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fda5366b87aa3934a8e5823faa38f54c, type: 3}
m_Script: {fileID: 11500000, guid: 542c4b2aee71a0142928f8b82f70141f, type: 3}
m_Name:
m_EditorClassIdentifier:
sharingName: UnitySender
textureFormat: 28
yFlip: 1
output: {fileID: 0}
m_Shader: {fileID: 0}
--- !u!20 &1817143148
Camera:
m_ObjectHideFlags: 0
@ -3017,7 +3055,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 18
m_RootOrder: 19
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1817143150
MonoBehaviour:
@ -3361,7 +3399,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 20
m_RootOrder: 21
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &2084135709
GameObject:
@ -3439,6 +3477,53 @@ CanvasRenderer:
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 2084135709}
--- !u!1 &2084936102
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
serializedVersion: 5
m_Component:
- component: {fileID: 2084936104}
- component: {fileID: 2084936103}
m_Layer: 0
m_Name: Frozen
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &2084936103
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 2084936102}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d657b4acfe92b2949ba98770de6f12ad, type: 3}
m_Name:
m_EditorClassIdentifier:
rate: 0
uniform: {fileID: 441718965}
spaceMaterial: {fileID: 2100000, guid: c1451959794f55e4e90241e1720a9e08, type: 2}
snowSize: 0.0164
snowMaterial: {fileID: 2100000, guid: 56457e5f2df74a44c933b2791da81324, type: 2}
cosineGradient: {fileID: 1167120024}
debug: 0
--- !u!4 &2084936104
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 2084936102}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 5
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &2122473686
GameObject:
m_ObjectHideFlags: 0

@ -0,0 +1,30 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 852ced439e5120c44bd352e9c29a164f, type: 3}
m_Name: FrozenDayParticleUniforms
m_EditorClassIdentifier:
numRate: 1
movement: 1
geomSize: 0.556
velocityDamping: 0.85
lifeDuration: 10
lifeVariation: 0
convergence: 0
homeStrength: 0
noiseStrength: 0.055
noiseSeed: 0.5
noiseTimeScale: 1
noiseFrequency: 0.731
forceDirection: {x: 0, y: 0, z: 1}
forceStrength: 0
impulsePosition: {x: 0, y: 0, z: 0}
impulseRadius: 3
impulseStrength: 0.06

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 43473f0506b1ba64c86ae17dd11d902a
timeCreated: 1513320663
licenseType: Free
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,30 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 852ced439e5120c44bd352e9c29a164f, type: 3}
m_Name: FrozenNightParticleUniforms
m_EditorClassIdentifier:
numRate: 1
movement: 1
geomSize: 0.094
velocityDamping: 0.95
lifeDuration: 10
lifeVariation: 0
convergence: 0
homeStrength: 0
noiseStrength: 0.055
noiseSeed: 0.5
noiseTimeScale: 1
noiseFrequency: 0.731
forceDirection: {x: 0, y: 0, z: 1}
forceStrength: 0
impulsePosition: {x: 0, y: 0, z: 0}
impulseRadius: 3
impulseStrength: 0.06

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 54b82be1afe58664c8daeb575db89094
timeCreated: 1513320663
licenseType: Free
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -81,7 +81,7 @@ Material:
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _Size: 0.0164
- _Size: 0.0034641223
- _SmoothnessTextureChannel: 0
- _SoftParticlesEnabled: 0
- _SoftParticlesFarFadeDistance: 1

@ -64,7 +64,7 @@ Material:
- _CameraNearFadeDistance: 1
- _ColorMode: 0
- _Cull: 0
- _Cutoff: 0.5
- _Cutoff: 0.78
- _DetailNormalMapScale: 1
- _DistortionBlend: 0.5
- _DistortionEnabled: 0
@ -91,7 +91,7 @@ Material:
- _ZWrite: 1
m_Colors:
- _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0}
- _Color: {r: 5, g: 5, b: 5, a: 1}
- _Color: {r: 7, g: 7, b: 7, a: 1}
- _ColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0}
- _EmissionColor: {r: 0.787, g: 0.787, b: 0.787, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}

@ -7,7 +7,7 @@ Material:
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Space
m_Shader: {fileID: 10752, guid: 0000000000000000f000000000000000, type: 0}
m_Shader: {fileID: 4800000, guid: 9c06d40e212c2634f84f3f27c34986d2, type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
@ -54,6 +54,10 @@ Material:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SubTex:
m_Texture: {fileID: 2800000, guid: 7ec1ec22e0e868244b68c7c04331baea, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
@ -66,6 +70,7 @@ Material:
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _Rate: 0.21122697
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1

@ -0,0 +1,16 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 54276434dda9c694e85abaf98cdd981d, type: 3}
m_Name: NightCosineGradient
m_EditorClassIdentifier:
_redCoeffs: {x: 0.414, y: 0.14, z: 0.56, w: 0.453}
_greenCoeffs: {x: 0.313, y: 0.177, z: 0.3, w: 0.825}
_blueCoeffs: {x: 0.685, y: 0.282, z: 0.27, w: 0}

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 64901b7b2c93cde4fa631ba16f78157c
timeCreated: 1513340684
licenseType: Free
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

@ -90,7 +90,7 @@ namespace UltraCombos.Frozen
{
shader.SetFloat("timeStep", time_step);
shader.SetFloat("timeValue", Utilities.GetTimeValue());
shader.SetInt("home_count", kinectOpticalFlow.HomeCount);
shader.SetInt("home_count", 0);
shader.SetFloat("bufferCount", particleBuffer.count);
if (cosineGradient != null)

@ -0,0 +1,51 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace UltraCombos.Frozen
{
public class SceneController : MonoBehaviour
{
[Range(0, 1)]
public float rate = 0.0f;
[SerializeField]
UniformBlendedStructuredBuffer uniform;
[SerializeField]
Material spaceMaterial;
[SerializeField, Range(0.0f, 0.1f)]
float snowSize = 0.01f;
[SerializeField]
Material snowMaterial;
[SerializeField]
BlendedCosineGradient cosineGradient;
[SerializeField]
bool debug = false;
private void Start()
{
debug = false;
}
private void Update()
{
if (debug)
{
rate = Mathf.Sin(Time.time * 0.2f) * 0.5f + 0.5f;
}
uniform.rate = rate;
spaceMaterial.SetFloat("_Rate", rate);
snowMaterial.SetFloat("_Size", Mathf.Lerp(0.0f, snowSize, rate));
cosineGradient.rate = rate;
}
}
}

@ -0,0 +1,13 @@
fileFormatVersion: 2
guid: d657b4acfe92b2949ba98770de6f12ad
timeCreated: 1525077442
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

@ -20,7 +20,8 @@ namespace UltraCombos.Frozen
public UniformStructuredBuffer uniformBuffer;
ParticleUniforms uniforms = null;
public Klak.Chromatics.CosineGradient cosineGradient = null;
//public Klak.Chromatics.CosineGradient cosineGradient = null;
public BlendedCosineGradient cosineGradient = null;
bool is_initialized = false;

@ -62,7 +62,7 @@
struct v2f
{
float4 vertex : SV_POSITION;
fixed4 color : COLOR;
//fixed4 color : COLOR;
float2 texcoord : TEXCOORD0;
float4 worldPosition : TEXCOORD1;
UNITY_VERTEX_OUTPUT_STEREO
@ -78,7 +78,6 @@
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT);
OUT.worldPosition = IN.vertex;
OUT.vertex = UnityObjectToClipPos(OUT.worldPosition);
OUT.texcoord = IN.texcoord;
return OUT;

@ -0,0 +1,57 @@
Shader "UltraCombos/Frozen/Unlit/BlendedTexture"
{
Properties
{
_MainTex ("Texture", 2D) = "white" {}
_SubTex ("Texture", 2D) = "white" {}
_Rate ("Rate", Range(0, 1)) = 0
}
SubShader
{
Tags { "RenderType"="Opaque" }
LOD 100
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct appdata
{
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct v2f
{
float2 uv : TEXCOORD0;
float4 vertex : SV_POSITION;
};
sampler2D _MainTex;
float4 _MainTex_ST;
sampler2D _SubTex;
float _Rate;
v2f vert (appdata v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = TRANSFORM_TEX(v.uv, _MainTex);
return o;
}
fixed4 frag (v2f i) : SV_Target
{
fixed4 col = tex2D(_MainTex, i.uv);
fixed4 sub_col = tex2D(_SubTex, i.uv);
fixed3 frag_color = lerp(col.xyz, sub_col.xyz, _Rate);
return fixed4(frag_color, 1.0);
}
ENDCG
}
}
}

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 9c06d40e212c2634f84f3f27c34986d2
timeCreated: 1525078203
licenseType: Free
ShaderImporter:
externalObjects: {}
defaultTextures: []
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,39 @@
#pragma kernel CSMain
#include "UnityCG.cginc"
#include "../../ParticleWorks/Shader/Inc/Defines.cginc"
struct Vertex
{
float3 position;
float3 normal;
float4 color;
float4 uv;
//float2 uv2;
//float4 tangent;
};
RWStructuredBuffer<Particle> ssbo;
RWStructuredBuffer<Vertex> origin_buffer;
RWStructuredBuffer<Vertex> vertex_buffer;
[numthreads(WORK_GROUP_SIZE, 1, 1)]
void CSMain(uint3 id : SV_DispatchThreadID)
{
Vertex o = origin_buffer[id.x];
Vertex v = vertex_buffer[id.x];
int index = o.uv.z;
Particle p = ssbo[index];
v.position = mul(p.model_matrix, float4(o.position, 1)).xyz;
v.normal = mul((float3x3)p.model_matrix, o.normal);
v.color = float4(p.color.rgb, 1.0f);
v.uv = float4(o.uv.xy, 0, 0);
float space_height = 3.0;
float limit_height = 0.1;
v.position.y = saturate(v.position.y / space_height) * limit_height;
vertex_buffer[id.x] = v;
}

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 12722f65bf7d89d448b703b34b9e4dcb
ComputeShaderImporter:
externalObjects: {}
currentAPIMask: 4
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,25 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace UltraCombos
{
public class BlendedCosineGradient : MonoBehaviour
{
[SerializeField]
Klak.Chromatics.CosineGradient fromGradient = null;
[SerializeField]
Klak.Chromatics.CosineGradient toGradient = null;
[Range(0, 1)]
public float rate = 0.0f;
public Vector3 coeffsA { get { return Vector3.Lerp(fromGradient.coeffsA, toGradient.coeffsA, rate); } }
public Vector3 coeffsB { get { return Vector3.Lerp(fromGradient.coeffsB, toGradient.coeffsB, rate); } }
public Vector3 coeffsC2 { get { return Vector3.Lerp(fromGradient.coeffsC2, toGradient.coeffsC2, rate); } }
public Vector3 coeffsD2 { get { return Vector3.Lerp(fromGradient.coeffsD2, toGradient.coeffsD2, rate); } }
}
}

@ -0,0 +1,13 @@
fileFormatVersion: 2
guid: 47a33aaf81d9cd84190b40b44c73516c
timeCreated: 1525079670
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,28 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace UltraCombos
{
public class UniformBlendedStructuredBuffer : UniformStructuredBuffer
{
public ScriptableObject subUniform;
[Range(0, 1)]
public float rate;
protected override void FixedUpdate()
{
var data = GetData(uniform);
var sub_data = GetData(subUniform);
float v = Mathf.Clamp01(rate);
var res = new List<float>();
for (int i = 0; i < data.Count; i++)
{
res.Add(Mathf.Lerp(data[i], sub_data[i], v));
}
SetData(res);
}
}
}

@ -0,0 +1,13 @@
fileFormatVersion: 2
guid: 3b2b572af25338e4594570cf0c8a1806
timeCreated: 1525076508
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

@ -15,13 +15,13 @@ namespace UltraCombos
//Debug.LogFormat("stride: {0}", stride);
}
void FixedUpdate()
protected virtual void FixedUpdate()
{
var data = GetData(uniform);
SetData(data);
}
private int GetStride(System.Type type)
protected int GetStride(System.Type type)
{
int res = 0;
foreach (var field in type.GetFields())
@ -33,7 +33,7 @@ namespace UltraCombos
return res;
}
private List<float> GetData(object obj)
protected List<float> GetData(object obj)
{
List<float> values = new List<float>();
foreach (var field in obj.GetType().GetFields())

Loading…
Cancel
Save