react-native-shine 0.7.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/lib/module/components/Content.js +112 -145
  2. package/lib/module/components/Content.js.map +1 -1
  3. package/lib/module/components/Shine.js +14 -5
  4. package/lib/module/components/Shine.js.map +1 -1
  5. package/lib/module/components/ShineGroup.js +0 -4
  6. package/lib/module/components/ShineGroup.js.map +1 -1
  7. package/lib/module/enums/colorPresets.js +192 -0
  8. package/lib/module/enums/colorPresets.js.map +1 -1
  9. package/lib/module/enums/effectDefaults.js +59 -0
  10. package/lib/module/enums/effectDefaults.js.map +1 -0
  11. package/lib/module/enums/effectPresets.js +67 -10
  12. package/lib/module/enums/effectPresets.js.map +1 -1
  13. package/lib/module/shaders/bindGroupLayouts.js +47 -29
  14. package/lib/module/shaders/bindGroupLayouts.js.map +1 -1
  15. package/lib/module/shaders/bindGroupUtils.js +30 -44
  16. package/lib/module/shaders/bindGroupUtils.js.map +1 -1
  17. package/lib/module/shaders/colorConversions.js +78 -0
  18. package/lib/module/shaders/colorConversions.js.map +1 -0
  19. package/lib/module/shaders/computeShaders/precomputeColorMask.js +5 -5
  20. package/lib/module/shaders/computeShaders/precomputeColorMask.js.map +1 -1
  21. package/lib/module/shaders/fragmentShaders/baseTextureFragment.js +4 -9
  22. package/lib/module/shaders/fragmentShaders/baseTextureFragment.js.map +1 -1
  23. package/lib/module/shaders/fragmentShaders/colorMaskFragment.js +28 -41
  24. package/lib/module/shaders/fragmentShaders/colorMaskFragment.js.map +1 -1
  25. package/lib/module/shaders/fragmentShaders/glareFlareFragment.js +84 -0
  26. package/lib/module/shaders/fragmentShaders/glareFlareFragment.js.map +1 -0
  27. package/lib/module/shaders/fragmentShaders/glareFragment.js +8 -88
  28. package/lib/module/shaders/fragmentShaders/glareFragment.js.map +1 -1
  29. package/lib/module/shaders/fragmentShaders/holoFragment.js +120 -11
  30. package/lib/module/shaders/fragmentShaders/holoFragment.js.map +1 -1
  31. package/lib/module/shaders/fragmentShaders/maskFragment.js +5 -4
  32. package/lib/module/shaders/fragmentShaders/maskFragment.js.map +1 -1
  33. package/lib/module/shaders/fragmentShaders/reverseHoloFragment.js +7 -7
  34. package/lib/module/shaders/fragmentShaders/reverseHoloFragment.js.map +1 -1
  35. package/lib/module/shaders/pipelineSetups.js +2 -61
  36. package/lib/module/shaders/pipelineSetups.js.map +1 -1
  37. package/lib/module/shaders/resourceManagement/buffersMap.js +41 -0
  38. package/lib/module/shaders/resourceManagement/buffersMap.js.map +1 -0
  39. package/lib/module/shaders/resourceManagement/pipelineMap.js +115 -0
  40. package/lib/module/shaders/resourceManagement/pipelineMap.js.map +1 -0
  41. package/lib/module/shaders/resourceManagement/textures.js +2 -2
  42. package/lib/module/shaders/resourceManagement/textures.js.map +1 -1
  43. package/lib/module/shaders/tgpuUtils.js +41 -0
  44. package/lib/module/shaders/tgpuUtils.js.map +1 -1
  45. package/lib/module/shaders/utils.js +21 -2
  46. package/lib/module/shaders/utils.js.map +1 -1
  47. package/lib/module/shaders/vertexShaders/mainRotationEffectVertex.js +4 -4
  48. package/lib/module/shaders/vertexShaders/mainRotationEffectVertex.js.map +1 -1
  49. package/lib/module/types/typeUtils.js +26 -155
  50. package/lib/module/types/typeUtils.js.map +1 -1
  51. package/lib/module/types/types.js +8 -1
  52. package/lib/module/types/types.js.map +1 -1
  53. package/lib/module/utils/size.js +4 -4
  54. package/lib/module/utils/vector.js +38 -38
  55. package/lib/typescript/src/components/Content.d.ts +6 -6
  56. package/lib/typescript/src/components/Content.d.ts.map +1 -1
  57. package/lib/typescript/src/components/Shine.d.ts.map +1 -1
  58. package/lib/typescript/src/components/ShineGroup.d.ts +1 -1
  59. package/lib/typescript/src/components/ShineGroup.d.ts.map +1 -1
  60. package/lib/typescript/src/enums/colorPresets.d.ts +152 -0
  61. package/lib/typescript/src/enums/colorPresets.d.ts.map +1 -1
  62. package/lib/typescript/src/enums/effectDefaults.d.ts +39 -0
  63. package/lib/typescript/src/enums/effectDefaults.d.ts.map +1 -0
  64. package/lib/typescript/src/enums/effectPresets.d.ts +284 -5
  65. package/lib/typescript/src/enums/effectPresets.d.ts.map +1 -1
  66. package/lib/typescript/src/shaders/bindGroupLayouts.d.ts +77 -41
  67. package/lib/typescript/src/shaders/bindGroupLayouts.d.ts.map +1 -1
  68. package/lib/typescript/src/shaders/bindGroupUtils.d.ts +86 -70
  69. package/lib/typescript/src/shaders/bindGroupUtils.d.ts.map +1 -1
  70. package/lib/typescript/src/shaders/colorConversions.d.ts +4 -0
  71. package/lib/typescript/src/shaders/colorConversions.d.ts.map +1 -0
  72. package/lib/typescript/src/shaders/fragmentShaders/baseTextureFragment.d.ts.map +1 -1
  73. package/lib/typescript/src/shaders/fragmentShaders/colorMaskFragment.d.ts.map +1 -1
  74. package/lib/typescript/src/shaders/fragmentShaders/glareFlareFragment.d.ts +5 -0
  75. package/lib/typescript/src/shaders/fragmentShaders/glareFlareFragment.d.ts.map +1 -0
  76. package/lib/typescript/src/shaders/fragmentShaders/glareFragment.d.ts +0 -3
  77. package/lib/typescript/src/shaders/fragmentShaders/glareFragment.d.ts.map +1 -1
  78. package/lib/typescript/src/shaders/fragmentShaders/holoFragment.d.ts +7 -0
  79. package/lib/typescript/src/shaders/fragmentShaders/holoFragment.d.ts.map +1 -1
  80. package/lib/typescript/src/shaders/fragmentShaders/maskFragment.d.ts.map +1 -1
  81. package/lib/typescript/src/shaders/fragmentShaders/reverseHoloFragment.d.ts.map +1 -1
  82. package/lib/typescript/src/shaders/pipelineSetups.d.ts +0 -6
  83. package/lib/typescript/src/shaders/pipelineSetups.d.ts.map +1 -1
  84. package/lib/typescript/src/shaders/resourceManagement/buffersMap.d.ts +10 -0
  85. package/lib/typescript/src/shaders/resourceManagement/buffersMap.d.ts.map +1 -0
  86. package/lib/typescript/src/shaders/resourceManagement/pipelineMap.d.ts +24 -0
  87. package/lib/typescript/src/shaders/resourceManagement/pipelineMap.d.ts.map +1 -0
  88. package/lib/typescript/src/shaders/resourceManagement/textures.d.ts +0 -1
  89. package/lib/typescript/src/shaders/resourceManagement/textures.d.ts.map +1 -1
  90. package/lib/typescript/src/shaders/tgpuUtils.d.ts +3 -0
  91. package/lib/typescript/src/shaders/tgpuUtils.d.ts.map +1 -1
  92. package/lib/typescript/src/shaders/utils.d.ts +1 -0
  93. package/lib/typescript/src/shaders/utils.d.ts.map +1 -1
  94. package/lib/typescript/src/types/typeUtils.d.ts +8 -47
  95. package/lib/typescript/src/types/typeUtils.d.ts.map +1 -1
  96. package/lib/typescript/src/types/types.d.ts +59 -54
  97. package/lib/typescript/src/types/types.d.ts.map +1 -1
  98. package/package.json +1 -1
  99. package/src/components/Content.tsx +126 -296
  100. package/src/components/Shine.tsx +22 -5
  101. package/src/components/ShineGroup.tsx +0 -4
  102. package/src/enums/colorPresets.ts +59 -1
  103. package/src/enums/effectDefaults.ts +57 -0
  104. package/src/enums/effectPresets.ts +142 -9
  105. package/src/shaders/bindGroupLayouts.ts +57 -28
  106. package/src/shaders/bindGroupUtils.ts +66 -69
  107. package/src/shaders/colorConversions.ts +88 -0
  108. package/src/shaders/computeShaders/precomputeColorMask.ts +4 -4
  109. package/src/shaders/fragmentShaders/baseTextureFragment.ts +2 -10
  110. package/src/shaders/fragmentShaders/colorMaskFragment.ts +34 -55
  111. package/src/shaders/fragmentShaders/glareFlareFragment.ts +79 -0
  112. package/src/shaders/fragmentShaders/glareFragment.ts +9 -84
  113. package/src/shaders/fragmentShaders/holoFragment.ts +139 -11
  114. package/src/shaders/fragmentShaders/maskFragment.ts +3 -9
  115. package/src/shaders/fragmentShaders/reverseHoloFragment.ts +4 -9
  116. package/src/shaders/pipelineSetups.ts +2 -120
  117. package/src/shaders/resourceManagement/buffersMap.ts +80 -0
  118. package/src/shaders/resourceManagement/pipelineMap.ts +169 -0
  119. package/src/shaders/resourceManagement/textures.ts +2 -2
  120. package/src/shaders/tgpuUtils.ts +29 -0
  121. package/src/shaders/utils.ts +29 -0
  122. package/src/shaders/vertexShaders/mainRotationEffectVertex.ts +2 -2
  123. package/src/types/typeUtils.ts +39 -159
  124. package/src/types/types.ts +111 -60
