released on steam, adding genedrive

This commit is contained in:
ntr committed 2022-06-03 15:04:50 +10:00
1 parent d36158bc48
commit 373baed62b
42 files changed
+5905 -318

No files matched your search

Binary file not shown.
@@ -0,0 +1,98 @@
fileFormatVersion: 2
guid: 9c39ce62ca6b36f45af28ac4bb70d702
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
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
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
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: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,23 @@
<svg width="292" height="80" viewBox="0 0 292 80" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0)">
<g clip-path="url(#clip1)">
<path d="M61.7958 16.494C57.0736 14.2846 52.0244 12.6789 46.7456 11.7646C46.0973 12.9367 45.3399 14.5132 44.8177 15.7673C39.2062 14.9234 33.6463 14.9234 28.138 15.7673C27.6159 14.5132 26.8413 12.9367 26.1872 11.7646C20.9027 12.6789 15.8477 14.2905 11.1255 16.5057C1.60078 30.8988 -0.981215 44.9344 0.309785 58.7707C6.62708 63.4883 12.7493 66.3541 18.7682 68.2294C20.2543 66.1841 21.5797 64.0099 22.7215 61.7185C20.5469 60.8922 18.4641 59.8725 16.4961 58.6887C17.0182 58.3019 17.5289 57.8975 18.0223 57.4814C30.0257 63.0957 43.0677 63.0957 54.9277 57.4814C55.4269 57.8975 55.9375 58.3019 56.4539 58.6887C54.4801 59.8783 52.3916 60.898 50.217 61.7244C51.3588 64.0099 52.6785 66.19 54.1703 68.2352C60.195 66.3599 66.3229 63.4942 72.6402 58.7707C74.155 42.7309 70.0525 28.8242 61.7958 16.494ZM24.3568 50.2615C20.7535 50.2615 17.7985 46.8976 17.7985 42.8012C17.7985 38.7048 20.6904 35.3351 24.3568 35.3351C28.0233 35.3351 30.9782 38.6989 30.9151 42.8012C30.9208 46.8976 28.0233 50.2615 24.3568 50.2615ZM48.5932 50.2615C44.9899 50.2615 42.0349 46.8976 42.0349 42.8012C42.0349 38.7048 44.9267 35.3351 48.5932 35.3351C52.2596 35.3351 55.2146 38.6989 55.1515 42.8012C55.1515 46.8976 52.2596 50.2615 48.5932 50.2615Z" fill="white"/>
<path d="M98.0293 26.1707H113.693C117.469 26.1707 120.659 26.7743 123.276 27.9757C125.886 29.177 127.843 30.8531 129.14 32.998C130.436 35.1429 131.09 37.5984 131.09 40.3645C131.09 43.072 130.413 45.5275 129.059 47.7251C127.705 49.9286 125.645 51.6692 122.874 52.9526C120.103 54.236 116.671 54.8806 112.569 54.8806H98.0293V26.1707ZM112.408 47.5845C114.95 47.5845 116.907 46.934 118.272 45.6388C119.638 44.3378 120.321 42.568 120.321 40.3235C120.321 38.243 119.712 36.5845 118.496 35.3421C117.28 34.0997 115.438 33.4727 112.976 33.4727H108.076V47.5845H112.408Z" fill="white"/>
<path d="M154.541 54.8456C152.372 54.2713 150.415 53.4391 148.677 52.3432V45.5335C149.991 46.5707 151.752 47.4264 153.961 48.1003C156.17 48.7684 158.305 49.1024 160.37 49.1024C161.334 49.1024 162.063 48.9735 162.556 48.7156C163.05 48.4578 163.297 48.1472 163.297 47.7897C163.297 47.3795 163.165 47.0396 162.895 46.7641C162.625 46.4887 162.103 46.2601 161.329 46.0667L156.509 44.9591C153.749 44.3028 151.792 43.3944 150.628 42.2282C149.463 41.0678 148.883 39.5441 148.883 37.6571C148.883 36.0689 149.388 34.6918 150.41 33.5138C151.425 32.3359 152.871 31.4275 154.747 30.7887C156.624 30.1441 158.815 29.8218 161.334 29.8218C163.583 29.8218 165.643 30.0679 167.52 30.5602C169.396 31.0525 170.945 31.6795 172.179 32.4472V38.8878C170.916 38.1201 169.47 37.5165 167.818 37.0593C166.171 36.6081 164.479 36.3854 162.734 36.3854C160.215 36.3854 158.959 36.8249 158.959 37.6981C158.959 38.1084 159.154 38.4131 159.544 38.6182C159.934 38.8233 160.651 39.0343 161.69 39.257L165.706 39.9954C168.329 40.4584 170.285 41.273 171.57 42.4333C172.856 43.5937 173.498 45.3108 173.498 47.5846C173.498 50.0752 172.437 52.0502 170.308 53.5153C168.179 54.9804 165.161 55.7129 161.248 55.7129C158.947 55.7071 156.71 55.4199 154.541 54.8456Z" fill="white"/>
<path d="M182.978 53.9839C180.678 52.8352 178.939 51.2764 177.78 49.3073C176.621 47.3382 176.036 45.123 176.036 42.6616C176.036 40.2003 176.638 37.9968 177.843 36.057C179.048 34.1172 180.815 32.5935 183.145 31.4859C185.474 30.3783 188.257 29.8274 191.499 29.8274C195.515 29.8274 198.849 30.6889 201.5 32.4118V39.919C200.565 39.2626 199.474 38.7293 198.229 38.3191C196.984 37.9089 195.653 37.7037 194.23 37.7037C191.74 37.7037 189.795 38.1667 188.389 39.0985C186.983 40.0303 186.278 41.2434 186.278 42.7495C186.278 44.2263 186.96 45.4336 188.326 46.383C189.692 47.3265 191.671 47.8012 194.27 47.8012C195.607 47.8012 196.927 47.6019 198.229 47.2093C199.526 46.8108 200.645 46.3244 201.58 45.75V53.011C198.637 54.816 195.223 55.7185 191.338 55.7185C188.068 55.7068 185.279 55.1325 182.978 53.9839Z" fill="white"/>
<path d="M211.518 53.9841C209.2 52.8355 207.433 51.2649 206.216 49.2665C205 47.2681 204.386 45.0412 204.386 42.5798C204.386 40.1185 204.994 37.9208 206.216 35.9928C207.438 34.0647 209.194 32.5527 211.501 31.4568C213.801 30.3609 216.55 29.8159 219.734 29.8159C222.919 29.8159 225.667 30.3609 227.968 31.4568C230.269 32.5527 232.025 34.053 233.23 35.9693C234.435 37.8857 235.037 40.0833 235.037 42.574C235.037 45.0353 234.435 47.2623 233.23 49.2606C232.025 51.259 230.263 52.8296 227.945 53.9782C225.627 55.1269 222.89 55.7012 219.729 55.7012C216.567 55.7012 213.83 55.1327 211.518 53.9841ZM223.722 46.7055C224.698 45.7093 225.191 44.3907 225.191 42.7498C225.191 41.1089 224.703 39.802 223.722 38.835C222.747 37.8622 221.415 37.3758 219.729 37.3758C218.013 37.3758 216.67 37.8622 215.689 38.835C214.714 39.8079 214.226 41.1089 214.226 42.7498C214.226 44.3907 214.714 45.7093 215.689 46.7055C216.665 47.7018 218.013 48.2058 219.729 48.2058C221.415 48.1999 222.747 47.7018 223.722 46.7055Z" fill="white"/>
<path d="M259.17 31.3395V40.2004C258.149 39.5147 256.829 39.1748 255.194 39.1748C253.053 39.1748 251.401 39.8371 250.253 41.1615C249.1 42.486 248.526 44.5488 248.526 47.3383V54.8865H238.686V30.8883H248.326V38.5185C248.859 35.7289 249.726 33.672 250.919 32.3416C252.107 31.0172 253.644 30.355 255.515 30.355C256.932 30.355 258.149 30.6832 259.17 31.3395Z" fill="white"/>
<path d="M291.864 25.3503V54.8866H282.023V49.5127C281.191 51.5345 279.929 53.0758 278.231 54.1306C276.532 55.1797 274.432 55.7071 271.942 55.7071C269.716 55.7071 267.777 55.1562 266.118 54.0486C264.46 52.941 263.181 51.4232 262.28 49.4951C261.385 47.567 260.931 45.387 260.931 42.9491C260.903 40.435 261.379 38.1787 262.36 36.1803C263.336 34.1819 264.718 32.6231 266.497 31.5037C268.276 30.3844 270.307 29.8218 272.585 29.8218C277.273 29.8218 280.417 31.9022 282.023 36.0572V25.3503H291.864ZM280.555 46.5415C281.559 45.5452 282.058 44.2501 282.058 42.6678C282.058 41.1382 281.57 39.8899 280.595 38.9347C279.619 37.9795 278.282 37.4989 276.601 37.4989C274.943 37.4989 273.618 37.9853 272.625 38.9581C271.632 39.931 271.139 41.1909 271.139 42.7498C271.139 44.3087 271.632 45.5804 272.625 46.5649C273.618 47.5494 274.926 48.0417 276.561 48.0417C278.219 48.0359 279.55 47.5377 280.555 46.5415Z" fill="white"/>
<path d="M139.382 33.4432C142.091 33.4432 144.288 31.4281 144.288 28.9424C144.288 26.4567 142.091 24.4417 139.382 24.4417C136.672 24.4417 134.476 26.4567 134.476 28.9424C134.476 31.4281 136.672 33.4432 139.382 33.4432Z" fill="white"/>
<path d="M134.472 36.5435C137.478 37.8679 141.208 37.9265 144.283 36.5435V55.0154H134.472V36.5435Z" fill="white"/>
</g>
</g>
<defs>
<clipPath id="clip0">
<rect width="292" height="56.4706" fill="white" transform="translate(0 11.7646)"/>
</clipPath>
<clipPath id="clip1">
<rect width="292" height="56.4706" fill="white" transform="translate(0 11.7646)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 6.7 KiB