@@ -1 +1 @@
1
- {"version":3,"names":["tgpu","d","std","textureBindGroupLayout","maskTextureBindGroupLayout","rotationBindGroupLayout","reverseHoloDetectionChannelFlagsBindGroupLayout","hueShift","rgbToHSV","reverseHoloFragment","globalThis","__TYPEGPU_AUTONAME__","a","fragmentFn","in","uv","vec2f","out","vec4f","$","__TYPEGPU_META__","WeakMap","set","f","input","texcoord","x","y","centeredCoords","sub","mul","rot","vec","center","add","opts","glareOptions","glareIntensity","glowPower","lightIntensity","glareColor","hueBlendPower","hueShiftAngleMin","hueShiftAngleMax","detectionChannelFlags","channelFlags","redChannelFlag","redChannel","greenChannelFlag","greenChannel","blueChannelFlag","blueChannel","hueFlag","hue","saturationFlag","saturation","valueFlag","value","cardColor","textureSample","texture","sampler","holoMaskColor","dist","distance","rFalloff","exp","scaledRadial","max","influence","smoothstep","curvePower","clamp","glowMask","pow","div","holoMaskColorHSV","xyz","rgbSelection","vec3f","channelFactor","dot","hsvSelection","channelFactorHSV","channelFactorCombined","mix","holoFactor","w","maskedGlow","hueAmount","sparkleHue","shineStrength","shineIntensity","hueMixAmt","chromaMix","shineLayer","v","name","ast","{\"params\":[{\"type\":\"i\",\"name\":\"input\"}],\"body\":[0,[[13,\"texcoord\",[6,[7,\"d\",\"vec2f\"],[[7,[7,\"input\",\"uv\"],\"x\"],[1,[5,\"1\"],\"-\",[7,[7,\"input\",\"uv\"],\"y\"]]]]],[13,\"uv\",\"texcoord\"],[13,\"centeredCoords\",[6,[7,\"std\",\"sub\"],[[6,[7,\"std\",\"mul\"],[\"uv\",[5,\"2\"]]],[5,\"1\"]]]],[13,\"rot\",[7,[7,\"rotationBindGroupLayout\",\"$\"],\"vec\"]],[13,\"center\",[6,[7,\"std\",\"add\"],[[6,[7,\"d\",\"vec2f\"],[[5,\"0\"]]],[6,[7,\"d\",\"vec2f\"],[[7,\"rot\",\"x\"],[7,\"rot\",\"y\"]]]]]],[13,\"opts\",[7,[7,\"reverseHoloDetectionChannelFlagsBindGroupLayout\",\"$\"],\"glareOptions\"]],[13,\"glareIntensity\",[7,\"opts\",\"glareIntensity\"]],[13,\"glowPower\",[7,\"opts\",\"glowPower\"]],[13,\"lightIntensity\",[7,\"opts\",\"lightIntensity\"]],[13,\"glareColor\",[7,\"opts\",\"glareColor\"]],[13,\"hueBlendPower\",[7,\"glareColor\",\"hueBlendPower\"]],[13,\"hueShiftAngleMin\",[7,\"glareColor\",\"hueShiftAngleMin\"]],[13,\"hueShiftAngleMax\",[7,\"glareColor\",\"hueShiftAngleMax\"]],[13,\"detectionChannelFlags\",[7,[7,\"reverseHoloDetectionChannelFlagsBindGroupLayout\",\"$\"],\"channelFlags\"]],[13,\"redChannelFlag\",[7,\"detectionChannelFlags\",\"redChannel\"]],[13,\"greenChannelFlag\",[7,\"detectionChannelFlags\",\"greenChannel\"]],[13,\"blueChannelFlag\",[7,\"detectionChannelFlags\",\"blueChannel\"]],[13,\"hueFlag\",[7,\"detectionChannelFlags\",\"hue\"]],[13,\"saturationFlag\",[7,\"detectionChannelFlags\",\"saturation\"]],[13,\"valueFlag\",[7,\"detectionChannelFlags\",\"value\"]],[13,\"cardColor\",[6,[7,\"std\",\"textureSample\"],[[7,[7,\"textureBindGroupLayout\",\"$\"],\"texture\"],[7,[7,\"textureBindGroupLayout\",\"$\"],\"sampler\"],\"texcoord\"]]],[13,\"holoMaskColor\",[6,[7,\"std\",\"textureSample\"],[[7,[7,\"maskTextureBindGroupLayout\",\"$\"],\"texture\"],[7,[7,\"maskTextureBindGroupLayout\",\"$\"],\"sampler\"],\"texcoord\"]]],[13,\"dist\",[6,[7,\"std\",\"distance\"],[\"centeredCoords\",\"center\"]]],[13,\"rFalloff\",[6,[7,\"std\",\"exp\"],[[4,\"-\",\"dist\"]]]],[13,\"scaledRadial\",[6,[7,\"std\",\"mul\"],[\"rFalloff\",[6,[7,\"std\",\"add\"],[[5,\"1\"],[6,[7,\"std\",\"max\"],[[5,\"0\"],\"glareIntensity\"]]]]]]],[13,\"influence\",[6,[7,\"std\",\"smoothstep\"],[[5,\"0\"],[5,\"1\"],\"scaledRadial\"]]],[13,\"curvePower\",[6,[7,\"std\",\"clamp\"],[\"glowPower\",[5,\"0.05\"],[5,\"64\"]]]],[13,\"glowMask\",[6,[7,\"std\",\"pow\"],[\"influence\",[6,[7,\"std\",\"div\"],[[5,\"1\"],\"curvePower\"]]]]],[13,\"holoMaskColorHSV\",[6,\"rgbToHSV\",[[7,\"holoMaskColor\",\"xyz\"]]]],[13,\"rgbSelection\",[6,[7,\"d\",\"vec3f\"],[\"redChannelFlag\",\"greenChannelFlag\",\"blueChannelFlag\"]]],[13,\"channelFactor\",[6,[7,\"std\",\"dot\"],[[7,\"holoMaskColor\",\"xyz\"],\"rgbSelection\"]]],[13,\"hsvSelection\",[6,[7,\"d\",\"vec3f\"],[\"hueFlag\",\"saturationFlag\",\"valueFlag\"]]],[13,\"channelFactorHSV\",[6,[7,\"std\",\"dot\"],[[7,\"holoMaskColorHSV\",\"xyz\"],\"hsvSelection\"]]],[13,\"channelFactorCombined\",[6,[7,\"std\",\"mix\"],[\"channelFactor\",\"channelFactorHSV\",[5,\"0\"]]]],[13,\"holoFactor\",[1,[1,[1,[5,\"1\"],\"-\",\"channelFactorCombined\"],\"*\",[7,\"holoMaskColor\",\"w\"]],\"*\",[6,[7,\"std\",\"pow\"],[\"scaledRadial\",[5,\"1.5\"]]]]],[13,\"maskedGlow\",[6,[7,\"std\",\"pow\"],[[6,[7,\"std\",\"mul\"],[\"glowMask\",\"holoFactor\"]],[5,\"2\"]]]],[13,\"hueAmount\",[6,[7,\"std\",\"mix\"],[\"hueShiftAngleMin\",\"hueShiftAngleMax\",[6,[7,\"std\",\"clamp\"],[\"maskedGlow\",[5,\"0\"],[5,\"1\"]]]]]],[13,\"sparkleHue\",[6,\"hueShift\",[[7,\"cardColor\",\"xyz\"],\"hueAmount\"]]],[13,\"shineStrength\",[6,[7,\"std\",\"clamp\"],[\"lightIntensity\",[5,\"1\"],[5,\"100\"]]]],[13,\"shineIntensity\",[1,[1,[5,\"1.5\"],\"*\",\"shineStrength\"],\"*\",\"maskedGlow\"]],[13,\"hueMixAmt\",[6,[7,\"std\",\"clamp\"],[[1,[1,\"hueBlendPower\",\"/\",[5,\"5\"]],\"*\",\"maskedGlow\"],[5,\"0\"],[5,\"1\"]]]],[13,\"chromaMix\",[6,[7,\"std\",\"mix\"],[[7,\"cardColor\",\"xyz\"],\"sparkleHue\",\"hueMixAmt\"]]],[13,\"shineLayer\",[6,[7,\"std\",\"mul\"],[\"chromaMix\",\"shineIntensity\"]]],[10,[6,[7,\"d\",\"vec4f\"],[[6,[7,\"d\",\"vec3f\"],[\"shineLayer\"]],[1,[5,\"1\"],\"-\",\"maskedGlow\"]]]]]],\"externalNames\":[\"d\",\"std\",\"rotationBindGroupLayout\",\"reverseHoloDetectionChannelFlagsBindGroupLayout\",\"textureBindGroupLayout\",\"maskTextureBindGroupLayout\",\"rgbToHSV\",\"hueShift\"]}","externals"],"sourceRoot":"../../../../src","sources":["shaders/fragmentShaders/reverseHoloFragment.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["tgpu","d","std","maskTextureBindGroupLayout","reverseHoloDetectionChannelFlagsBindGroupLayout","sharedBindGroupLayout","getPixelColorFromVector","hueShift","rgbToHSV","reverseHoloFragment","globalThis","__TYPEGPU_AUTONAME__","a","fragmentFn","in","uv","vec2f","out","vec4f","$","__TYPEGPU_META__","WeakMap","set","f","input","texcoord","x","y","centeredCoords","sub","mul","rot","center","add","opts","glareOptions","glareIntensity","glowPower","lightIntensity","glareColor","hueBlendPower","hueShiftAngleMin","hueShiftAngleMax","detectionChannelFlags","channelFlags","redChannelFlag","redChannel","greenChannelFlag","greenChannel","blueChannelFlag","blueChannel","hueFlag","hue","saturationFlag","saturation","valueFlag","value","cardColor","holoMaskColor","textureSample","texture","sampler","dist","distance","rFalloff","exp","scaledRadial","max","influence","smoothstep","curvePower","clamp","glowMask","pow","div","holoMaskColorHSV","xyz","rgbSelection","vec3f","channelFactor","dot","hsvSelection","channelFactorHSV","channelFactorCombined","mix","holoFactor","w","maskedGlow","hueAmount","sparkleHue","shineStrength","shineIntensity","hueMixAmt","chromaMix","shineLayer","v","name","ast","{\"params\":[{\"type\":\"i\",\"name\":\"input\"}],\"body\":[0,[[13,\"texcoord\",[6,[7,\"d\",\"vec2f\"],[[7,[7,\"input\",\"uv\"],\"x\"],[1,[5,\"1\"],\"-\",[7,[7,\"input\",\"uv\"],\"y\"]]]]],[13,\"uv\",\"texcoord\"],[13,\"centeredCoords\",[6,[7,\"std\",\"sub\"],[[6,[7,\"std\",\"mul\"],[\"uv\",[5,\"2\"]]],[5,\"1\"]]]],[13,\"rot\",[7,[7,\"sharedBindGroupLayout\",\"$\"],\"rot\"]],[13,\"center\",[6,[7,\"std\",\"add\"],[[6,[7,\"d\",\"vec2f\"],[[5,\"0\"]]],[6,[7,\"d\",\"vec2f\"],[[7,\"rot\",\"x\"],[7,\"rot\",\"y\"]]]]]],[13,\"opts\",[7,[7,\"reverseHoloDetectionChannelFlagsBindGroupLayout\",\"$\"],\"glareOptions\"]],[13,\"glareIntensity\",[7,\"opts\",\"glareIntensity\"]],[13,\"glowPower\",[7,\"opts\",\"glowPower\"]],[13,\"lightIntensity\",[7,\"opts\",\"lightIntensity\"]],[13,\"glareColor\",[7,\"opts\",\"glareColor\"]],[13,\"hueBlendPower\",[7,\"glareColor\",\"hueBlendPower\"]],[13,\"hueShiftAngleMin\",[7,\"glareColor\",\"hueShiftAngleMin\"]],[13,\"hueShiftAngleMax\",[7,\"glareColor\",\"hueShiftAngleMax\"]],[13,\"detectionChannelFlags\",[7,[7,\"reverseHoloDetectionChannelFlagsBindGroupLayout\",\"$\"],\"channelFlags\"]],[13,\"redChannelFlag\",[7,\"detectionChannelFlags\",\"redChannel\"]],[13,\"greenChannelFlag\",[7,\"detectionChannelFlags\",\"greenChannel\"]],[13,\"blueChannelFlag\",[7,\"detectionChannelFlags\",\"blueChannel\"]],[13,\"hueFlag\",[7,\"detectionChannelFlags\",\"hue\"]],[13,\"saturationFlag\",[7,\"detectionChannelFlags\",\"saturation\"]],[13,\"valueFlag\",[7,\"detectionChannelFlags\",\"value\"]],[13,\"cardColor\",[6,\"getPixelColorFromVector\",[\"texcoord\"]]],[13,\"holoMaskColor\",[6,[7,\"std\",\"textureSample\"],[[7,[7,\"maskTextureBindGroupLayout\",\"$\"],\"texture\"],[7,[7,\"maskTextureBindGroupLayout\",\"$\"],\"sampler\"],\"texcoord\"]]],[13,\"dist\",[6,[7,\"std\",\"distance\"],[\"centeredCoords\",\"center\"]]],[13,\"rFalloff\",[6,[7,\"std\",\"exp\"],[[4,\"-\",\"dist\"]]]],[13,\"scaledRadial\",[6,[7,\"std\",\"mul\"],[\"rFalloff\",[6,[7,\"std\",\"add\"],[[5,\"1\"],[6,[7,\"std\",\"max\"],[[5,\"0\"],\"glareIntensity\"]]]]]]],[13,\"influence\",[6,[7,\"std\",\"smoothstep\"],[[5,\"0\"],[5,\"1\"],\"scaledRadial\"]]],[13,\"curvePower\",[6,[7,\"std\",\"clamp\"],[\"glowPower\",[5,\"0.05\"],[5,\"64\"]]]],[13,\"glowMask\",[6,[7,\"std\",\"pow\"],[\"influence\",[6,[7,\"std\",\"div\"],[[5,\"1\"],\"curvePower\"]]]]],[13,\"holoMaskColorHSV\",[6,\"rgbToHSV\",[[7,\"holoMaskColor\",\"xyz\"]]]],[13,\"rgbSelection\",[6,[7,\"d\",\"vec3f\"],[\"redChannelFlag\",\"greenChannelFlag\",\"blueChannelFlag\"]]],[13,\"channelFactor\",[6,[7,\"std\",\"dot\"],[[7,\"holoMaskColor\",\"xyz\"],\"rgbSelection\"]]],[13,\"hsvSelection\",[6,[7,\"d\",\"vec3f\"],[\"hueFlag\",\"saturationFlag\",\"valueFlag\"]]],[13,\"channelFactorHSV\",[6,[7,\"std\",\"dot\"],[[7,\"holoMaskColorHSV\",\"xyz\"],\"hsvSelection\"]]],[13,\"channelFactorCombined\",[6,[7,\"std\",\"mix\"],[\"channelFactor\",\"channelFactorHSV\",[5,\"0\"]]]],[13,\"holoFactor\",[1,[1,[1,[5,\"1\"],\"-\",\"channelFactorCombined\"],\"*\",[7,\"holoMaskColor\",\"w\"]],\"*\",[6,[7,\"std\",\"pow\"],[\"scaledRadial\",[5,\"1.5\"]]]]],[13,\"maskedGlow\",[6,[7,\"std\",\"pow\"],[[6,[7,\"std\",\"mul\"],[\"glowMask\",\"holoFactor\"]],[5,\"2\"]]]],[13,\"hueAmount\",[6,[7,\"std\",\"mix\"],[\"hueShiftAngleMin\",\"hueShiftAngleMax\",[6,[7,\"std\",\"clamp\"],[\"maskedGlow\",[5,\"0\"],[5,\"1\"]]]]]],[13,\"sparkleHue\",[6,\"hueShift\",[[7,\"cardColor\",\"xyz\"],\"hueAmount\"]]],[13,\"shineStrength\",[6,[7,\"std\",\"clamp\"],[\"lightIntensity\",[5,\"1\"],[5,\"100\"]]]],[13,\"shineIntensity\",[1,[1,[5,\"1.5\"],\"*\",\"shineStrength\"],\"*\",\"maskedGlow\"]],[13,\"hueMixAmt\",[6,[7,\"std\",\"clamp\"],[[1,[1,\"hueBlendPower\",\"/\",[5,\"5\"]],\"*\",\"maskedGlow\"],[5,\"0\"],[5,\"1\"]]]],[13,\"chromaMix\",[6,[7,\"std\",\"mix\"],[[7,\"cardColor\",\"xyz\"],\"sparkleHue\",\"hueMixAmt\"]]],[13,\"shineLayer\",[6,[7,\"std\",\"mul\"],[\"chromaMix\",\"shineIntensity\"]]],[10,[6,[7,\"d\",\"vec4f\"],[[6,[7,\"d\",\"vec3f\"],[\"shineLayer\"]],[1,[5,\"1\"],\"-\",\"maskedGlow\"]]]]]],\"externalNames\":[\"d\",\"std\",\"sharedBindGroupLayout\",\"reverseHoloDetectionChannelFlagsBindGroupLayout\",\"getPixelColorFromVector\",\"maskTextureBindGroupLayout\",\"rgbToHSV\",\"hueShift\"]}","externals"],"sourceRoot":"../../../../src","sources":["shaders/fragmentShaders/reverseHoloFragment.ts"],"mappings":"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","ignoreList":[]}
@@ -1,38 +1,18 @@
1
1
  "use strict";
2
2
 
3
- import { maskTextureBindGroupLayout, textureBindGroupLayout } from "./bindGroupLayouts.js";
3
+ import { maskTextureBindGroupLayout } from "./bindGroupLayouts.js";
4
4
  import mainVertex from "./vertexShaders/mainVertex.js";
5
5
  import maskFragment from "./fragmentShaders/maskFragment.js";
6
- import { reverseHoloFragment } from "./fragmentShaders/reverseHoloFragment.js";
7
- import { holoFragment } from "./fragmentShaders/holoFragment.js";
8
- import { WAVE_CALLBACKS, waveCallbackFn, waveCallbackSlot } from "../enums/waveCallback.js";
6
+ import { blend } from "../enums/effectPresets.js";
9
7
  export function attachBindGroups(pipeline, bindGroups) {
10
8
  return bindGroups.reduce((acc, bindGroup) => acc.with(bindGroup), pipeline);
11
9
  }
12
- export const blend = {
13
- color: {
14
- srcFactor: 'one-minus-src-alpha',
15
- dstFactor: 'src-alpha',
16
- operation: 'add'
17
- },
18
- alpha: {
19
- srcFactor: 'one-minus-src-alpha',
20
- dstFactor: 'dst-alpha',
21
- operation: 'add'
22
- }
23
- };
24
10
  export const getDefaultTarget = (presentationFormat, blendMode) => {
25
11
  return {
26
12
  format: presentationFormat,
27
13
  blend: blendMode
28
14
  };
29
15
  };
30
- export const attachBindGroupsToPass = (pass, bindGroupPairs) => {
31
- for (const pair of bindGroupPairs) {
32
- pass.setBindGroup(pair.layout, pair.group);
33
- }
34
- return pass;
35
- };
36
16
  export const createMaskPipeline = (root, maskTexture, bindGroups, sampler, presentationFormat) => {
37
17
  if (!maskTexture) return;
38
18
  const maskTextureBindGroup = root.createBindGroup(maskTextureBindGroupLayout, {
@@ -47,43 +27,4 @@ export const createMaskPipeline = (root, maskTexture, bindGroups, sampler, prese
47
27
  maskPipeline = attachBindGroups(maskPipeline, maskBGP);
48
28
  return maskPipeline;
49
29
  };
50
- export const createReverseHoloPipeline = (root, texture, bindGroups, sampler, presentationFormat) => {
51
- if (!texture) return;
52
- const reverseHoloBindGroup = root.createBindGroup(maskTextureBindGroupLayout, {
53
- texture: root.unwrap(texture).createView(),
54
- sampler
55
- });
56
- const reverseHoloBGP = [...bindGroups, reverseHoloBindGroup];
57
- let reverseHoloPipeline = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(root['~unstable'].withVertex(mainVertex, {}).withFragment(reverseHoloFragment, getDefaultTarget(presentationFormat, blend)).createPipeline(), "reverseHoloPipeline");
58
- reverseHoloPipeline = attachBindGroups(reverseHoloPipeline, reverseHoloBGP);
59
- return reverseHoloPipeline;
60
- };
61
- export const createRainbowHoloPipeline = (root, texture, bindGroups, sampler, presentationFormat) => {
62
- if (!texture) return;
63
- const imageTextureBindGroup = root.createBindGroup(textureBindGroupLayout, {
64
- texture: root.unwrap(texture).createView(),
65
- sampler
66
- });
67
- let rainbowHoloPipeline = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(root['~unstable'].with(waveCallbackSlot, waveCallbackFn(WAVE_CALLBACKS.default)).withVertex(mainVertex, {}).withFragment(holoFragment, getDefaultTarget(presentationFormat, blend)).createPipeline(), "rainbowHoloPipeline");
68
- rainbowHoloPipeline = attachBindGroups(rainbowHoloPipeline, [...bindGroups, imageTextureBindGroup]);
69
- return rainbowHoloPipeline;
70
- };
71
- export function renderPipelinesInSinglePass(root, pipelines, view) {
72
- const unstableRoot = root['~unstable'];
73
- const attachment = {
74
- view,
75
- clearValue: [0, 0, 0, 0],
76
- loadOp: 'clear',
77
- storeOp: 'store'
78
- };
79
- unstableRoot.beginRenderPass({
80
- colorAttachments: [attachment]
81
- }, pass => {
82
- for (const pipeline of pipelines) {
83
- pass.setPipeline(pipeline);
84
- pass.draw(6);
85
- }
86
- });
87
- unstableRoot.flush();
88
- }
89
30
  //# sourceMappingURL=pipelineSetups.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["maskTextureBindGroupLayout","textureBindGroupLayout","mainVertex","maskFragment","reverseHoloFragment","holoFragment","WAVE_CALLBACKS","waveCallbackFn","waveCallbackSlot","attachBindGroups","pipeline","bindGroups","reduce","acc","bindGroup","with","blend","color","srcFactor","dstFactor","operation","alpha","getDefaultTarget","presentationFormat","blendMode","format","attachBindGroupsToPass","pass","bindGroupPairs","pair","setBindGroup","layout","group","createMaskPipeline","root","maskTexture","sampler","maskTextureBindGroup","createBindGroup","texture","unwrap","createView","maskBGP","i","length","push","maskPipeline","globalThis","__TYPEGPU_AUTONAME__","a","withVertex","withFragment","createPipeline","createReverseHoloPipeline","reverseHoloBindGroup","reverseHoloBGP","reverseHoloPipeline","createRainbowHoloPipeline","imageTextureBindGroup","rainbowHoloPipeline","default","renderPipelinesInSinglePass","pipelines","view","unstableRoot","attachment","clearValue","loadOp","storeOp","beginRenderPass","colorAttachments","setPipeline","draw","flush"],"sourceRoot":"../../../src","sources":["shaders/pipelineSetups.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["maskTextureBindGroupLayout","mainVertex","maskFragment","blend","attachBindGroups","pipeline","bindGroups","reduce","acc","bindGroup","with","getDefaultTarget","presentationFormat","blendMode","format","createMaskPipeline","root","maskTexture","sampler","maskTextureBindGroup","createBindGroup","texture","unwrap","createView","maskBGP","i","length","push","maskPipeline","globalThis","__TYPEGPU_AUTONAME__","a","withVertex","withFragment","createPipeline"],"sourceRoot":"../../../src","sources":["shaders/pipelineSetups.ts"],"mappings":";;AAOA,SAASA,0BAA0B,QAAQ,uBAAoB;AAC/D,OAAOC,UAAU,MAAM,+BAA4B;AACnD,OAAOC,YAAY,MAAM,mCAAgC;AACzD,SAASC,KAAK,QAAQ,2BAAwB;AAY9C,OAAO,SAASC,gBAAgBA,CAC9BC,QAAkD,EAClDC,UAA2B,EAC3B;EACA,OAAOA,UAAU,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,SAAS,KAAKD,GAAG,CAACE,IAAI,CAACD,SAAS,CAAC,EAAEJ,QAAQ,CAAC;AAC7E;AAEA,OAAO,MAAMM,gBAAgB,GAAGA,CAC9BC,kBAAoC,EACpCC,SAAyB,KACD;EACxB,OAAO;IACLC,MAAM,EAAEF,kBAAkB;IAC1BT,KAAK,EAAEU;EACT,CAAC;AACH,CAAC;AAED,OAAO,MAAME,kBAAkB,GAAGA,CAChCC,IAAc,EACdC,WAAoC,EACpCX,UAA2B,EAC3BY,OAAmB,EACnBN,kBAAoC,KACN;EAC9B,IAAI,CAACK,WAAW,EAAE;EAElB,MAAME,oBAAoB,GAAGH,IAAI,CAACI,eAAe,CAC/CpB,0BAA0B,EAC1B;IACEqB,OAAO,EAAEL,IAAI,CAACM,MAAM,CAACL,WAAW,CAAC,CAACM,UAAU,CAAC,CAAC;IAC9CL;EACF,CACF,CAAC;EACD,MAAMM,OAAwB,GAAG,CAACL,oBAAoB,CAAC;EACvD,KAAK,IAAIM,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGnB,UAAU,CAACoB,MAAM,EAAED,CAAC,EAAE,EAAE;IAC1CD,OAAO,CAACG,IAAI,CAACrB,UAAU,CAACmB,CAAC,CAAE,CAAC;EAC9B;EACA,IAAIG,YAAY,IAAAC,UAAA,CAAAC,oBAAA,KAAAC,CAAA,IAAAA,CAAA,GAAGf,IAAI,CAAC,WAAW,CAAC,CACjCgB,UAAU,CAAC/B,UAAU,EAAE,CAAC,CAAC,CAAC,CAC1BgC,YAAY,CAAC/B,YAAY,EAAES,gBAAgB,CAACC,kBAAkB,EAAET,KAAK,CAAC,CAAC,CACvE+B,cAAc,CAAC,CAAC;EACnBN,YAAY,GAAGxB,gBAAgB,CAACwB,YAAY,EAAEJ,OAAO,CAAC;EAEtD,OAAOI,YAAY;AACrB,CAAC","ignoreList":[]}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ import { debug } from "../../config/debugMode.js";
4
+ import { deepMerge } from "../utils.js";
5
+ export class BuffersMap extends Map {
6
+ constructor(root) {
7
+ super();
8
+ this.root = root;
9
+ }
10
+ syncUniformBuffer(schema, defaultOptions, options) {
11
+ const resolvedOptions = options ? deepMerge(defaultOptions, options) : defaultOptions;
12
+ if (this.has(schema)) {
13
+ if (debug) {
14
+ console.warn(`Buffer "${String(schema)}" already exists. Updating values.`);
15
+ }
16
+ const buffer = this.get(schema);
17
+ buffer.write(resolvedOptions);
18
+ return buffer;
19
+ }
20
+ const result = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(this.root.createUniform(schema, resolvedOptions), "result");
21
+ const buffer = result.buffer;
22
+ this.set(schema, buffer);
23
+ return buffer;
24
+ }
25
+ syncStorageBuffer(schema, defaultOptions, options) {
26
+ const resolvedOptions = options ? deepMerge(defaultOptions, options) : defaultOptions;
27
+ if (this.has(schema)) {
28
+ if (debug) {
29
+ console.warn(`Buffer "${String(schema)}" already exists. Updating values.`);
30
+ }
31
+ const buffer = this.get(schema);
32
+ buffer.write(resolvedOptions);
33
+ return buffer;
34
+ }
35
+ const result = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(this.root.createMutable(schema, resolvedOptions), "result");
36
+ const buffer = result.buffer;
37
+ this.set(schema, buffer);
38
+ return buffer;
39
+ }
40
+ }
41
+ //# sourceMappingURL=buffersMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["debug","deepMerge","BuffersMap","Map","constructor","root","syncUniformBuffer","schema","defaultOptions","options","resolvedOptions","has","console","warn","String","buffer","get","write","result","globalThis","__TYPEGPU_AUTONAME__","a","createUniform","set","syncStorageBuffer","createMutable"],"sourceRoot":"../../../../src","sources":["shaders/resourceManagement/buffersMap.ts"],"mappings":";;AAQA,SAASA,KAAK,QAAQ,2BAAwB;AAE9C,SAASC,SAAS,QAAQ,aAAU;AAEpC,OAAO,MAAMC,UAAU,SAASC,GAAG,CAAuC;EACxEC,WAAWA,CAASC,IAAc,EAAE;IAClC,KAAK,CAAC,CAAC;IAAC,KADUA,IAAc,GAAdA,IAAc;EAElC;EACAC,iBAAiBA,CACfC,MAAW,EACXC,cAA0B,EAC1BC,OAAiC,EACT;IACxB,MAAMC,eAAe,GAAGD,OAAO,GAC3BR,SAAS,CAACO,cAAc,EAAEC,OAAO,CAAC,GAClCD,cAAc;IAElB,IAAI,IAAI,CAACG,GAAG,CAACJ,MAAM,CAAC,EAAE;MACpB,IAAIP,KAAK,EAAE;QACTY,OAAO,CAACC,IAAI,CACV,WAAWC,MAAM,CAACP,MAAM,CAAC,oCAC3B,CAAC;MACH;MAEA,MAAMQ,MAAM,GAAG,IAAI,CAACC,GAAG,CAACT,MAAM,CAAE;MAChCQ,MAAM,CAACE,KAAK,CAACP,eAAe,CAAC;MAC7B,OAAOK,MAAM;IACf;IAEA,MAAMG,MAAM,IAAAC,UAAA,CAAAC,oBAAA,KAAAC,CAAA,IAAAA,CAAA,GAAG,IAAI,CAAChB,IAAI,CAACiB,aAAa,CACpCf,MAAM,EACNG,eACF,CAAC;IACD,MAAMK,MAAM,GAAGG,MAAM,CAACH,MAAM;IAE5B,IAAI,CAACQ,GAAG,CAAChB,MAAM,EAAEQ,MAAM,CAAC;IAExB,OAAOA,MAAM;EACf;EAEAS,iBAAiBA,CACfjB,MAAW,EACXC,cAA0B,EAC1BC,OAAiC,EACF;IAC/B,MAAMC,eAAe,GAAGD,OAAO,GAC3BR,SAAS,CAACO,cAAc,EAAEC,OAAO,CAAC,GAClCD,cAAc;IAElB,IAAI,IAAI,CAACG,GAAG,CAACJ,MAAM,CAAC,EAAE;MACpB,IAAIP,KAAK,EAAE;QACTY,OAAO,CAACC,IAAI,CACV,WAAWC,MAAM,CAACP,MAAM,CAAC,oCAC3B,CAAC;MACH;MAEA,MAAMQ,MAAM,GAAG,IAAI,CAACC,GAAG,CAACT,MAAM,CAAE;MAChCQ,MAAM,CAACE,KAAK,CAACP,eAAe,CAAC;MAC7B,OAAOK,MAAM;IACf;IAEA,MAAMG,MAAM,IAAAC,UAAA,CAAAC,oBAAA,KAAAC,CAAA,IAAAA,CAAA,GAAG,IAAI,CAAChB,IAAI,CAACoB,aAAa,CACpClB,MAAM,EACNG,eACF,CAAC;IACD,MAAMK,MAAM,GAAGG,MAAM,CAACH,MAAM;IAE5B,IAAI,CAACQ,GAAG,CAAChB,MAAM,EAAEQ,MAAM,CAAC;IAExB,OAAOA,MAAM;EACf;AACF","ignoreList":[]}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+
3
+ import { vec3f } from 'typegpu/data';
4
+ import mainVertex from "../vertexShaders/mainVertex.js";
5
+ import { baseTextureFragment } from "../fragmentShaders/baseTextureFragment.js";
6
+ import { sharedBindGroupLayout, rotationSchema, maskTextureBindGroupLayout } from "../bindGroupLayouts.js";
7
+ import { BuffersMap } from "./buffersMap.js";
8
+ import { Effects } from "../../enums/effectPresets.js";
9
+ const defaultAttachment = {
10
+ clearValue: [0, 0, 0, 0],
11
+ loadOp: 'load',
12
+ storeOp: 'store'
13
+ };
14
+ export class PipelineManager {
15
+ constructor(root, presentationFormat, imageTexture, maskTexture) {
16
+ this.root = root;
17
+ this.presentationFormat = presentationFormat;
18
+ this.buffersMap = new BuffersMap(root);
19
+ this.pipelinesMap = new Map();
20
+ const rotationBuffer = this.buffersMap.syncUniformBuffer(rotationSchema, vec3f(0.0));
21
+ this.computePipelinesMap = new Map();
22
+ const sampler = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(root['~unstable'].createSampler({
23
+ magFilter: 'linear',
24
+ minFilter: 'linear',
25
+ mipmapFilter: 'linear'
26
+ }), "sampler");
27
+ this.sharedBindGroup = root.createBindGroup(sharedBindGroupLayout, {
28
+ texture: root.unwrap(imageTexture).createView(),
29
+ sampler,
30
+ rot: rotationBuffer
31
+ });
32
+ //todo: make this optional and create when needed
33
+ this.maskBindGroup = root.createBindGroup(maskTextureBindGroupLayout, {
34
+ texture: root.unwrap(maskTexture || imageTexture).createView(),
35
+ sampler
36
+ });
37
+ }
38
+ addPipeline(fragment, bindGroupProp, blend) {
39
+ if (this.pipelinesMap.has(fragment)) {
40
+ return this.pipelinesMap.get(fragment);
41
+ }
42
+ let pipeline = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(this.root['~unstable'].withVertex(mainVertex, {}).withFragment(fragment, {
43
+ format: this.presentationFormat,
44
+ blend
45
+ }).createPipeline(), "pipeline");
46
+ let bindGroups = [this.sharedBindGroup];
47
+ if (bindGroupProp) {
48
+ bindGroups = [...bindGroups, ...bindGroupProp];
49
+ }
50
+ for (const bindGroup of bindGroups) {
51
+ pipeline = pipeline.with(bindGroup);
52
+ }
53
+ this.pipelinesMap.set(fragment, pipeline);
54
+ return pipeline;
55
+ }
56
+ addComputePipeline(compute, bindGroupProp) {
57
+ if (this.computePipelinesMap.has(compute)) {
58
+ return this.computePipelinesMap.get(compute);
59
+ }
60
+ let pipeline = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(this.root['~unstable'].withCompute(compute).createPipeline(), "pipeline");
61
+ let bindGroups = [this.sharedBindGroup];
62
+ if (bindGroupProp) {
63
+ bindGroups = [...bindGroups, ...bindGroupProp];
64
+ }
65
+ for (const bindGroup of bindGroups) {
66
+ pipeline = pipeline.with(bindGroup);
67
+ }
68
+ this.computePipelinesMap.set(compute, pipeline);
69
+ return pipeline;
70
+ }
71
+
72
+ //TODO: fix any typing
73
+ addPipelineWithBuffer(name, options) {
74
+ const {
75
+ fragment,
76
+ blend,
77
+ buffers,
78
+ bindGroupCreator
79
+ } = Effects[name];
80
+ const genericBuffers = buffers;
81
+ const updatedBuffers = genericBuffers.map(({
82
+ schema,
83
+ defaultOptions
84
+ }) => this.buffersMap.syncUniformBuffer(schema, defaultOptions, options));
85
+ if (this.pipelinesMap.has(fragment)) {
86
+ return this.pipelinesMap.get(fragment);
87
+ }
88
+ const bindGroup = bindGroupCreator({
89
+ root: this.root,
90
+ maskBindGroup: this.maskBindGroup
91
+ }, updatedBuffers);
92
+ return this.addPipeline(fragment, bindGroup, blend);
93
+ }
94
+ async runComputePipeline(compute) {
95
+ const pipeline = this.computePipelinesMap.get(compute);
96
+ if (!pipeline) {
97
+ throw new Error('Compute pipeline not found');
98
+ }
99
+ pipeline.dispatchWorkgroups(1, 1, 1);
100
+ await this.root.device.queue.onSubmittedWorkDone();
101
+ }
102
+ renderPipelines(view) {
103
+ this.pipelinesMap.forEach((pipeline, fragment) => {
104
+ const attachment = {
105
+ ...defaultAttachment,
106
+ view
107
+ };
108
+ if (fragment === baseTextureFragment) {
109
+ attachment.loadOp = 'clear';
110
+ }
111
+ pipeline.withColorAttachment(attachment).draw(6);
112
+ });
113
+ }
114
+ }
115
+ //# sourceMappingURL=pipelineMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["vec3f","mainVertex","baseTextureFragment","sharedBindGroupLayout","rotationSchema","maskTextureBindGroupLayout","BuffersMap","Effects","defaultAttachment","clearValue","loadOp","storeOp","PipelineManager","constructor","root","presentationFormat","imageTexture","maskTexture","buffersMap","pipelinesMap","Map","rotationBuffer","syncUniformBuffer","computePipelinesMap","sampler","globalThis","__TYPEGPU_AUTONAME__","a","createSampler","magFilter","minFilter","mipmapFilter","sharedBindGroup","createBindGroup","texture","unwrap","createView","rot","maskBindGroup","addPipeline","fragment","bindGroupProp","blend","has","get","pipeline","withVertex","withFragment","format","createPipeline","bindGroups","bindGroup","with","set","addComputePipeline","compute","withCompute","addPipelineWithBuffer","name","options","buffers","bindGroupCreator","genericBuffers","updatedBuffers","map","schema","defaultOptions","runComputePipeline","Error","dispatchWorkgroups","device","queue","onSubmittedWorkDone","renderPipelines","view","forEach","attachment","withColorAttachment","draw"],"sourceRoot":"../../../../src","sources":["shaders/resourceManagement/pipelineMap.ts"],"mappings":";;AASA,SAASA,KAAK,QAAQ,cAAc;AACpC,OAAOC,UAAU,MAAM,gCAA6B;AASpD,SAASC,mBAAmB,QAAQ,2CAAwC;AAC5E,SACEC,qBAAqB,EACrBC,cAAc,EACdC,0BAA0B,QACrB,wBAAqB;AAC5B,SAASC,UAAU,QAAQ,iBAAc;AACzC,SAASC,OAAO,QAAQ,8BAA2B;AAKnD,MAAMC,iBAAiB,GAAG;EACxBC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;EACxBC,MAAM,EAAE,MAAM;EACdC,OAAO,EAAE;AACX,CAAU;AAEV,OAAO,MAAMC,eAAe,CAAC;EAM3BC,WAAWA,CACDC,IAAc,EACdC,kBAAoC,EAC5CC,YAAuC,EACvCC,WAAuC,EACvC;IAAA,KAJQH,IAAc,GAAdA,IAAc;IAAA,KACdC,kBAAoC,GAApCA,kBAAoC;IAI5C,IAAI,CAACG,UAAU,GAAG,IAAIZ,UAAU,CAACQ,IAAI,CAAC;IACtC,IAAI,CAACK,YAAY,GAAG,IAAIC,GAAG,CAAC,CAAC;IAC7B,MAAMC,cAAc,GAAG,IAAI,CAACH,UAAU,CAACI,iBAAiB,CACtDlB,cAAc,EACdJ,KAAK,CAAC,GAAG,CACX,CAAC;IACD,IAAI,CAACuB,mBAAmB,GAAG,IAAIH,GAAG,CAAC,CAAC;IAEpC,MAAMI,OAAO,IAAAC,UAAA,CAAAC,oBAAA,KAAAC,CAAA,IAAAA,CAAA,GAAGb,IAAI,CAAC,WAAW,CAAC,CAACc,aAAa,CAAC;MAC9CC,SAAS,EAAE,QAAQ;MACnBC,SAAS,EAAE,QAAQ;MACnBC,YAAY,EAAE;IAChB,CAAC,CAAC;IACF,IAAI,CAACC,eAAe,GAAGlB,IAAI,CAACmB,eAAe,CAAC9B,qBAAqB,EAAE;MACjE+B,OAAO,EAAEpB,IAAI,CAACqB,MAAM,CAACnB,YAAY,CAAC,CAACoB,UAAU,CAAC,CAAC;MAC/CZ,OAAO;MACPa,GAAG,EAAEhB;IACP,CAAC,CAAC;IACF;IACA,IAAI,CAACiB,aAAa,GAAGxB,IAAI,CAACmB,eAAe,CAAC5B,0BAA0B,EAAE;MACpE6B,OAAO,EAAEpB,IAAI,CAACqB,MAAM,CAAClB,WAAW,IAAID,YAAY,CAAC,CAACoB,UAAU,CAAC,CAAC;MAC9DZ;IACF,CAAC,CAAC;EACJ;EAEAe,WAAWA,CACTC,QAAsB,EACtBC,aAA+B,EAC/BC,KAAqB,EACrB;IACA,IAAI,IAAI,CAACvB,YAAY,CAACwB,GAAG,CAACH,QAAQ,CAAC,EAAE;MACnC,OAAO,IAAI,CAACrB,YAAY,CAACyB,GAAG,CAACJ,QAAQ,CAAC;IACxC;IAEA,IAAIK,QAAQ,IAAApB,UAAA,CAAAC,oBAAA,KAAAC,CAAA,IAAAA,CAAA,GAAG,IAAI,CAACb,IAAI,CAAC,WAAW,CAAC,CAClCgC,UAAU,CAAC7C,UAAU,EAAE,CAAC,CAAC,CAAC,CAC1B8C,YAAY,CAACP,QAAQ,EAAE;MAAEQ,MAAM,EAAE,IAAI,CAACjC,kBAAkB;MAAE2B;IAAM,CAAC,CAAC,CAClEO,cAAc,CAAC,CAAC;IAEnB,IAAIC,UAAgC,GAAG,CAAC,IAAI,CAAClB,eAAe,CAAC;IAE7D,IAAIS,aAAa,EAAE;MACjBS,UAAU,GAAG,CAAC,GAAGA,UAAU,EAAE,GAAGT,aAAa,CAAC;IAChD;IAEA,KAAK,MAAMU,SAAS,IAAID,UAAU,EAAE;MAClCL,QAAQ,GAAGA,QAAQ,CAACO,IAAI,CAACD,SAAS,CAAC;IACrC;IAEA,IAAI,CAAChC,YAAY,CAACkC,GAAG,CAACb,QAAQ,EAAEK,QAAQ,CAAC;IACzC,OAAOA,QAAQ;EACjB;EAEAS,kBAAkBA,CAACC,OAAsB,EAAEd,aAA+B,EAAE;IAC1E,IAAI,IAAI,CAAClB,mBAAmB,CAACoB,GAAG,CAACY,OAAO,CAAC,EAAE;MACzC,OAAO,IAAI,CAAChC,mBAAmB,CAACqB,GAAG,CAACW,OAAO,CAAC;IAC9C;IAEA,IAAIV,QAAQ,IAAApB,UAAA,CAAAC,oBAAA,KAAAC,CAAA,IAAAA,CAAA,GAAG,IAAI,CAACb,IAAI,CAAC,WAAW,CAAC,CAAC0C,WAAW,CAACD,OAAO,CAAC,CAACN,cAAc,CAAC,CAAC;IAE3E,IAAIC,UAAgC,GAAG,CAAC,IAAI,CAAClB,eAAe,CAAC;IAE7D,IAAIS,aAAa,EAAE;MACjBS,UAAU,GAAG,CAAC,GAAGA,UAAU,EAAE,GAAGT,aAAa,CAAC;IAChD;IAEA,KAAK,MAAMU,SAAS,IAAID,UAAU,EAAE;MAClCL,QAAQ,GAAGA,QAAQ,CAACO,IAAI,CAACD,SAAS,CAAC;IACrC;IAEA,IAAI,CAAC5B,mBAAmB,CAAC8B,GAAG,CAACE,OAAO,EAAEV,QAAQ,CAAC;IAC/C,OAAOA,QAAQ;EACjB;;EAEA;EACAY,qBAAqBA,CAACC,IAA0B,EAAEC,OAAa,EAAE;IAC/D,MAAM;MAAEnB,QAAQ;MAAEE,KAAK;MAAEkB,OAAO;MAAEC;IAAiB,CAAC,GAAGtD,OAAO,CAACmD,IAAI,CAAC;IAEpE,MAAMI,cAAc,GAAGF,OAA6C;IAEpE,MAAMG,cAAc,GAAGD,cAAc,CAACE,GAAG,CAAC,CAAC;MAAEC,MAAM;MAAEC;IAAe,CAAC,KACnE,IAAI,CAAChD,UAAU,CAACI,iBAAiB,CAAC2C,MAAM,EAAEC,cAAc,EAAEP,OAAO,CACnE,CAAC;IAED,IAAI,IAAI,CAACxC,YAAY,CAACwB,GAAG,CAACH,QAAQ,CAAC,EAAE;MACnC,OAAO,IAAI,CAACrB,YAAY,CAACyB,GAAG,CAACJ,QAAQ,CAAC;IACxC;IAEA,MAAMW,SAAS,GAAGU,gBAAgB,CAChC;MAAE/C,IAAI,EAAE,IAAI,CAACA,IAAI;MAAEwB,aAAa,EAAE,IAAI,CAACA;IAAc,CAAC,EACtDyB,cACF,CAAC;IAED,OAAO,IAAI,CAACxB,WAAW,CAACC,QAAQ,EAAEW,SAAS,EAAET,KAAK,CAAC;EACrD;EAEA,MAAMyB,kBAAkBA,CAACZ,OAAsB,EAAE;IAC/C,MAAMV,QAAQ,GAAG,IAAI,CAACtB,mBAAmB,CAACqB,GAAG,CAACW,OAAO,CAAC;IACtD,IAAI,CAACV,QAAQ,EAAE;MACb,MAAM,IAAIuB,KAAK,CAAC,4BAA4B,CAAC;IAC/C;IACAvB,QAAQ,CAACwB,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,CAACvD,IAAI,CAACwD,MAAM,CAACC,KAAK,CAACC,mBAAmB,CAAC,CAAC;EACpD;EAEAC,eAAeA,CAACC,IAAoB,EAAE;IACpC,IAAI,CAACvD,YAAY,CAACwD,OAAO,CAAC,CAAC9B,QAAQ,EAAEL,QAAQ,KAAK;MAChD,MAAMoC,UAA2B,GAAG;QAClC,GAAGpE,iBAAiB;QACpBkE;MACF,CAAC;MAED,IAAIlC,QAAQ,KAAKtC,mBAAmB,EAAE;QACpC0E,UAAU,CAAClE,MAAM,GAAG,OAAO;MAC7B;MAEAmC,QAAQ,CAACgC,mBAAmB,CAACD,UAAU,CAAC,CAACE,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ;AACF","ignoreList":[]}
@@ -18,11 +18,11 @@ export const loadTexture = async (root, imageBitmap, texture) => {
18
18
  export async function loadBitmap(root, imageURI, setTexture, usage = ['sampled', 'render']) {
19
19
  const bitmap = await getBitmapFromURI(imageURI);
20
20
  let texture = await createTexture(root, bitmap);
21
- texture = await addTextureUsage(texture, usage);
21
+ texture = addTextureUsage(texture, usage);
22
22
  setTexture(texture);
23
23
  await loadTexture(root, bitmap, texture);
24
24
  }
25
- export async function addTextureUsage(texture, usage) {
25
+ function addTextureUsage(texture, usage) {
26
26
  return texture.$usage(...usage);
27
27
  }
28
28
  //# sourceMappingURL=textures.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getBitmapFromURI","createTexture","root","size","texture","globalThis","__TYPEGPU_AUTONAME__","a","width","height","format","loadTexture","imageBitmap","device","queue","copyExternalImageToTexture","source","unwrap","loadBitmap","imageURI","setTexture","usage","bitmap","addTextureUsage","$usage"],"sourceRoot":"../../../../src","sources":["shaders/resourceManagement/textures.ts"],"mappings":";;AACA,OAAOA,gBAAgB,MAAM,cAAW;AAExC,OAAO,MAAMC,aAAa,GAAG,MAAAA,CAC3BC,IAAc,EACdC,IAGC,KAE6B;EAC9B,MAAMC,OAAO,IAAAC,UAAA,CAAAC,oBAAA,KAAAC,CAAA,IAAAA,CAAA,GAAGL,IAAI,CAAC,WAAW,CAAC,CAACD,aAAa,CAAC;IAC9CE,IAAI,EAAE,CAACA,IAAI,CAACK,KAAK,EAAEL,IAAI,CAACM,MAAM,EAAE,CAAC,CAAC;IAClCC,MAAM,EAAE;EACV,CAAC,CAAC;EAEF,OAAON,OAAO;AAChB,CAAC;AAED,OAAO,MAAMO,WAAW,GAAG,MAAAA,CACzBT,IAAc,EACdU,WAAwB,EACxBR,OAAyB,KACtB;EACHF,IAAI,CAACW,MAAM,CAACC,KAAK,CAACC,0BAA0B,CAC1C;IAAEC,MAAM,EAAEJ;EAAY,CAAC,EACvB;IAAER,OAAO,EAAEF,IAAI,CAACe,MAAM,CAACb,OAAO;EAAE,CAAC,EACjC,CAACQ,WAAW,CAACJ,KAAK,EAAEI,WAAW,CAACH,MAAM,CACxC,CAAC;AACH,CAAC;AAED,OAAO,eAAeS,UAAUA,CAC9BhB,IAAc,EACdiB,QAAgB,EAChBC,UAAwD,EACxDC,KAA+B,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,EACvD;EACA,MAAMC,MAAM,GAAG,MAAMtB,gBAAgB,CAACmB,QAAQ,CAAC;EAC/C,IAAIf,OAAO,GAAG,MAAMH,aAAa,CAACC,IAAI,EAAEoB,MAAM,CAAC;EAC/ClB,OAAO,GAAG,MAAMmB,eAAe,CAACnB,OAAO,EAAEiB,KAAK,CAAC;EAE/CD,UAAU,CAAChB,OAAO,CAAC;EACnB,MAAMO,WAAW,CAACT,IAAI,EAAEoB,MAAM,EAAElB,OAAO,CAAC;AAC1C;AAEA,OAAO,eAAemB,eAAeA,CACnCnB,OAAoB,EACpBiB,KAA+B,EAC/B;EACA,OAAOjB,OAAO,CAACoB,MAAM,CAAC,GAAGH,KAAK,CAAC;AACjC","ignoreList":[]}
1
+ {"version":3,"names":["getBitmapFromURI","createTexture","root","size","texture","globalThis","__TYPEGPU_AUTONAME__","a","width","height","format","loadTexture","imageBitmap","device","queue","copyExternalImageToTexture","source","unwrap","loadBitmap","imageURI","setTexture","usage","bitmap","addTextureUsage","$usage"],"sourceRoot":"../../../../src","sources":["shaders/resourceManagement/textures.ts"],"mappings":";;AACA,OAAOA,gBAAgB,MAAM,cAAW;AAExC,OAAO,MAAMC,aAAa,GAAG,MAAAA,CAC3BC,IAAc,EACdC,IAGC,KAE6B;EAC9B,MAAMC,OAAO,IAAAC,UAAA,CAAAC,oBAAA,KAAAC,CAAA,IAAAA,CAAA,GAAGL,IAAI,CAAC,WAAW,CAAC,CAACD,aAAa,CAAC;IAC9CE,IAAI,EAAE,CAACA,IAAI,CAACK,KAAK,EAAEL,IAAI,CAACM,MAAM,EAAE,CAAC,CAAC;IAClCC,MAAM,EAAE;EACV,CAAC,CAAC;EAEF,OAAON,OAAO;AAChB,CAAC;AAED,OAAO,MAAMO,WAAW,GAAG,MAAAA,CACzBT,IAAc,EACdU,WAAwB,EACxBR,OAAyB,KACtB;EACHF,IAAI,CAACW,MAAM,CAACC,KAAK,CAACC,0BAA0B,CAC1C;IAAEC,MAAM,EAAEJ;EAAY,CAAC,EACvB;IAAER,OAAO,EAAEF,IAAI,CAACe,MAAM,CAACb,OAAO;EAAE,CAAC,EACjC,CAACQ,WAAW,CAACJ,KAAK,EAAEI,WAAW,CAACH,MAAM,CACxC,CAAC;AACH,CAAC;AAED,OAAO,eAAeS,UAAUA,CAC9BhB,IAAc,EACdiB,QAAgB,EAChBC,UAAwD,EACxDC,KAA+B,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,EACvD;EACA,MAAMC,MAAM,GAAG,MAAMtB,gBAAgB,CAACmB,QAAQ,CAAC;EAC/C,IAAIf,OAAO,GAAG,MAAMH,aAAa,CAACC,IAAI,EAAEoB,MAAM,CAAC;EAC/ClB,OAAO,GAAGmB,eAAe,CAACnB,OAAO,EAAEiB,KAAK,CAAC;EAEzCD,UAAU,CAAChB,OAAO,CAAC;EACnB,MAAMO,WAAW,CAACT,IAAI,EAAEoB,MAAM,EAAElB,OAAO,CAAC;AAC1C;AAEA,SAASmB,eAAeA,CACtBnB,OAAoB,EACpBiB,KAA+B,EAC/B;EACA,OAAOjB,OAAO,CAACoB,MAAM,CAAC,GAAGH,KAAK,CAAC;AACjC","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  import tgpu from 'typegpu';
4
4
  import * as std from 'typegpu/std';
5
5
  import * as d from 'typegpu/data';
6
+ import { sharedBindGroupLayout } from "./bindGroupLayouts.js";
6
7
  export const hueShift = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(tgpu.fn([d.vec3f, d.f32], d.vec3f)(($ => (globalThis.__TYPEGPU_META__ ??= new WeakMap()).set($.f = (rgb, angle) => {
7
8
  const hsv = rgbToHSV(rgb);
8
9
  const shiftedH = std.fract(std.add(hsv.x, angle / 360.0));
@@ -184,4 +185,44 @@ export const linearstep = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(tgpu.fn(
184
185
  };
185
186
  }
186
187
  }) && $.f)({})), "linearstep");
188
+ export const getPixelColorFromVector = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(tgpu.fn([d.vec2f], d.vec4f)(($ => (globalThis.__TYPEGPU_META__ ??= new WeakMap()).set($.f = coords => {
189
+ return std.textureSample(sharedBindGroupLayout.$.texture, sharedBindGroupLayout.$.sampler, coords);
190
+ }, {
191
+ v: 1,
192
+ name: void 0,
193
+ ast: {"params":[{"type":"i","name":"coords"}],"body":[0,[[10,[6,[7,"std","textureSample"],[[7,[7,"sharedBindGroupLayout","$"],"texture"],[7,[7,"sharedBindGroupLayout","$"],"sampler"],"coords"]]]]],"externalNames":["std","sharedBindGroupLayout"]},
194
+ get externals() {
195
+ return {
196
+ std,
197
+ sharedBindGroupLayout
198
+ };
199
+ }
200
+ }) && $.f)({})), "getPixelColorFromVector");
201
+ export const getPixelColorFromNonReversedVector = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(tgpu.fn([d.vec2f], d.vec4f)(($ => (globalThis.__TYPEGPU_META__ ??= new WeakMap()).set($.f = input => {
202
+ const coords = d.vec2f(input.x, 1.0 - input.y);
203
+ return getPixelColorFromVector(coords);
204
+ }, {
205
+ v: 1,
206
+ name: void 0,
207
+ ast: {"params":[{"type":"i","name":"input"}],"body":[0,[[13,"coords",[6,[7,"d","vec2f"],[[7,"input","x"],[1,[5,"1"],"-",[7,"input","y"]]]]],[10,[6,"getPixelColorFromVector",["coords"]]]]],"externalNames":["d","getPixelColorFromVector"]},
208
+ get externals() {
209
+ return {
210
+ d,
211
+ getPixelColorFromVector
212
+ };
213
+ }
214
+ }) && $.f)({})), "getPixelColorFromNonReversedVector");
215
+ export const random = (globalThis.__TYPEGPU_AUTONAME__ ?? (a => a))(tgpu.fn([d.vec2f], d.f32)(($ => (globalThis.__TYPEGPU_META__ ??= new WeakMap()).set($.f = st => {
216
+ return std.fract(std.sin(std.dot(st, d.vec2f(12.9898, 78.233))) * 437358.845701);
217
+ }, {
218
+ v: 1,
219
+ name: void 0,
220
+ ast: {"params":[{"type":"i","name":"st"}],"body":[0,[[10,[6,[7,"std","fract"],[[1,[6,[7,"std","sin"],[[6,[7,"std","dot"],["st",[6,[7,"d","vec2f"],[[5,"12.9898"],[5,"78.233"]]]]]]],"*",[5,"437358.845701"]]]]]]],"externalNames":["std","d"]},
221
+ get externals() {
222
+ return {
223
+ std,
224
+ d
225
+ };
226
+ }
227
+ }) && $.f)({})), "random");
187
228
  //# sourceMappingURL=tgpuUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["tgpu","std","d","hueShift","globalThis","__TYPEGPU_AUTONAME__","a","fn","vec3f","f32","$","__TYPEGPU_META__","WeakMap","set","f","rgb","angle","hsv","rgbToHSV","shiftedH","fract","add","x","shiftedRGB","hsvToRGB","y","z","v","name","ast","{\"params\":[{\"type\":\"i\",\"name\":\"rgb\"},{\"type\":\"i\",\"name\":\"angle\"}],\"body\":[0,[[13,\"hsv\",[6,\"rgbToHSV\",[\"rgb\"]]],[13,\"shiftedH\",[6,[7,\"std\",\"fract\"],[[6,[7,\"std\",\"add\"],[[7,\"hsv\",\"x\"],[1,\"angle\",\"/\",[5,\"360\"]]]]]]],[13,\"shiftedRGB\",[6,\"hsvToRGB\",[[6,[7,\"d\",\"vec3f\"],[\"shiftedH\",[7,\"hsv\",\"y\"],[7,\"hsv\",\"z\"]]]]]],[10,\"shiftedRGB\"]]],\"externalNames\":[\"rgbToHSV\",\"std\",\"hsvToRGB\",\"d\"]}","externals","K","vec4f","p","mix","w","step","q","max","d_val","sub","min","epsilon","h_temp","div","mul","h","s","{\"params\":[{\"type\":\"i\",\"name\":\"rgb\"}],\"body\":[0,[[13,\"K\",[6,[7,\"d\",\"vec4f\"],[[5,\"0\"],[1,[4,\"-\",[5,\"1\"]],\"/\",[5,\"3\"]],[1,[5,\"2\"],\"/\",[5,\"3\"]],[4,\"-\",[5,\"1\"]]]]],[13,\"p\",[6,[7,\"std\",\"mix\"],[[6,[7,\"d\",\"vec4f\"],[[7,\"rgb\",\"z\"],[7,\"rgb\",\"y\"],[7,\"K\",\"w\"],[7,\"K\",\"z\"]]],[6,[7,\"d\",\"vec4f\"],[[7,\"rgb\",\"y\"],[7,\"rgb\",\"z\"],[7,\"K\",\"x\"],[7,\"K\",\"y\"]]],[6,[7,\"std\",\"step\"],[[7,\"rgb\",\"z\"],[7,\"rgb\",\"y\"]]]]]],[13,\"q\",[6,[7,\"std\",\"mix\"],[[6,[7,\"d\",\"vec4f\"],[[7,\"p\",\"x\"],[7,\"p\",\"y\"],[7,\"p\",\"w\"],[7,\"rgb\",\"x\"]]],[6,[7,\"d\",\"vec4f\"],[[7,\"rgb\",\"x\"],[7,\"p\",\"y\"],[7,\"p\",\"z\"],[7,\"p\",\"x\"]]],[6,[7,\"std\",\"step\"],[[7,\"p\",\"x\"],[7,\"rgb\",\"x\"]]]]]],[13,\"v\",[6,[7,\"std\",\"max\"],[[7,\"q\",\"x\"],[7,\"q\",\"y\"]]]],[13,\"d_val\",[6,[7,\"std\",\"sub\"],[\"v\",[6,[7,\"std\",\"min\"],[[7,\"q\",\"y\"],[7,\"q\",\"w\"]]]]]],[13,\"epsilon\",[6,[7,\"d\",\"f32\"],[[5,\"1e-10\"]]]],[13,\"h_temp\",[6,[7,\"std\",\"add\"],[[7,\"q\",\"z\"],[6,[7,\"std\",\"div\"],[[6,[7,\"std\",\"sub\"],[[7,\"q\",\"w\"],[7,\"q\",\"y\"]]],[6,[7,\"std\",\"add\"],[[6,[7,\"std\",\"mul\"],[[5,\"6\"],\"d_val\"]],\"epsilon\"]]]]]]],[13,\"h\",[6,[7,\"std\",\"fract\"],[\"h_temp\"]]],[13,\"s\",[6,[7,\"std\",\"div\"],[\"d_val\",[6,[7,\"std\",\"add\"],[\"v\",\"epsilon\"]]]]],[10,[6,[7,\"d\",\"vec3f\"],[\"h\",\"s\",\"v\"]]]]],\"externalNames\":[\"d\",\"std\"]}","h2","i","floor","t","i1","i2","i3","i4","i5","i0","u32","r","g","b","{\"params\":[{\"type\":\"i\",\"name\":\"hsv\"}],\"body\":[0,[[13,\"h\",[7,\"hsv\",\"x\"]],[13,\"s\",[7,\"hsv\",\"y\"]],[13,\"v\",[7,\"hsv\",\"z\"]],[13,\"h2\",[1,\"h\",\"*\",[6,[7,\"d\",\"f32\"],[[5,\"6\"]]]]],[13,\"i\",[6,[7,\"std\",\"floor\"],[\"h2\"]]],[13,\"f\",[1,\"h2\",\"-\",\"i\"]],[13,\"p\",[1,\"v\",\"*\",[1,[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],\"-\",\"s\"]]],[13,\"q\",[1,\"v\",\"*\",[1,[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],\"-\",[1,\"s\",\"*\",\"f\"]]]],[13,\"t\",[1,\"v\",\"*\",[1,[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],\"-\",[1,\"s\",\"*\",[1,[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],\"-\",\"f\"]]]]],[13,\"i1\",[6,[7,\"d\",\"f32\"],[[1,\"i\",\"==\",[5,\"1\"]]]]],[13,\"i2\",[6,[7,\"d\",\"f32\"],[[1,\"i\",\"==\",[5,\"2\"]]]]],[13,\"i3\",[6,[7,\"d\",\"f32\"],[[1,\"i\",\"==\",[5,\"3\"]]]]],[13,\"i4\",[6,[7,\"d\",\"f32\"],[[1,\"i\",\"==\",[5,\"4\"]]]]],[13,\"i5\",[6,[7,\"d\",\"f32\"],[[1,\"i\",\"==\",[5,\"5\"]]]]],[13,\"i0\",[6,[7,\"d\",\"f32\"],[[1,[6,[7,\"d\",\"u32\"],[[1,[1,[1,[1,\"i5\",\"+\",\"i1\"],\"+\",\"i2\"],\"+\",\"i3\"],\"+\",\"i4\"]]],\"==\",[6,[7,\"d\",\"u32\"],[[5,\"0\"]]]]]]],[13,\"r\",[1,[1,[1,[1,[1,[1,\"i0\",\"*\",\"v\"],\"+\",[1,\"i1\",\"*\",\"q\"]],\"+\",[1,\"i2\",\"*\",\"p\"]],\"+\",[1,\"i3\",\"*\",\"p\"]],\"+\",[1,\"i4\",\"*\",\"t\"]],\"+\",[1,\"i5\",\"*\",\"v\"]]],[13,\"g\",[1,[1,[1,[1,[1,[1,\"i0\",\"*\",\"t\"],\"+\",[1,\"i1\",\"*\",\"v\"]],\"+\",[1,\"i2\",\"*\",\"v\"]],\"+\",[1,\"i3\",\"*\",\"q\"]],\"+\",[1,\"i4\",\"*\",\"p\"]],\"+\",[1,\"i5\",\"*\",\"p\"]]],[13,\"b\",[1,[1,[1,[1,[1,[1,\"i0\",\"*\",\"p\"],\"+\",[1,\"i1\",\"*\",\"p\"]],\"+\",[1,\"i2\",\"*\",\"t\"]],\"+\",[1,\"i3\",\"*\",\"v\"]],\"+\",[1,\"i4\",\"*\",\"v\"]],\"+\",[1,\"i5\",\"*\",\"q\"]]],[10,[6,[7,\"d\",\"vec3f\"],[\"r\",\"g\",\"b\"]]]]],\"externalNames\":[\"d\",\"std\"]}","fmod","number","md","dv","val","c","{\"params\":[{\"type\":\"i\",\"name\":\"number\"},{\"type\":\"i\",\"name\":\"md\"}],\"body\":[0,[[13,\"dv\",[6,[7,\"std\",\"div\"],[\"number\",\"md\"]]],[13,\"val\",[6,[7,\"std\",\"mul\"],[\"md\",[6,[7,\"std\",\"floor\"],[\"dv\"]]]]],[13,\"c\",[6,[7,\"std\",\"sub\"],[\"number\",\"val\"]]],[10,\"c\"]]],\"externalNames\":[\"std\"]}","glareColorShift","color","power","maxValue","scale","boosted","saturated","{\"params\":[{\"type\":\"i\",\"name\":\"color\"},{\"type\":\"i\",\"name\":\"power\"}],\"body\":[0,[[13,\"maxValue\",[6,[7,\"std\",\"max\"],[[6,[7,\"std\",\"max\"],[[7,\"color\",\"x\"],[7,\"color\",\"y\"]]],[7,\"color\",\"z\"]]]],[13,\"scale\",[6,[7,\"std\",\"mix\"],[[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],[1,[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],\"/\",[6,[7,\"std\",\"max\"],[\"maxValue\",[6,[7,\"d\",\"f32\"],[[5,\"0.001\"]]]]]],\"power\"]]],[13,\"boosted\",[6,[7,\"std\",\"mul\"],[\"color\",\"scale\"]]],[13,\"saturated\",[6,[7,\"std\",\"mix\"],[\"color\",\"boosted\",\"power\"]]],[10,\"saturated\"]]],\"externalNames\":[\"std\",\"d\"]}","overlayChannel","base","blend","mult","screen","select","{\"params\":[{\"type\":\"i\",\"name\":\"base\"},{\"type\":\"i\",\"name\":\"blend\"}],\"body\":[0,[[13,\"mult\",[6,[7,\"std\",\"mul\"],[[5,\"2\"],[6,[7,\"std\",\"mul\"],[\"base\",\"blend\"]]]]],[13,\"screen\",[6,[7,\"std\",\"sub\"],[[5,\"1\"],[6,[7,\"std\",\"mul\"],[[5,\"2\"],[6,[7,\"std\",\"mul\"],[[6,[7,\"std\",\"sub\"],[[5,\"1\"],\"base\"]],[6,[7,\"std\",\"sub\"],[[5,\"1\"],\"blend\"]]]]]]]]],[10,[6,[7,\"std\",\"select\"],[\"screen\",\"mult\",[1,\"base\",\"<\",[6,[7,\"d\",\"f32\"],[[5,\"0.5\"]]]]]]]]],\"externalNames\":[\"std\",\"d\"]}","overlayChannels","{\"params\":[{\"type\":\"i\",\"name\":\"base\"},{\"type\":\"i\",\"name\":\"blend\"}],\"body\":[0,[[10,[6,[7,\"d\",\"vec3f\"],[[6,\"overlayChannel\",[[7,\"base\",\"x\"],[7,\"blend\",\"x\"]]],[6,\"overlayChannel\",[[7,\"base\",\"y\"],[7,\"blend\",\"y\"]]],[6,\"overlayChannel\",[[7,\"base\",\"z\"],[7,\"blend\",\"z\"]]]]]]]],\"externalNames\":[\"d\",\"overlayChannel\"]}","luma601","{\"params\":[{\"type\":\"i\",\"name\":\"rgb\"}],\"body\":[0,[[10,[6,[7,\"std\",\"add\"],[[6,[7,\"std\",\"mul\"],[[7,\"rgb\",\"x\"],[5,\"0.299\"]]],[6,[7,\"std\",\"add\"],[[6,[7,\"std\",\"mul\"],[[7,\"rgb\",\"y\"],[5,\"0.587\"]]],[6,[7,\"std\",\"mul\"],[[7,\"rgb\",\"z\"],[5,\"0.114\"]]]]]]]]]],\"externalNames\":[\"std\"]}","tiltTowardsLighterNeighbor","toYellow","toCyan","yYellow","yCyan","toColor","tClamped","clamp","{\"params\":[{\"type\":\"i\",\"name\":\"rgb\"},{\"type\":\"i\",\"name\":\"t\"}],\"body\":[0,[[13,\"toYellow\",[6,[7,\"d\",\"vec3f\"],[[6,[7,\"std\",\"max\"],[[7,\"rgb\",\"x\"],[7,\"rgb\",\"y\"]]],[6,[7,\"std\",\"max\"],[[7,\"rgb\",\"x\"],[7,\"rgb\",\"y\"]]],[7,\"rgb\",\"z\"]]]],[13,\"toCyan\",[6,[7,\"d\",\"vec3f\"],[[7,\"rgb\",\"x\"],[6,[7,\"std\",\"max\"],[[7,\"rgb\",\"y\"],[7,\"rgb\",\"z\"]]],[6,[7,\"std\",\"max\"],[[7,\"rgb\",\"y\"],[7,\"rgb\",\"z\"]]]]]],[13,\"yYellow\",[6,\"luma601\",[\"toYellow\"]]],[13,\"yCyan\",[6,\"luma601\",[\"toCyan\"]]],[13,\"toColor\",[6,[7,\"std\",\"select\"],[\"toCyan\",\"toYellow\",[1,\"yYellow\",\">=\",\"yCyan\"]]]],[13,\"tClamped\",[6,[7,\"std\",\"clamp\"],[\"t\",[5,\"0\"],[5,\"1\"]]]],[10,[6,[7,\"std\",\"mix\"],[\"rgb\",\"toColor\",\"tClamped\"]]]]],\"externalNames\":[\"d\",\"std\",\"luma601\"]}","linearstep","num1","num2","{\"params\":[{\"type\":\"i\",\"name\":\"num1\"},{\"type\":\"i\",\"name\":\"num2\"},{\"type\":\"i\",\"name\":\"x\"}],\"body\":[0,[[13,\"t\",[1,[1,\"x\",\"-\",\"num1\"],\"/\",[1,\"num2\",\"-\",\"num1\"]]],[10,[6,[7,\"std\",\"clamp\"],[\"t\",[5,\"0\"],[5,\"1\"]]]]]],\"externalNames\":[\"std\"]}"],"sourceRoot":"../../../src","sources":["shaders/tgpuUtils.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["tgpu","std","d","sharedBindGroupLayout","hueShift","globalThis","__TYPEGPU_AUTONAME__","a","fn","vec3f","f32","$","__TYPEGPU_META__","WeakMap","set","f","rgb","angle","hsv","rgbToHSV","shiftedH","fract","add","x","shiftedRGB","hsvToRGB","y","z","v","name","ast","{\"params\":[{\"type\":\"i\",\"name\":\"rgb\"},{\"type\":\"i\",\"name\":\"angle\"}],\"body\":[0,[[13,\"hsv\",[6,\"rgbToHSV\",[\"rgb\"]]],[13,\"shiftedH\",[6,[7,\"std\",\"fract\"],[[6,[7,\"std\",\"add\"],[[7,\"hsv\",\"x\"],[1,\"angle\",\"/\",[5,\"360\"]]]]]]],[13,\"shiftedRGB\",[6,\"hsvToRGB\",[[6,[7,\"d\",\"vec3f\"],[\"shiftedH\",[7,\"hsv\",\"y\"],[7,\"hsv\",\"z\"]]]]]],[10,\"shiftedRGB\"]]],\"externalNames\":[\"rgbToHSV\",\"std\",\"hsvToRGB\",\"d\"]}","externals","K","vec4f","p","mix","w","step","q","max","d_val","sub","min","epsilon","h_temp","div","mul","h","s","{\"params\":[{\"type\":\"i\",\"name\":\"rgb\"}],\"body\":[0,[[13,\"K\",[6,[7,\"d\",\"vec4f\"],[[5,\"0\"],[1,[4,\"-\",[5,\"1\"]],\"/\",[5,\"3\"]],[1,[5,\"2\"],\"/\",[5,\"3\"]],[4,\"-\",[5,\"1\"]]]]],[13,\"p\",[6,[7,\"std\",\"mix\"],[[6,[7,\"d\",\"vec4f\"],[[7,\"rgb\",\"z\"],[7,\"rgb\",\"y\"],[7,\"K\",\"w\"],[7,\"K\",\"z\"]]],[6,[7,\"d\",\"vec4f\"],[[7,\"rgb\",\"y\"],[7,\"rgb\",\"z\"],[7,\"K\",\"x\"],[7,\"K\",\"y\"]]],[6,[7,\"std\",\"step\"],[[7,\"rgb\",\"z\"],[7,\"rgb\",\"y\"]]]]]],[13,\"q\",[6,[7,\"std\",\"mix\"],[[6,[7,\"d\",\"vec4f\"],[[7,\"p\",\"x\"],[7,\"p\",\"y\"],[7,\"p\",\"w\"],[7,\"rgb\",\"x\"]]],[6,[7,\"d\",\"vec4f\"],[[7,\"rgb\",\"x\"],[7,\"p\",\"y\"],[7,\"p\",\"z\"],[7,\"p\",\"x\"]]],[6,[7,\"std\",\"step\"],[[7,\"p\",\"x\"],[7,\"rgb\",\"x\"]]]]]],[13,\"v\",[6,[7,\"std\",\"max\"],[[7,\"q\",\"x\"],[7,\"q\",\"y\"]]]],[13,\"d_val\",[6,[7,\"std\",\"sub\"],[\"v\",[6,[7,\"std\",\"min\"],[[7,\"q\",\"y\"],[7,\"q\",\"w\"]]]]]],[13,\"epsilon\",[6,[7,\"d\",\"f32\"],[[5,\"1e-10\"]]]],[13,\"h_temp\",[6,[7,\"std\",\"add\"],[[7,\"q\",\"z\"],[6,[7,\"std\",\"div\"],[[6,[7,\"std\",\"sub\"],[[7,\"q\",\"w\"],[7,\"q\",\"y\"]]],[6,[7,\"std\",\"add\"],[[6,[7,\"std\",\"mul\"],[[5,\"6\"],\"d_val\"]],\"epsilon\"]]]]]]],[13,\"h\",[6,[7,\"std\",\"fract\"],[\"h_temp\"]]],[13,\"s\",[6,[7,\"std\",\"div\"],[\"d_val\",[6,[7,\"std\",\"add\"],[\"v\",\"epsilon\"]]]]],[10,[6,[7,\"d\",\"vec3f\"],[\"h\",\"s\",\"v\"]]]]],\"externalNames\":[\"d\",\"std\"]}","h2","i","floor","t","i1","i2","i3","i4","i5","i0","u32","r","g","b","{\"params\":[{\"type\":\"i\",\"name\":\"hsv\"}],\"body\":[0,[[13,\"h\",[7,\"hsv\",\"x\"]],[13,\"s\",[7,\"hsv\",\"y\"]],[13,\"v\",[7,\"hsv\",\"z\"]],[13,\"h2\",[1,\"h\",\"*\",[6,[7,\"d\",\"f32\"],[[5,\"6\"]]]]],[13,\"i\",[6,[7,\"std\",\"floor\"],[\"h2\"]]],[13,\"f\",[1,\"h2\",\"-\",\"i\"]],[13,\"p\",[1,\"v\",\"*\",[1,[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],\"-\",\"s\"]]],[13,\"q\",[1,\"v\",\"*\",[1,[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],\"-\",[1,\"s\",\"*\",\"f\"]]]],[13,\"t\",[1,\"v\",\"*\",[1,[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],\"-\",[1,\"s\",\"*\",[1,[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],\"-\",\"f\"]]]]],[13,\"i1\",[6,[7,\"d\",\"f32\"],[[1,\"i\",\"==\",[5,\"1\"]]]]],[13,\"i2\",[6,[7,\"d\",\"f32\"],[[1,\"i\",\"==\",[5,\"2\"]]]]],[13,\"i3\",[6,[7,\"d\",\"f32\"],[[1,\"i\",\"==\",[5,\"3\"]]]]],[13,\"i4\",[6,[7,\"d\",\"f32\"],[[1,\"i\",\"==\",[5,\"4\"]]]]],[13,\"i5\",[6,[7,\"d\",\"f32\"],[[1,\"i\",\"==\",[5,\"5\"]]]]],[13,\"i0\",[6,[7,\"d\",\"f32\"],[[1,[6,[7,\"d\",\"u32\"],[[1,[1,[1,[1,\"i5\",\"+\",\"i1\"],\"+\",\"i2\"],\"+\",\"i3\"],\"+\",\"i4\"]]],\"==\",[6,[7,\"d\",\"u32\"],[[5,\"0\"]]]]]]],[13,\"r\",[1,[1,[1,[1,[1,[1,\"i0\",\"*\",\"v\"],\"+\",[1,\"i1\",\"*\",\"q\"]],\"+\",[1,\"i2\",\"*\",\"p\"]],\"+\",[1,\"i3\",\"*\",\"p\"]],\"+\",[1,\"i4\",\"*\",\"t\"]],\"+\",[1,\"i5\",\"*\",\"v\"]]],[13,\"g\",[1,[1,[1,[1,[1,[1,\"i0\",\"*\",\"t\"],\"+\",[1,\"i1\",\"*\",\"v\"]],\"+\",[1,\"i2\",\"*\",\"v\"]],\"+\",[1,\"i3\",\"*\",\"q\"]],\"+\",[1,\"i4\",\"*\",\"p\"]],\"+\",[1,\"i5\",\"*\",\"p\"]]],[13,\"b\",[1,[1,[1,[1,[1,[1,\"i0\",\"*\",\"p\"],\"+\",[1,\"i1\",\"*\",\"p\"]],\"+\",[1,\"i2\",\"*\",\"t\"]],\"+\",[1,\"i3\",\"*\",\"v\"]],\"+\",[1,\"i4\",\"*\",\"v\"]],\"+\",[1,\"i5\",\"*\",\"q\"]]],[10,[6,[7,\"d\",\"vec3f\"],[\"r\",\"g\",\"b\"]]]]],\"externalNames\":[\"d\",\"std\"]}","fmod","number","md","dv","val","c","{\"params\":[{\"type\":\"i\",\"name\":\"number\"},{\"type\":\"i\",\"name\":\"md\"}],\"body\":[0,[[13,\"dv\",[6,[7,\"std\",\"div\"],[\"number\",\"md\"]]],[13,\"val\",[6,[7,\"std\",\"mul\"],[\"md\",[6,[7,\"std\",\"floor\"],[\"dv\"]]]]],[13,\"c\",[6,[7,\"std\",\"sub\"],[\"number\",\"val\"]]],[10,\"c\"]]],\"externalNames\":[\"std\"]}","glareColorShift","color","power","maxValue","scale","boosted","saturated","{\"params\":[{\"type\":\"i\",\"name\":\"color\"},{\"type\":\"i\",\"name\":\"power\"}],\"body\":[0,[[13,\"maxValue\",[6,[7,\"std\",\"max\"],[[6,[7,\"std\",\"max\"],[[7,\"color\",\"x\"],[7,\"color\",\"y\"]]],[7,\"color\",\"z\"]]]],[13,\"scale\",[6,[7,\"std\",\"mix\"],[[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],[1,[6,[7,\"d\",\"f32\"],[[5,\"1\"]]],\"/\",[6,[7,\"std\",\"max\"],[\"maxValue\",[6,[7,\"d\",\"f32\"],[[5,\"0.001\"]]]]]],\"power\"]]],[13,\"boosted\",[6,[7,\"std\",\"mul\"],[\"color\",\"scale\"]]],[13,\"saturated\",[6,[7,\"std\",\"mix\"],[\"color\",\"boosted\",\"power\"]]],[10,\"saturated\"]]],\"externalNames\":[\"std\",\"d\"]}","overlayChannel","base","blend","mult","screen","select","{\"params\":[{\"type\":\"i\",\"name\":\"base\"},{\"type\":\"i\",\"name\":\"blend\"}],\"body\":[0,[[13,\"mult\",[6,[7,\"std\",\"mul\"],[[5,\"2\"],[6,[7,\"std\",\"mul\"],[\"base\",\"blend\"]]]]],[13,\"screen\",[6,[7,\"std\",\"sub\"],[[5,\"1\"],[6,[7,\"std\",\"mul\"],[[5,\"2\"],[6,[7,\"std\",\"mul\"],[[6,[7,\"std\",\"sub\"],[[5,\"1\"],\"base\"]],[6,[7,\"std\",\"sub\"],[[5,\"1\"],\"blend\"]]]]]]]]],[10,[6,[7,\"std\",\"select\"],[\"screen\",\"mult\",[1,\"base\",\"<\",[6,[7,\"d\",\"f32\"],[[5,\"0.5\"]]]]]]]]],\"externalNames\":[\"std\",\"d\"]}","overlayChannels","{\"params\":[{\"type\":\"i\",\"name\":\"base\"},{\"type\":\"i\",\"name\":\"blend\"}],\"body\":[0,[[10,[6,[7,\"d\",\"vec3f\"],[[6,\"overlayChannel\",[[7,\"base\",\"x\"],[7,\"blend\",\"x\"]]],[6,\"overlayChannel\",[[7,\"base\",\"y\"],[7,\"blend\",\"y\"]]],[6,\"overlayChannel\",[[7,\"base\",\"z\"],[7,\"blend\",\"z\"]]]]]]]],\"externalNames\":[\"d\",\"overlayChannel\"]}","luma601","{\"params\":[{\"type\":\"i\",\"name\":\"rgb\"}],\"body\":[0,[[10,[6,[7,\"std\",\"add\"],[[6,[7,\"std\",\"mul\"],[[7,\"rgb\",\"x\"],[5,\"0.299\"]]],[6,[7,\"std\",\"add\"],[[6,[7,\"std\",\"mul\"],[[7,\"rgb\",\"y\"],[5,\"0.587\"]]],[6,[7,\"std\",\"mul\"],[[7,\"rgb\",\"z\"],[5,\"0.114\"]]]]]]]]]],\"externalNames\":[\"std\"]}","tiltTowardsLighterNeighbor","toYellow","toCyan","yYellow","yCyan","toColor","tClamped","clamp","{\"params\":[{\"type\":\"i\",\"name\":\"rgb\"},{\"type\":\"i\",\"name\":\"t\"}],\"body\":[0,[[13,\"toYellow\",[6,[7,\"d\",\"vec3f\"],[[6,[7,\"std\",\"max\"],[[7,\"rgb\",\"x\"],[7,\"rgb\",\"y\"]]],[6,[7,\"std\",\"max\"],[[7,\"rgb\",\"x\"],[7,\"rgb\",\"y\"]]],[7,\"rgb\",\"z\"]]]],[13,\"toCyan\",[6,[7,\"d\",\"vec3f\"],[[7,\"rgb\",\"x\"],[6,[7,\"std\",\"max\"],[[7,\"rgb\",\"y\"],[7,\"rgb\",\"z\"]]],[6,[7,\"std\",\"max\"],[[7,\"rgb\",\"y\"],[7,\"rgb\",\"z\"]]]]]],[13,\"yYellow\",[6,\"luma601\",[\"toYellow\"]]],[13,\"yCyan\",[6,\"luma601\",[\"toCyan\"]]],[13,\"toColor\",[6,[7,\"std\",\"select\"],[\"toCyan\",\"toYellow\",[1,\"yYellow\",\">=\",\"yCyan\"]]]],[13,\"tClamped\",[6,[7,\"std\",\"clamp\"],[\"t\",[5,\"0\"],[5,\"1\"]]]],[10,[6,[7,\"std\",\"mix\"],[\"rgb\",\"toColor\",\"tClamped\"]]]]],\"externalNames\":[\"d\",\"std\",\"luma601\"]}","linearstep","num1","num2","{\"params\":[{\"type\":\"i\",\"name\":\"num1\"},{\"type\":\"i\",\"name\":\"num2\"},{\"type\":\"i\",\"name\":\"x\"}],\"body\":[0,[[13,\"t\",[1,[1,\"x\",\"-\",\"num1\"],\"/\",[1,\"num2\",\"-\",\"num1\"]]],[10,[6,[7,\"std\",\"clamp\"],[\"t\",[5,\"0\"],[5,\"1\"]]]]]],\"externalNames\":[\"std\"]}","getPixelColorFromVector","vec2f","coords","textureSample","texture","sampler","{\"params\":[{\"type\":\"i\",\"name\":\"coords\"}],\"body\":[0,[[10,[6,[7,\"std\",\"textureSample\"],[[7,[7,\"sharedBindGroupLayout\",\"$\"],\"texture\"],[7,[7,\"sharedBindGroupLayout\",\"$\"],\"sampler\"],\"coords\"]]]]],\"externalNames\":[\"std\",\"sharedBindGroupLayout\"]}","getPixelColorFromNonReversedVector","input","{\"params\":[{\"type\":\"i\",\"name\":\"input\"}],\"body\":[0,[[13,\"coords\",[6,[7,\"d\",\"vec2f\"],[[7,\"input\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"input\",\"y\"]]]]],[10,[6,\"getPixelColorFromVector\",[\"coords\"]]]]],\"externalNames\":[\"d\",\"getPixelColorFromVector\"]}","random","st","sin","dot","{\"params\":[{\"type\":\"i\",\"name\":\"st\"}],\"body\":[0,[[10,[6,[7,\"std\",\"fract\"],[[1,[6,[7,\"std\",\"sin\"],[[6,[7,\"std\",\"dot\"],[\"st\",[6,[7,\"d\",\"vec2f\"],[[5,\"12.9898\"],[5,\"78.233\"]]]]]]],\"*\",[5,\"437358.845701\"]]]]]]],\"externalNames\":[\"std\",\"d\"]}"],"sourceRoot":"../../../src","sources":["shaders/tgpuUtils.ts"],"mappings":"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","ignoreList":[]}
@@ -3,8 +3,8 @@
3
3
  import { Dimensions } from 'react-native';
4
4
  const _worklet_14635444434978_init_data = {
5
5
  code: "function utilsTs1(vec,quaternion){const t=[quaternion[1]*vec[2]-quaternion[2]*vec[1],quaternion[2]*vec[0]-quaternion[0]*vec[2],quaternion[0]*vec[1]-quaternion[1]*vec[0]];const t2=[quaternion[3]*vec[0]+t[0],quaternion[3]*vec[1]+t[1],quaternion[3]*vec[2]+t[2]];const crossQT2=[quaternion[1]*t2[2]-quaternion[2]*t2[1],quaternion[2]*t2[0]-quaternion[0]*t2[2],quaternion[0]*t2[1]-quaternion[1]*t2[0]];const rotated=[vec[0]+2.0*crossQT2[0],vec[1]+2.0*crossQT2[1],vec[2]+2.0*crossQT2[2]];return[rotated[0],rotated[1],rotated[2]];}",
6
- location: "/Users/krzysztofpiatek/Projects/libraries/react-native-shine/src/shaders/utils.ts",
7
- sourceMap: "{\"version\":3,\"names\":[\"utilsTs1\",\"vec\",\"quaternion\",\"t\",\"t2\",\"crossQT2\",\"rotated\"],\"sources\":[\"/Users/krzysztofpiatek/Projects/libraries/react-native-shine/src/shaders/utils.ts\"],\"mappings\":\"AAGwC,QACtC,CAAAA,QACAA,CAAAC,GAAA,CAAAC,UACS,EAET,KAAM,CAAAC,CAAO,CAAG,CACdD,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGC,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAC/CC,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGC,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAC/CC,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGC,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAChD,CAGD,KAAM,CAAAG,EAAQ,CAAG,CACfF,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGE,CAAC,CAAC,CAAC,CAAC,CAC7BD,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGE,CAAC,CAAC,CAAC,CAAC,CAC7BD,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGE,CAAC,CAAC,CAAC,CAAC,CAC9B,CAED,KAAM,CAAAE,QAAc,CAAG,CACrBH,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAAGF,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAC7CF,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAAGF,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAC7CF,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAAGF,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAC9C,CAGD,KAAM,CAAAE,OAAa,CAAG,CACpBL,GAAG,CAAC,CAAC,CAAC,CAAG,GAAG,CAAGI,QAAQ,CAAC,CAAC,CAAC,CAC1BJ,GAAG,CAAC,CAAC,CAAC,CAAG,GAAG,CAAGI,QAAQ,CAAC,CAAC,CAAC,CAC1BJ,GAAG,CAAC,CAAC,CAAC,CAAG,GAAG,CAAGI,QAAQ,CAAC,CAAC,CAAC,CAC3B,CAED,MAAO,CAACC,OAAO,CAAC,CAAC,CAAC,CAAEA,OAAO,CAAC,CAAC,CAAC,CAAEA,OAAO,CAAC,CAAC,CAAC,CAAC,CAC7C\",\"ignoreList\":[]}"
6
+ location: "/Users/wojciechstanisz/Desktop/shine3/react-native-shine/src/shaders/utils.ts",
7
+ sourceMap: "{\"version\":3,\"names\":[\"utilsTs1\",\"vec\",\"quaternion\",\"t\",\"t2\",\"crossQT2\",\"rotated\"],\"sources\":[\"/Users/wojciechstanisz/Desktop/shine3/react-native-shine/src/shaders/utils.ts\"],\"mappings\":\"AAGwC,QACtC,CAAAA,QACAA,CAAAC,GAAA,CAAAC,UACS,EAET,KAAM,CAAAC,CAAO,CAAG,CACdD,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGC,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAC/CC,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGC,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAC/CC,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGC,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAChD,CAGD,KAAM,CAAAG,EAAQ,CAAG,CACfF,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGE,CAAC,CAAC,CAAC,CAAC,CAC7BD,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGE,CAAC,CAAC,CAAC,CAAC,CAC7BD,UAAU,CAAC,CAAC,CAAC,CAAGD,GAAG,CAAC,CAAC,CAAC,CAAGE,CAAC,CAAC,CAAC,CAAC,CAC9B,CAED,KAAM,CAAAE,QAAc,CAAG,CACrBH,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAAGF,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAC7CF,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAAGF,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAC7CF,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAAGF,UAAU,CAAC,CAAC,CAAC,CAAGE,EAAE,CAAC,CAAC,CAAC,CAC9C,CAGD,KAAM,CAAAE,OAAa,CAAG,CACpBL,GAAG,CAAC,CAAC,CAAC,CAAG,GAAG,CAAGI,QAAQ,CAAC,CAAC,CAAC,CAC1BJ,GAAG,CAAC,CAAC,CAAC,CAAG,GAAG,CAAGI,QAAQ,CAAC,CAAC,CAAC,CAC1BJ,GAAG,CAAC,CAAC,CAAC,CAAG,GAAG,CAAGI,QAAQ,CAAC,CAAC,CAAC,CAC3B,CAED,MAAO,CAACC,OAAO,CAAC,CAAC,CAAC,CAAEA,OAAO,CAAC,CAAC,CAAC,CAAEA,OAAO,CAAC,CAAC,CAAC,CAAC,CAC7C\",\"ignoreList\":[]}"
8
8
  };
9
9
  export const rotateVectorByQuaternion = function utilsTs1Factory({
10
10
  _worklet_14635444434978_init_data
@@ -50,4 +50,23 @@ export function subscribeToOrientationChange(callback) {
50
50
  handler();
51
51
  return () => subscription.remove();
52
52
  }
53
+ export function deepMerge(target, source) {
54
+ if (typeof target !== 'object' || target === null || typeof source !== 'object' || source === null) {
55
+ return source;
56
+ }
57
+ const result = {
58
+ ...target
59
+ };
60
+ const src = source;
61
+ for (const key in src) {
62
+ if (Object.prototype.hasOwnProperty.call(src, key)) {
63
+ if (key in result && typeof result[key] === 'object' && result[key] !== null) {
64
+ result[key] = deepMerge(result[key], src[key]);
65
+ } else {
66
+ result[key] = src[key];
67
+ }
68
+ }
69
+ }
70
+ return result;
71
+ }
53
72
  //# sourceMappingURL=utils.js.map