@@ -0,0 +1,54 @@
fileFormatVersion: 2
guid: bcc7aa5cd06cc6941841cd1dbff71456
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: a57477913897c46af95d590f580878bd, type: 3}
svgType: 0
texturedSpriteMeshType: 0
svgPixelsPerUnit: 100
gradientResolution: 64
alignment: 0
customPivot: {x: 0, y: 0}
generatePhysicsShape: 0
viewportOptions: 0
preserveViewport: 0
advancedMode: 0
predefinedResolutionIndex: 1
targetResolution: 1080
resolutionMultiplier: 1
stepDistance: 10
samplingStepDistance: 100
maxCordDeviationEnabled: 0
maxCordDeviation: 1
maxTangentAngleEnabled: 0
maxTangentAngle: 5
keepTextureAspectRatio: 1
textureSize: 256
textureWidth: 256
textureHeight: 256
wrapMode: 0
filterMode: 1
sampleCount: 4
preserveSVGImageAspect: 0
useSVGPixelsPerUnit: 0
spriteData:
TessellationDetail: 0
SpriteRect:
name:
originalName:
pivot: {x: 0, y: 0}
alignment: 0
border: {x: 0, y: 0, z: 0, w: 0}
rect:
serializedVersion: 2
x: 0
y: 0
width: 0
height: 0
spriteID: 09ca5446ea720ad42aa8c135c3cdb571
PhysicsOutlines: []
+24 -37
View File
@@ -38,7 +38,7 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.35961914, g: 0.35961914, b: 0.35961914, a: 1}
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
@@ -298,7 +298,7 @@ MonoBehaviour:
m_HorizontalOverflow: 1
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: Brightness
m_Text: Resonance
--- !u!222 &279714470
CanvasRenderer:
m_ObjectHideFlags: 0
@@ -502,7 +502,7 @@ MonoBehaviour:
m_HorizontalOverflow: 1
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: Wildness
m_Text: Generations
--- !u!222 &397943721
CanvasRenderer:
m_ObjectHideFlags: 0
@@ -534,7 +534,6 @@ GameObject:
- component: {fileID: 449249018}
- component: {fileID: 449249017}
- component: {fileID: 449249016}
- component: {fileID: 449249020}
m_Layer: 5
m_Name: Canvas
m_TagString: Untagged
@@ -626,18 +625,6 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0, y: 0}
--- !u!114 &449249020
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 449249014}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3a97ccee1c1df8e47bdc9e321a823b3d, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &523739710
GameObject:
m_ObjectHideFlags: 0
@@ -835,7 +822,7 @@ MonoBehaviour:
m_HorizontalOverflow: 1
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: Zoom
m_Text: Grid
--- !u!222 &650114448
CanvasRenderer:
m_ObjectHideFlags: 0
@@ -1038,7 +1025,7 @@ GameObject:
- component: {fileID: 773926870}
- component: {fileID: 773926871}
m_Layer: 5
m_Name: Zoom
m_Name: Grid
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@@ -1112,16 +1099,16 @@ MonoBehaviour:
m_FillRect: {fileID: 1533823375}
m_HandleRect: {fileID: 1175658974}
m_Direction: 0
m_MinValue: -2
m_MaxValue: 2
m_MinValue: 3
m_MaxValue: 10
m_WholeNumbers: 0
m_Value: -0.52
m_Value: 5
m_OnValueChanged:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 449249020}
m_TargetAssemblyTypeName: LuigiPropertyBinder, Assembly-CSharp
m_MethodName: UpdateZoom
- m_Target: {fileID: 2035115419}
m_TargetAssemblyTypeName: BotanyBinder, Assembly-CSharp
m_MethodName: UpdateGrid
m_Mode: 2
m_Arguments:
m_ObjectArgument: {fileID: 773926871}
@@ -1438,7 +1425,7 @@ GameObject:
- component: {fileID: 938799568}
- component: {fileID: 938799570}
m_Layer: 5
m_Name: Wildness
m_Name: Generations
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@@ -1514,14 +1501,14 @@ MonoBehaviour:
m_Direction: 0
m_MinValue: 1
m_MaxValue: 10
m_WholeNumbers: 0
m_Value: 4.5
m_WholeNumbers: 1
m_Value: 1
m_OnValueChanged:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 449249020}
m_TargetAssemblyTypeName: LuigiPropertyBinder, Assembly-CSharp
m_MethodName: UpdateWildness
- m_Target: {fileID: 2035115419}
m_TargetAssemblyTypeName: BotanyBinder, Assembly-CSharp
m_MethodName: UpdateIterations
m_Mode: 2
m_Arguments:
m_ObjectArgument: {fileID: 938799570}
@@ -2438,7 +2425,7 @@ GameObject:
- component: {fileID: 2099950028}
- component: {fileID: 2099950029}
m_Layer: 5
m_Name: Brightness
m_Name: Resonance
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@@ -2512,16 +2499,16 @@ MonoBehaviour:
m_FillRect: {fileID: 1449240055}
m_HandleRect: {fileID: 378214597}
m_Direction: 0
m_MinValue: 1
m_MaxValue: 8
m_MinValue: 0
m_MaxValue: 2
m_WholeNumbers: 0
m_Value: 4
m_Value: 1
m_OnValueChanged:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 449249020}
m_TargetAssemblyTypeName: LuigiPropertyBinder, Assembly-CSharp
m_MethodName: UpdateBrightness
- m_Target: {fileID: 2035115419}
m_TargetAssemblyTypeName: BotanyBinder, Assembly-CSharp
m_MethodName: UpdateResonance
m_Mode: 2
m_Arguments:
m_ObjectArgument: {fileID: 2099950029}
+6 -2
View File
@@ -142,7 +142,7 @@ Material:
- _AlphaToMaskInspectorValue: 0
- _Anisotropy: 0
- _BlendMode: 0
- _Brightness: 3.85
- _Brightness: 0
- _CoatMask: 0
- _CullMode: 2
- _CullModeForward: 2
@@ -168,6 +168,8 @@ Material:
- _EnableFogOnTransparent: 1
- _EnableGeometricSpecularAA: 0
- _EnergyConservingSpecularColor: 1
- _Glob: 1.2242857
- _Grid: 5.450001
- _HeightAmplitude: 0.02
- _HeightCenter: 0.5
- _HeightMapParametrization: 0
@@ -181,6 +183,7 @@ Material:
- _Ior: 1.5
- _IridescenceMask: 1
- _IridescenceThickness: 1
- _Iterations: 8
- _LinkDetailsWithBase: 1
- _Magic: 65.6
- _MaterialID: 1
@@ -199,6 +202,7 @@ Material:
- _ReceivesSSR: 1
- _ReceivesSSRTransparent: 0
- _RefractionModel: 0
- _Resonance: 0.24285714
- _Smoothness: 0.5
- _SmoothnessRemapMax: 1
- _SmoothnessRemapMin: 0
@@ -235,7 +239,7 @@ Material:
- _UVEmissive: 0
- _UseEmissiveIntensity: 0
- _UseShadowThreshold: 0
- _Wildness: 0.593
- _Wildness: 0.2
- _Wow: 4
- _ZTestDepthEqualForOpaque: 3
- _ZTestGBuffer: 4
+18 -14
View File
@@ -6,9 +6,9 @@ Shader "FullScreen/Botany"
_ThemeTexture("ThemeTexture", 2D) = "white" {}
_SpectrumSize("SpectrumSize", float) = 16
_Zoom("Zoom", range(1, 10)) = 5
_Wildness("Wildness", range(0.2, 2.0)) = 0.8
_Brightness("Brightness", range(1, 10)) = 4.0
_Grid("Grid", range(3, 10)) = 5
_Iterations("Iterations", range(1, 10)) = 6
_Resonance("Resonance", range(0, 3)) = 1
}
HLSLINCLUDE
@@ -22,9 +22,10 @@ Shader "FullScreen/Botany"
// here we go...
sampler2D _SpectrumTexture;
sampler2D _ThemeTexture;
float _Zoom;
float _Wildness;
float _Brightness;
float _Resonance;
float _Grid;
float _Iterations;
float material;
float time;
@@ -50,7 +51,7 @@ Shader "FullScreen/Botany"
// Inigo Quilez
// https://iquilezles.org/articles/distfunctions
float smin(float d1, float d2, float k) {
float h = clamp(0.5 + bass * (d2-d1) / k, 0.0, 1.0);
float h = clamp(0.5 + 0.5 * (d2-d1) / k, 0.0, 1.0);
return lerp(d2, d1, h) - k*h*(1.0-h);
}
@@ -74,7 +75,7 @@ Shader "FullScreen/Botany"
float t = time * 1.0 + rng * 2.9;
// domain repetition
float3 grid = float3(_Zoom, _Zoom, _Zoom);
float3 grid = float3(_Grid, _Grid, _Grid);
float3 cell = floor(p/grid);
p = repeat(p, grid);
@@ -88,18 +89,17 @@ Shader "FullScreen/Botany"
float size = sin(rng*3.14);
// stretch sphere
float wave = sin(-dp*1.+t+hash13(cell)*6.28)*.5;
// float wave = sin(-dp*1.+t+hash13(cell)*6.28)*.5;
float wave = sin(-dp*_Resonance+t+hash13(cell)*6.28);
// kaleidoscopic iterated function
const int count = 4;
// float a = 1.0;
float a = 2.0;
float scene = 1000.0;
float shape = 1000.0;
for (int index = 0; index < count; ++index) {
for (int index = 0; index < _Iterations; ++index) {
// fold and translate
p.xz = abs(p.xz) - (_Wildness + wave) * a;
// p.xz = abs(p.xz) - (0.5 + wave) * a;
// p.xz = abs(p.xz) - (_Iterations + wave) * a;
p.xz = abs(p.xz) - (0.5 + wave) * a;
// rotate
// p.xz = mul(rot(angle.y/a), p.xz);
@@ -205,6 +205,10 @@ Shader "FullScreen/Botany"
// pixel color
colour.rgb = (tint + light) * shade;
// camera fade
colour = colour * step(3.0, length(pos));
// temporal buffer
// colour = max(colour, texture(iChannel0, fragCoord/iResolution.xy) - 0.01);
+6 -6
View File
@@ -12,15 +12,15 @@ public class BotanyBinder : MonoBehaviour {
}
}
public void UpdateWildness(Slider s) {
material.SetFloat("_Wildness", s.value);
public void UpdateIterations(Slider s) {
material.SetFloat("_Iterations", s.value);
}
public void UpdateZoom(Slider s) {
material.SetFloat("_Zoom", s.value);
public void UpdateGrid(Slider s) {
material.SetFloat("_Grid", s.value);
}
public void UpdateBrightness(Slider s) {
material.SetFloat("_Brightness", s.value);
public void UpdateResonance(Slider s) {
material.SetFloat("_Resonance", s.value);
}
}
File renamed without changes.
@@ -897,6 +897,10 @@ PrefabInstance:
propertyPath: PrevButton
value: 8
objectReference: {fileID: 0}
- target: {fileID: 3099289455289463194, guid: 31660dba95ae9a9408051002a1e4c382, type: 3}
propertyPath: m_RootOrder
value: 8
objectReference: {fileID: 0}
- target: {fileID: 5305278010342315827, guid: 31660dba95ae9a9408051002a1e4c382, type: 3}
propertyPath: m_Pivot.x
value: 0
@@ -985,6 +989,10 @@ PrefabInstance:
propertyPath: m_Name
value: Menu
objectReference: {fileID: 0}
- target: {fileID: 7200639167805561534, guid: 31660dba95ae9a9408051002a1e4c382, type: 3}
propertyPath: m_RootOrder
value: 9
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 31660dba95ae9a9408051002a1e4c382, type: 3}
--- !u!1 &667181310
@@ -142,7 +142,7 @@ Material:
- _AlphaToMaskInspectorValue: 0
- _Anisotropy: 0
- _BlendMode: 0
- _Brightness: 4.65
- _Brightness: 3.9499998
- _CoatMask: 0
- _CullMode: 2
- _CullModeForward: 2
@@ -235,7 +235,7 @@ Material:
- _UVEmissive: 0
- _UseEmissiveIntensity: 0
- _UseShadowThreshold: 0
- _Wildness: 7.2642856
- _Wildness: 5.721429
- _Wow: 4
- _ZTestDepthEqualForOpaque: 3
- _ZTestGBuffer: 4
@@ -243,7 +243,7 @@ Material:
- _ZWrite: 1
- _Zing: 0
- _Zip: 0.5
- _Zoom: -0.6342857
- _Zoom: -0.2628572
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _BaseColorMap_MipInfo: {r: 0, g: 0, b: 0, a: 0}
@@ -1,4 +1,4 @@
Shader "FullScreen/Ether"
Shader "FullScreen/Luigi"
{
Properties
{
@@ -2,7 +2,7 @@ using UnityEngine;
using UnityEngine.UI;
using System.Collections.Generic;
public class LuigiPropertyBinder : MonoBehaviour {
public class LuigiBinder : MonoBehaviour {
public Material material;
private void Start() {
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 40c8ca0615033ad4e89daa0d5d0003c3
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
File diff suppressed because it is too large. Load diff
+7
View File
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: a515e016359df6d48a68be70204f08af
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,233 @@
Shader "FullScreen/GeneDrive"
{
Properties
{
_SpectrumTexture("SpectrumTexture", 2D) = "white" {}
_ThemeTexture("ThemeTexture", 2D) = "white" {}
_SpectrumSize("SpectrumSize", float) = 16
_SphereSize("SphereSize", range(0, 3)) = 1
_SphereStretch("SphereStretch", range(0, 3)) = 1
}
HLSLINCLUDE
// HDRP stuff
#pragma vertex Vert
#pragma target 4.5
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/CustomPass/CustomPassCommon.hlsl"
// here we go...
sampler2D _SpectrumTexture;
sampler2D _ThemeTexture;
float _SphereSize;
float _SphereStretch;
float material;
float time;
float rng;
float sub;
float bass;
float mids;
float highs;
// -------------------------------------
// https://www.shadertoy.com/view/NddSWs
// source
// Dave Hoskins
// https://www.shadertoy.com/view/4djSRW
float hash13(float3 p3) {
p3 = frac(p3 * .420);
p3 += dot(p3, p3.zyx + 322.802872);
return frac((p3.x + p3.y) * p3.z);
}
// Inigo Quilez
// https://iquilezles.org/articles/distfunctions
float smin(float d1, float d2, float k) {
float h = clamp(0.5 + 0.5 * (d2-d1) / k, 0.0, 1.0);
return lerp(d2, d1, h) - k*h*(1.0-h);
}
float smoothing(float d1, float d2, float k) { return clamp( 0.5 + 0.5 *(d2-d1)/k, 0.0, 1.0); }
// rotation matrix
float2x2 rot(float a) {
float2x2 rm = { cos(a), -sin(a), sin(a), cos(a) };
return rm;
}
#define mod(x, y) (x - y * floor(x / y))
float3 repeat(float3 p, float3 r) {
return mod(p , r) - r / 2.0;
}
// sdf
float map (float3 p) {
const float Grid = 8.0;
const int Iterations = 4;
// time stretched with noise
float t = time * 1.0 + rng * 0.9;
// float t = highs;
// domain repetition
float3 grid = float3(Grid, Grid, Grid);
float3 cell = floor(p/grid);
p = repeat(p, grid);
// distance from origin
float dp = length(p);
// rotation parameter
float3 angle = float3(1.1,-.5,.1) + dp*.1 + p*.1 + cell;
// shrink sphere size
float size = sin(_SphereSize * rng); //sin(rng*3.14);
// stretch sphere
// float wave = sin(-dp*1.+t+hash13(cell)*6.28)*.5;
float wave = sin(-dp*_SphereStretch+hash13(cell) * Grid) * _SphereStretch;
// float a = 1.0;
// float a = smoothstep(0.0, 1.0, mids) * 0.5;
float freq = length(cell) % 4;
float a = tex2D(_SpectrumTexture, 1 / freq);
// a = 1.0 / freq;
// float a = highs;
float scene = 1000.0;
float shape = 1000.0;
for (int index = 0; index < Iterations; ++index) {
// fold and translate
p.xz = abs(p.xz) - (0.5 + wave) * a;
// p.xz = abs(p.xz) - (0.5 + wave) * a;
// rotate
// p.xz = mul(rot(angle.y/a), p.xz);
// p.yz = mul(rot(angle.x/a), p.yz);
// p.yx = mul(rot(angle.z/a), p.yx);
p.xz = mul(p.xz, rot(angle.y/a));
p.yz = mul(p.yz, rot(angle.x/a));
p.yx = mul(p.yx, rot(angle.z/a));
// sphere
shape = length(p)+a*size * 2.0;
// material blending
// material = lerp(material, float(index), smoothing(shape, scene, 0.3*a));
material = lerp(material, float(index), smoothing(shape, scene, a));
// add with a blend
// scene = smin(scene, shape, 1.0 * a);
scene = smin(scene, shape, _SphereSize * a);
// falloff transformations
a /= 1.9;
}
return scene;
}
float4 FullScreenPass(Varyings varyings) : SV_Target {
float depth = LoadCameraDepth(varyings.positionCS.xy);
PositionInputs posInput = GetPositionInput(varyings.positionCS.xy, _ScreenSize.zw, depth, UNITY_MATRIX_I_VP, UNITY_MATRIX_V);
float2 ndc = posInput.positionNDC;
// convert to glsl mode and fix aspect ratio
float2 guv = posInput.positionNDC - 0.5;
guv.x *= _ScreenParams.x / _ScreenParams.y;
time = _Time.y;
float4 colour = float4(0.0, 0.0, 0.0, 1.0);
material = 0.0;
// camera coordinates
float2 uv = guv;
float3 eye = float3(sin(time * 0.1) * 5.0, cos(time * 0.1) * 5.0, 1.0);
// float3 eye = float3(5.0, 5.0, 1.0);
float3 at = float3(0.0, 0.0, 0.0);
float3 z = normalize(at-eye);
float3 x = normalize(cross(z, float3(0.0,1.0,0.0)));
float3 y = cross(x, z);
float3 ray = normalize(float3(z + uv.x * x + uv.y * y));
float3 pos = eye;
// // camera control
// float2 M = 6.28 * float2(1.0, 1.0);
// ray.xz = mul(ray.xz, rot(M.x));
// pos.xz = mul(pos.xz, rot(M.x));
// ray.xy = mul(ray.xy, rot(M.y));
// pos.xy = mul(pos.xy, rot(M.y));
// white noise
float3 seed = float3(ndc, highs * 420.0);
float rng = hash13(seed);
// raymarch
float steps = 30.0;
float index;
for (index = steps; index > 0.0; --index) {
// volume estimation
float dist = map(pos);
if (dist < 0.01) {
break;
}
// dithering
// dist *= 0.9 + .1 * rng;
// raymarch
pos += ray * dist;
}
// ambient occlusion from steps count
float shade = index / steps;
// compute normal by NuSan (https://www.shadertoy.com/view/3sBGzV)
float2 off=float2(.001,0);
float3 normal = normalize(map(pos)-float3(map(pos-off.xyy), map(pos-off.yxy), map(pos-off.yyx)));
float3 tint = tex2D(_ThemeTexture, shade);
// lighting
float ld = dot(reflect(ray, normal), float3(0.0,1.0,0.0))*0.5+0.5;
float3 light = float3(1.000,0.502,0.502) * sqrt(ld);
ld = dot(reflect(ray, normal), float3(0,0,-1))*0.5+0.5;
light += float3(0.400,0.714,0.145) * sqrt(ld)*.5;
// pixel color
colour.rgb = (tint + light) * shade;
return colour;
}
ENDHLSL
SubShader
{
Tags{ "RenderPipeline" = "HDRenderPipeline" }
Pass
{
Name "GeneDrive"
ZWrite Off
ZTest Always
// Blend SrcAlpha OneMinusSrcAlpha
Cull Off
HLSLPROGRAM
#pragma fragment FullScreenPass
ENDHLSL
}
}
Fallback Off
}
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: fcc3e90329b99064cb3a53eb297ca9ae
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
preprocessorOverride: 0
userData:
assetBundleName:
assetBundleVariant:
+287
View File
@@ -0,0 +1,287 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: GeneDrive
m_Shader: {fileID: 4800000, guid: 7453d819d5b715d498f76dd3ab8d71aa, type: 3}
m_ShaderKeywords: _DISABLE_SSR_TRANSPARENT _NORMALMAP_TANGENT_SPACE
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses:
- TransparentDepthPrepass
- TransparentDepthPostpass
- TransparentBackface
- RayTracingPrepass
- MOTIONVECTORS
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AnisotropyMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BaseColorMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BentNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BentNormalMapOS:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _CoatMaskMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissiveColorMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _HeightMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _IridescenceMaskMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _IridescenceThicknessMap:
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}
- _MaskMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _NormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _NormalMapOS:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpectrumTexture:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecularColorMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SubsurfaceMaskMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _TangentMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _TangentMapOS:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ThemeTexture:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ThicknessMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _TransmittanceColorMap:
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:
- _AORemapMax: 1
- _AORemapMin: 0
- _ATDistance: 1
- _AddPrecomputedVelocity: 0
- _AlbedoAffectEmissive: 0
- _AlphaCutoff: 0.5
- _AlphaCutoffEnable: 0
- _AlphaCutoffPostpass: 0.5
- _AlphaCutoffPrepass: 0.5
- _AlphaCutoffShadow: 0.5
- _AlphaDstBlend: 0
- _AlphaSrcBlend: 1
- _AlphaToMask: 0
- _AlphaToMaskInspectorValue: 0
- _Anisotropy: 0
- _BlendMode: 0
- _Brightness: 0
- _CoatMask: 0
- _CullMode: 2
- _CullModeForward: 2
- _Cutoff: 0.5
- _DepthOffsetEnable: 0
- _DetailAlbedoScale: 1
- _DetailNormalScale: 1
- _DetailSmoothnessScale: 1
- _DiffusionProfile: 0
- _DiffusionProfileHash: 0
- _DisplacementLockObjectScale: 1
- _DisplacementLockTilingScale: 1
- _DisplacementMode: 0
- _DoubleSidedEnable: 0
- _DoubleSidedGIMode: 0
- _DoubleSidedNormalMode: 1
- _DstBlend: 0
- _EmissiveColorMode: 1
- _EmissiveExposureWeight: 1
- _EmissiveIntensity: 1
- _EmissiveIntensityUnit: 0
- _EnableBlendModePreserveSpecularLighting: 1
- _EnableFogOnTransparent: 1
- _EnableGeometricSpecularAA: 0
- _EnergyConservingSpecularColor: 1
- _Glob: 1.2242857
- _Globular: 1
- _Grid: 8
- _HeightAmplitude: 0.02
- _HeightCenter: 0.5
- _HeightMapParametrization: 0
- _HeightMax: 1
- _HeightMin: -1
- _HeightOffset: 0
- _HeightPoMAmplitude: 2
- _HeightTessAmplitude: 2
- _HeightTessCenter: 0.5
- _InvTilingScale: 1
- _Ior: 1.5
- _IridescenceMask: 1
- _IridescenceThickness: 1
- _Iterations: 1
- _LinkDetailsWithBase: 1
- _Magic: 65.6
- _MaterialID: 1
- _Metallic: 0
- _MetallicRemapMax: 1
- _MetallicRemapMin: 0
- _NormalMapSpace: 0
- _NormalScale: 1
- _OpaqueCullMode: 2
- _PPDLodThreshold: 5
- _PPDMaxSamples: 15
- _PPDMinSamples: 5
- _PPDPrimitiveLength: 1
- _PPDPrimitiveWidth: 1
- _RayTracing: 0
- _ReceivesSSR: 1
- _ReceivesSSRTransparent: 0
- _RefractionModel: 0
- _Resonance: 0.67142856
- _Smoothness: 0.5
- _SmoothnessRemapMax: 1
- _SmoothnessRemapMin: 0
- _SpectrumSize: 4
- _SpecularAAScreenSpaceVariance: 0.1
- _SpecularAAThreshold: 0.2
- _SpecularOcclusionMode: 1
- _SphereSize: 0.94285715
- _SphereStretch: 0.5928571
- _SrcBlend: 1
- _StencilRef: 0
- _StencilRefDepth: 8
- _StencilRefGBuffer: 10
- _StencilRefMV: 40
- _StencilWriteMask: 6
- _StencilWriteMaskDepth: 8
- _StencilWriteMaskGBuffer: 14
- _StencilWriteMaskMV: 40
- _SubsurfaceMask: 1
- _SupportDecals: 1
- _SurfaceType: 0
- _TexWorldScale: 1
- _TexWorldScaleEmissive: 1
- _ThemeStrength: 4.67
- _Thickness: 1
- _TransmissionEnable: 1
- _TransparentBackfaceEnable: 0
- _TransparentCullMode: 2
- _TransparentDepthPostpassEnable: 0
- _TransparentDepthPrepassEnable: 0
- _TransparentSortPriority: 0
- _TransparentWritingMotionVec: 0
- _TransparentZWrite: 0
- _UVBase: 0
- _UVDetail: 0
- _UVEmissive: 0
- _UseEmissiveIntensity: 0
- _UseShadowThreshold: 0
- _Wildness: 0.2
- _Wow: 4
- _ZTestDepthEqualForOpaque: 3
- _ZTestGBuffer: 4
- _ZTestTransparent: 4
- _ZWrite: 1
- _Zing: 0
- _Zip: 0.5
- _Zoom: 4.99
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _BaseColorMap_MipInfo: {r: 0, g: 0, b: 0, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _DiffusionProfileAsset: {r: 0, g: 0, b: 0, a: 0}
- _DoubleSidedConstants: {r: 1, g: 1, b: -1, a: 0}
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
- _EmissiveColor: {r: 0, g: 0, b: 0, a: 1}
- _EmissiveColorLDR: {r: 0, g: 0, b: 0, a: 1}
- _InvPrimScale: {r: 1, g: 1, b: 0, a: 0}
- _IridescenceThicknessRemap: {r: 0, g: 1, b: 0, a: 0}
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
- _ThicknessRemap: {r: 0, g: 1, b: 0, a: 0}
- _TransmittanceColor: {r: 1, g: 1, b: 1, a: 1}
- _UVDetailsMappingMask: {r: 1, g: 0, b: 0, a: 0}
- _UVMappingMask: {r: 1, g: 0, b: 0, a: 0}
- _UVMappingMaskEmissive: {r: 1, g: 0, b: 0, a: 0}
m_BuildTextureStacks: []
--- !u!114 &6020743418383276577
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: da692e001514ec24dbc4cca1949ff7e8, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 12
hdPluginSubTargetMaterialVersions:
m_Keys: []
m_Values:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 87966b5ef0f98a1449384bd255e71cd9
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,233 @@
Shader "FullScreen/GeneDrive"
{
Properties
{
_SpectrumTexture("SpectrumTexture", 2D) = "white" {}
_ThemeTexture("ThemeTexture", 2D) = "white" {}
_SpectrumSize("SpectrumSize", float) = 16
_SphereSize("SphereSize", range(0, 3)) = 1
_SphereStretch("SphereStretch", range(0, 3)) = 1
}
HLSLINCLUDE
// HDRP stuff
#pragma vertex Vert
#pragma target 4.5
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/CustomPass/CustomPassCommon.hlsl"
// here we go...
sampler2D _SpectrumTexture;
sampler2D _ThemeTexture;
float _SphereSize;
float _SphereStretch;
float material;
float time;
float rng;
float sub;
float bass;
float mids;
float highs;
// -------------------------------------
// https://www.shadertoy.com/view/NddSWs
// source
// Dave Hoskins
// https://www.shadertoy.com/view/4djSRW
float hash13(float3 p3) {
p3 = frac(p3 * .420);
p3 += dot(p3, p3.zyx + 322.802872);
return frac((p3.x + p3.y) * p3.z);
}
// Inigo Quilez
// https://iquilezles.org/articles/distfunctions
float smin(float d1, float d2, float k) {
float h = clamp(0.5 + 0.5 * (d2-d1) / k, 0.0, 1.0);
return lerp(d2, d1, h) - k*h*(1.0-h);
}
float smoothing(float d1, float d2, float k) { return clamp( 0.5 + 0.5 *(d2-d1)/k, 0.0, 1.0); }
// rotation matrix
float2x2 rot(float a) {
float2x2 rm = { cos(a), -sin(a), sin(a), cos(a) };
return rm;
}
#define mod(x, y) (x - y * floor(x / y))
float3 repeat(float3 p, float3 r) {
return mod(p , r) - r / 2.0;
}
// sdf
float map (float3 p) {
const float Grid = 8.0;
const int Iterations = 4;
// time stretched with noise
float t = time * 1.0 + rng * 0.9;
// float t = highs;
// domain repetition
float3 grid = float3(Grid, Grid, Grid);
float3 cell = floor(p/grid);
p = repeat(p, grid);
// distance from origin
float dp = length(p);
// rotation parameter
float3 angle = float3(1.1,-.5,.1) + dp*.1 + p*.1 + cell;
// shrink sphere size
float size = sin(_SphereSize * rng); //sin(rng*3.14);
// stretch sphere
// float wave = sin(-dp*1.+t+hash13(cell)*6.28)*.5;
float wave = sin(-dp*_SphereStretch+hash13(cell) * Grid) * _SphereStretch;
// float a = 1.0;
// float a = smoothstep(0.0, 1.0, mids) * 0.5;
float freq = length(cell) % 4;
float a = tex2D(_SpectrumTexture, 1 / freq);
// a = 1.0 / freq;
// float a = highs;
float scene = 1000.0;
float shape = 1000.0;
for (int index = 0; index < Iterations; ++index) {
// fold and translate
p.xz = abs(p.xz) - (0.5 + wave) * a;
// p.xz = abs(p.xz) - (0.5 + wave) * a;
// rotate
// p.xz = mul(rot(angle.y/a), p.xz);
// p.yz = mul(rot(angle.x/a), p.yz);
// p.yx = mul(rot(angle.z/a), p.yx);
p.xz = mul(p.xz, rot(angle.y/a));
p.yz = mul(p.yz, rot(angle.x/a));
p.yx = mul(p.yx, rot(angle.z/a));
// sphere
shape = length(p)+a*size * 2.0;
// material blending
// material = lerp(material, float(index), smoothing(shape, scene, 0.3*a));
material = lerp(material, float(index), smoothing(shape, scene, a));
// add with a blend
// scene = smin(scene, shape, 1.0 * a);
scene = smin(scene, shape, _SphereSize * a * 3.0);
// falloff transformations
a /= 1.9;
}
return scene;
}
float4 FullScreenPass(Varyings varyings) : SV_Target {
float depth = LoadCameraDepth(varyings.positionCS.xy);
PositionInputs posInput = GetPositionInput(varyings.positionCS.xy, _ScreenSize.zw, depth, UNITY_MATRIX_I_VP, UNITY_MATRIX_V);
float2 ndc = posInput.positionNDC;
// convert to glsl mode and fix aspect ratio
float2 guv = posInput.positionNDC - 0.5;
guv.x *= _ScreenParams.x / _ScreenParams.y;
time = _Time.y;
float4 colour = float4(0.0, 0.0, 0.0, 1.0);
material = 0.0;
// camera coordinates
float2 uv = guv;
float3 eye = float3(sin(time * 0.1) * 5.0, cos(time * 0.1) * 5.0 + 0.5, 1.0);
// float3 eye = float3(5.0, 5.0, 1.0);
float3 at = float3(0.0, 0.0, 0.0);
float3 z = normalize(at-eye);
float3 x = normalize(cross(z, float3(0.0,1.0,0.0)));
float3 y = cross(x, z);
float3 ray = normalize(float3(z + uv.x * x + uv.y * y));
float3 pos = eye;
// // camera control
// float2 M = 6.28 * float2(1.0, 1.0);
// ray.xz = mul(ray.xz, rot(M.x));
// pos.xz = mul(pos.xz, rot(M.x));
// ray.xy = mul(ray.xy, rot(M.y));
// pos.xy = mul(pos.xy, rot(M.y));
// white noise
float3 seed = float3(ndc, highs * 420.0);
float rng = hash13(seed);
// raymarch
float steps = 30.0;
float index;
for (index = steps; index > 0.0; --index) {
// volume estimation
float dist = map(pos);
if (dist < 0.01) {
break;
}
// dithering
// dist *= 0.9 + .1 * rng;
// raymarch
pos += ray * dist;
}
// ambient occlusion from steps count
float shade = index / steps;
// compute normal by NuSan (https://www.shadertoy.com/view/3sBGzV)
float2 off=float2(.001,0);
float3 normal = normalize(map(pos)-float3(map(pos-off.xyy), map(pos-off.yxy), map(pos-off.yyx)));
float3 tint = tex2D(_ThemeTexture, shade);
// lighting
float ld = dot(reflect(ray, normal), float3(0.0,1.0,0.0))*0.5+0.5;
float3 light = float3(1.000,0.502,0.502) * sqrt(ld);
ld = dot(reflect(ray, normal), float3(0,0,-1))*0.5+0.5;
light += float3(0.400,0.714,0.145) * sqrt(ld)*.5;
// pixel color
colour.rgb = (tint + light) * shade;
return colour;
}
ENDHLSL
SubShader
{
Tags{ "RenderPipeline" = "HDRenderPipeline" }
Pass
{
Name "GeneDrive"
ZWrite Off
ZTest Always
// Blend SrcAlpha OneMinusSrcAlpha
Cull Off
HLSLPROGRAM
#pragma fragment FullScreenPass
ENDHLSL
}
}
Fallback Off
}
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 7453d819d5b715d498f76dd3ab8d71aa
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
preprocessorOverride: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,22 @@
using UnityEngine;
using UnityEngine.UI;
using System.Collections.Generic;
public class GeneDriveBinder : MonoBehaviour {
public Material material;
private void Start() {
if (material == null) {
Debug.Log("Material Binder needs a Material.");
gameObject.SetActive(false);
}
}
public void UpdateGrid(Slider s) {
material.SetFloat("_SphereStretch", s.value);
}
public void UpdateResonance(Slider s) {
material.SetFloat("_SphereSize", s.value);
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: bad5d6c23674a9c4b8605efe4fdf08dc
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 21402a3f25da88e4ea2c9b44c2051ee8
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
File diff suppressed because it is too large. Load diff
+7
View File
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 572c5fca359119a42a653f641085ecc6
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+287
View File
@@ -0,0 +1,287 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Silicon
m_Shader: {fileID: 4800000, guid: 5be30a06faf5a124fa31edf103be3e86, type: 3}
m_ShaderKeywords: _DISABLE_SSR_TRANSPARENT _NORMALMAP_TANGENT_SPACE
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses:
- TransparentDepthPrepass
- TransparentDepthPostpass
- TransparentBackface
- RayTracingPrepass
- MOTIONVECTORS
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AnisotropyMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BaseColorMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BentNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BentNormalMapOS:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _CoatMaskMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissiveColorMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _HeightMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _IridescenceMaskMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _IridescenceThicknessMap:
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}
- _MaskMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _NormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _NormalMapOS:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpectrumTexture:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecularColorMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SubsurfaceMaskMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _TangentMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _TangentMapOS:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ThemeTexture:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ThicknessMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _TransmittanceColorMap:
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:
- _AORemapMax: 1
- _AORemapMin: 0
- _ATDistance: 1
- _AddPrecomputedVelocity: 0
- _AlbedoAffectEmissive: 0
- _AlphaCutoff: 0.5
- _AlphaCutoffEnable: 0
- _AlphaCutoffPostpass: 0.5
- _AlphaCutoffPrepass: 0.5
- _AlphaCutoffShadow: 0.5
- _AlphaDstBlend: 0
- _AlphaSrcBlend: 1
- _AlphaToMask: 0
- _AlphaToMaskInspectorValue: 0
- _Anisotropy: 0
- _BlendMode: 0
- _Brightness: 0
- _CoatMask: 0
- _CullMode: 2
- _CullModeForward: 2
- _Cutoff: 0.5
- _DepthOffsetEnable: 0
- _DetailAlbedoScale: 1
- _DetailNormalScale: 1
- _DetailSmoothnessScale: 1
- _DiffusionProfile: 0
- _DiffusionProfileHash: 0
- _DisplacementLockObjectScale: 1
- _DisplacementLockTilingScale: 1
- _DisplacementMode: 0
- _DoubleSidedEnable: 0
- _DoubleSidedGIMode: 0
- _DoubleSidedNormalMode: 1
- _DstBlend: 0
- _EmissiveColorMode: 1
- _EmissiveExposureWeight: 1
- _EmissiveIntensity: 1
- _EmissiveIntensityUnit: 0
- _EnableBlendModePreserveSpecularLighting: 1
- _EnableFogOnTransparent: 1
- _EnableGeometricSpecularAA: 0
- _EnergyConservingSpecularColor: 1
- _Glob: 1.2242857
- _Globular: 1
- _Grid: 8
- _HeightAmplitude: 0.02
- _HeightCenter: 0.5
- _HeightMapParametrization: 0
- _HeightMax: 1
- _HeightMin: -1
- _HeightOffset: 0
- _HeightPoMAmplitude: 2
- _HeightTessAmplitude: 2
- _HeightTessCenter: 0.5
- _InvTilingScale: 1
- _Ior: 1.5
- _IridescenceMask: 1
- _IridescenceThickness: 1
- _Iterations: 1
- _LinkDetailsWithBase: 1
- _Magic: 65.6
- _MaterialID: 1
- _Metallic: 0
- _MetallicRemapMax: 1
- _MetallicRemapMin: 0
- _NormalMapSpace: 0
- _NormalScale: 1
- _OpaqueCullMode: 2
- _PPDLodThreshold: 5
- _PPDMaxSamples: 15
- _PPDMinSamples: 5
- _PPDPrimitiveLength: 1
- _PPDPrimitiveWidth: 1
- _RayTracing: 0
- _ReceivesSSR: 1
- _ReceivesSSRTransparent: 0
- _RefractionModel: 0
- _Resonance: 0.67142856
- _Smoothness: 0.5
- _SmoothnessRemapMax: 1
- _SmoothnessRemapMin: 0
- _SpectrumSize: 4
- _SpecularAAScreenSpaceVariance: 0.1
- _SpecularAAThreshold: 0.2
- _SpecularOcclusionMode: 1
- _SphereSize: 0.94285715
- _SphereStretch: 0.5928571
- _SrcBlend: 1
- _StencilRef: 0
- _StencilRefDepth: 8
- _StencilRefGBuffer: 10
- _StencilRefMV: 40
- _StencilWriteMask: 6
- _StencilWriteMaskDepth: 8
- _StencilWriteMaskGBuffer: 14
- _StencilWriteMaskMV: 40
- _SubsurfaceMask: 1
- _SupportDecals: 1
- _SurfaceType: 0
- _TexWorldScale: 1
- _TexWorldScaleEmissive: 1
- _ThemeStrength: 4.67
- _Thickness: 1
- _TransmissionEnable: 1
- _TransparentBackfaceEnable: 0
- _TransparentCullMode: 2
- _TransparentDepthPostpassEnable: 0
- _TransparentDepthPrepassEnable: 0
- _TransparentSortPriority: 0
- _TransparentWritingMotionVec: 0
- _TransparentZWrite: 0
- _UVBase: 0
- _UVDetail: 0
- _UVEmissive: 0
- _UseEmissiveIntensity: 0
- _UseShadowThreshold: 0
- _Wildness: 0.2
- _Wow: 4
- _ZTestDepthEqualForOpaque: 3
- _ZTestGBuffer: 4
- _ZTestTransparent: 4
- _ZWrite: 1
- _Zing: 0
- _Zip: 0.5
- _Zoom: 4.99
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _BaseColorMap_MipInfo: {r: 0, g: 0, b: 0, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _DiffusionProfileAsset: {r: 0, g: 0, b: 0, a: 0}
- _DoubleSidedConstants: {r: 1, g: 1, b: -1, a: 0}
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
- _EmissiveColor: {r: 0, g: 0, b: 0, a: 1}
- _EmissiveColorLDR: {r: 0, g: 0, b: 0, a: 1}
- _InvPrimScale: {r: 1, g: 1, b: 0, a: 0}
- _IridescenceThicknessRemap: {r: 0, g: 1, b: 0, a: 0}
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
- _ThicknessRemap: {r: 0, g: 1, b: 0, a: 0}
- _TransmittanceColor: {r: 1, g: 1, b: 1, a: 1}
- _UVDetailsMappingMask: {r: 1, g: 0, b: 0, a: 0}
- _UVMappingMask: {r: 1, g: 0, b: 0, a: 0}
- _UVMappingMaskEmissive: {r: 1, g: 0, b: 0, a: 0}
m_BuildTextureStacks: []
--- !u!114 &6020743418383276577
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: da692e001514ec24dbc4cca1949ff7e8, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 12
hdPluginSubTargetMaterialVersions:
m_Keys: []
m_Values:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2c8435a47ec6074469329ccda22afc1c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:
+93
View File
@@ -0,0 +1,93 @@
Shader "FullScreen/Silicon"
{
Properties
{
_SpectrumTexture("SpectrumTexture", 2D) = "white" {}
_ThemeTexture("ThemeTexture", 2D) = "white" {}
_SpectrumSize("SpectrumSize", float) = 16
_SphereSize("SphereSize", range(0, 3)) = 1
_SphereStretch("SphereStretch", range(0, 3)) = 1
}
HLSLINCLUDE
// HDRP stuff
#pragma vertex Vert
#pragma target 4.5
#pragma only_renderers d3d11 playstation xboxone xboxseries vulkan metal switch
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/RenderPipeline/RenderPass/CustomPass/CustomPassCommon.hlsl"
// here we go...
sampler2D _SpectrumTexture;
sampler2D _ThemeTexture;
float _SpectrumSize;
float4 FullScreenPass(Varyings varyings) : SV_Target {
float depth = LoadCameraDepth(varyings.positionCS.xy);
PositionInputs posInput = GetPositionInput(varyings.positionCS.xy, _ScreenSize.zw, depth, UNITY_MATRIX_I_VP, UNITY_MATRIX_V);
float3 viewDirection = GetWorldSpaceNormalizeViewDir(posInput.positionWS);
float2 ndc = posInput.positionNDC;
float4 color = float4(0.0, 0.0, 0.0, 0.0);
// convert to glsl mode and fix aspect ratio
float2 uv = posInput.positionNDC - 0.5;
uv.x *= _ScreenParams.x / _ScreenParams.y;
float time = _Time.y;
// Background
float4 outColour = float4(0.8+0.2*uv.y,0.8+0.2*uv.y,0.8+0.2*uv.y,1);
// [unroll(100)]
for(int i=0; i<40; i++) {
// bubble seeds
float pha = sin(float(i)*546.13+1.0)*0.5 + 0.5;
float siz = pow( sin(float(i)*651.74+5.0)*0.5 + 0.5, 4.0 );
float pox = sin(float(i)*321.55+4.1) * 1 / 1;
// buble size, position and color
float band = 1 / ((i % _SpectrumSize) + 1);
float freq = tex2D(_SpectrumTexture, band);
float rad = 0.1 + 0.1*freq;
float2 pos = float2( pox, -1.0-rad + (2.0+2.0*rad)*fmod(pha+0.1*time*(0.2+0.8*siz),1.0));
float dis = length( uv - pos );
float3 col = lerp( float3(0.94,0.3,0.0), float3(0.1,0.4,0.8), 0.5+0.5*sin(float(i)*1.2+1.9));
col+= 8.0*smoothstep( rad*0.95, rad, dis );
// render
float f = length(uv-pos)/rad;
f = sqrt(clamp(1.0-f*f,0.0,1.0));
outColour -= float4(col.zyx *(1.0-smoothstep( rad*0.95, rad, dis )) * f, 0.0);
}
// Vignetting
// outColour *= sqrt(1.5-0.5*length(uv));
return outColour;
}
ENDHLSL
SubShader
{
Tags{ "RenderPipeline" = "HDRenderPipeline" }
Pass
{
Name "GeneDrive"
ZWrite Off
ZTest Always
// Blend SrcAlpha OneMinusSrcAlpha
Cull Off
HLSLPROGRAM
#pragma fragment FullScreenPass
ENDHLSL
}
}
Fallback Off
}
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 5be30a06faf5a124fa31edf103be3e86
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
preprocessorOverride: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,22 @@
using UnityEngine;
using UnityEngine.UI;
using System.Collections.Generic;
public class SiliconBinder : MonoBehaviour {
public Material material;
private void Start() {
if (material == null) {
Debug.Log("Material Binder needs a Material.");
gameObject.SetActive(false);
}
}
public void UpdateGrid(Slider s) {
material.SetFloat("_SphereStretch", s.value);
}
public void UpdateResonance(Slider s) {
material.SetFloat("_SphereSize", s.value);
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: f254fb3ffb1421f4f83130c38e341de7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: