react-native-shine 0.2.2 → 0.3.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 (111) hide show
  1. package/README.md +1 -1
  2. package/lib/module/components/Shine.js +269 -0
  3. package/lib/module/components/Shine.js.map +1 -0
  4. package/lib/module/components/ShineGroup.js +104 -0
  5. package/lib/module/components/ShineGroup.js.map +1 -0
  6. package/lib/module/enums/waveCallback.js +19 -0
  7. package/lib/module/enums/waveCallback.js.map +1 -0
  8. package/lib/module/hooks/useOrientation.js +16 -0
  9. package/lib/module/hooks/useOrientation.js.map +1 -0
  10. package/lib/module/index.js +5 -219
  11. package/lib/module/index.js.map +1 -1
  12. package/lib/module/shaders/bindGroupLayouts.js +40 -5
  13. package/lib/module/shaders/bindGroupLayouts.js.map +1 -1
  14. package/lib/module/shaders/bindGroupUtils.js +27 -12
  15. package/lib/module/shaders/bindGroupUtils.js.map +1 -1
  16. package/lib/module/shaders/fragmentShaders/colorMaskFragment.js +2 -2
  17. package/lib/module/shaders/fragmentShaders/colorMaskFragment.js.map +1 -1
  18. package/lib/module/shaders/fragmentShaders/glareFragment.js +114 -0
  19. package/lib/module/shaders/fragmentShaders/glareFragment.js.map +1 -0
  20. package/lib/module/shaders/fragmentShaders/holoFragment.js +33 -0
  21. package/lib/module/shaders/fragmentShaders/holoFragment.js.map +1 -0
  22. package/lib/module/shaders/fragmentShaders/maskFragment.js +20 -0
  23. package/lib/module/shaders/fragmentShaders/maskFragment.js.map +1 -0
  24. package/lib/module/shaders/fragmentShaders/reverseHoloFragment.js +46 -0
  25. package/lib/module/shaders/fragmentShaders/reverseHoloFragment.js.map +1 -0
  26. package/lib/module/shaders/pipelineSetups.js +82 -13
  27. package/lib/module/shaders/pipelineSetups.js.map +1 -1
  28. package/lib/module/shaders/{resourceManagement.js → resourceManagement/bitmaps.js} +2 -1
  29. package/lib/module/shaders/resourceManagement/bitmaps.js.map +1 -0
  30. package/lib/module/shaders/resourceManagement/bufferManager.js +46 -0
  31. package/lib/module/shaders/resourceManagement/bufferManager.js.map +1 -0
  32. package/lib/module/shaders/resourceManagement/textures.js +17 -0
  33. package/lib/module/shaders/resourceManagement/textures.js.map +1 -0
  34. package/lib/module/shaders/tgpuUtils.js +19 -1
  35. package/lib/module/shaders/tgpuUtils.js.map +1 -1
  36. package/lib/module/shaders/utils.js +0 -14
  37. package/lib/module/shaders/utils.js.map +1 -1
  38. package/lib/module/shaders/vertexShaders/mainRotationEffectVertex.js +47 -0
  39. package/lib/module/shaders/vertexShaders/mainRotationEffectVertex.js.map +1 -0
  40. package/lib/module/types/typeUtils.js +17 -5
  41. package/lib/module/types/typeUtils.js.map +1 -1
  42. package/lib/typescript/src/components/Shine.d.ts +17 -0
  43. package/lib/typescript/src/components/Shine.d.ts.map +1 -0
  44. package/lib/typescript/src/components/ShineGroup.d.ts +8 -0
  45. package/lib/typescript/src/components/ShineGroup.d.ts.map +1 -0
  46. package/lib/typescript/src/enums/waveCallback.d.ts +9 -0
  47. package/lib/typescript/src/enums/waveCallback.d.ts.map +1 -0
  48. package/lib/typescript/src/hooks/useOrientation.d.ts +2 -0
  49. package/lib/typescript/src/hooks/useOrientation.d.ts.map +1 -0
  50. package/lib/typescript/src/index.d.ts +6 -11
  51. package/lib/typescript/src/index.d.ts.map +1 -1
  52. package/lib/typescript/src/shaders/bindGroupLayouts.d.ts +44 -6
  53. package/lib/typescript/src/shaders/bindGroupLayouts.d.ts.map +1 -1
  54. package/lib/typescript/src/shaders/bindGroupUtils.d.ts +8 -8
  55. package/lib/typescript/src/shaders/bindGroupUtils.d.ts.map +1 -1
  56. package/lib/typescript/src/shaders/fragmentShaders/glareFragment.d.ts +8 -0
  57. package/lib/typescript/src/shaders/fragmentShaders/glareFragment.d.ts.map +1 -0
  58. package/lib/typescript/src/shaders/fragmentShaders/holoFragment.d.ts +5 -0
  59. package/lib/typescript/src/shaders/fragmentShaders/holoFragment.d.ts.map +1 -0
  60. package/lib/typescript/src/shaders/fragmentShaders/maskFragment.d.ts +6 -0
  61. package/lib/typescript/src/shaders/fragmentShaders/maskFragment.d.ts.map +1 -0
  62. package/lib/typescript/src/shaders/fragmentShaders/reverseHoloFragment.d.ts +5 -0
  63. package/lib/typescript/src/shaders/fragmentShaders/reverseHoloFragment.d.ts.map +1 -0
  64. package/lib/typescript/src/shaders/pipelineSetups.d.ts +9 -4
  65. package/lib/typescript/src/shaders/pipelineSetups.d.ts.map +1 -1
  66. package/lib/typescript/src/shaders/{resourceManagement.d.ts → resourceManagement/bitmaps.d.ts} +1 -1
  67. package/lib/typescript/src/shaders/resourceManagement/bitmaps.d.ts.map +1 -0
  68. package/lib/typescript/src/shaders/resourceManagement/bufferManager.d.ts +28 -0
  69. package/lib/typescript/src/shaders/resourceManagement/bufferManager.d.ts.map +1 -0
  70. package/lib/typescript/src/shaders/resourceManagement/textures.d.ts +7 -0
  71. package/lib/typescript/src/shaders/resourceManagement/textures.d.ts.map +1 -0
  72. package/lib/typescript/src/shaders/tgpuUtils.d.ts +5 -1
  73. package/lib/typescript/src/shaders/tgpuUtils.d.ts.map +1 -1
  74. package/lib/typescript/src/shaders/utils.d.ts +1 -7
  75. package/lib/typescript/src/shaders/utils.d.ts.map +1 -1
  76. package/lib/typescript/src/shaders/vertexShaders/mainRotationEffectVertex.d.ts +6 -0
  77. package/lib/typescript/src/shaders/vertexShaders/mainRotationEffectVertex.d.ts.map +1 -0
  78. package/lib/typescript/src/types/typeUtils.d.ts +3 -2
  79. package/lib/typescript/src/types/typeUtils.d.ts.map +1 -1
  80. package/lib/typescript/src/types/types.d.ts +7 -2
  81. package/lib/typescript/src/types/types.d.ts.map +1 -1
  82. package/package.json +4 -3
  83. package/scripts/postinstall.js +16 -17
  84. package/src/components/Shine.tsx +480 -0
  85. package/src/components/ShineGroup.tsx +107 -0
  86. package/src/enums/waveCallback.ts +22 -0
  87. package/src/hooks/useOrientation.ts +20 -0
  88. package/src/index.tsx +6 -322
  89. package/src/shaders/bindGroupLayouts.ts +43 -6
  90. package/src/shaders/bindGroupUtils.ts +34 -19
  91. package/src/shaders/fragmentShaders/colorMaskFragment.ts +2 -2
  92. package/src/shaders/fragmentShaders/glareFragment.ts +142 -0
  93. package/src/shaders/fragmentShaders/holoFragment.ts +43 -0
  94. package/src/shaders/fragmentShaders/maskFragment.ts +31 -0
  95. package/src/shaders/fragmentShaders/reverseHoloFragment.ts +71 -0
  96. package/src/shaders/pipelineSetups.ts +161 -14
  97. package/src/shaders/{resourceManagement.ts → resourceManagement/bitmaps.ts} +1 -0
  98. package/src/shaders/resourceManagement/bufferManager.ts +82 -0
  99. package/src/shaders/resourceManagement/textures.ts +30 -0
  100. package/src/shaders/tgpuUtils.ts +36 -1
  101. package/src/shaders/utils.ts +0 -30
  102. package/src/shaders/vertexShaders/mainRotationEffectVertex.ts +76 -0
  103. package/src/types/typeUtils.ts +22 -8
  104. package/src/types/types.ts +8 -2
  105. package/lib/module/shaders/fragmentShaders/bloomFragment.js +0 -66
  106. package/lib/module/shaders/fragmentShaders/bloomFragment.js.map +0 -1
  107. package/lib/module/shaders/resourceManagement.js.map +0 -1
  108. package/lib/typescript/src/shaders/fragmentShaders/bloomFragment.d.ts +0 -6
  109. package/lib/typescript/src/shaders/fragmentShaders/bloomFragment.d.ts.map +0 -1
  110. package/lib/typescript/src/shaders/resourceManagement.d.ts.map +0 -1
  111. package/src/shaders/fragmentShaders/bloomFragment.ts +0 -83
@@ -0,0 +1 @@
1
+ {"version":3,"names":["tgpu","d","std","textureBindGroupLayout","maskTextureBindGroupLayout","maskFragment","fragmentFn","in","uv","vec2f","out","vec4f","input","texcoord","x","y","mask","textureSample","$","texture","sampler","reversedMask","sub","xyz","w","color"],"sourceRoot":"../../../../src","sources":["shaders/fragmentShaders/maskFragment.ts"],"mappings":";;AAAA,OAAOA,IAAI,MAAM,SAAS;AAC1B,OAAO,KAAKC,CAAC,MAAM,cAAc;AACjC,OAAO,KAAKC,GAAG,MAAM,aAAa;AAClC,SACEC,sBAAsB,EACtBC,0BAA0B,QACrB,wBAAqB;AAE5B,MAAMC,YAAY,GAAGL,IAAI,CAAC,WAAW,CAAC,CAACM,UAAU,CAAC;EAChDC,EAAE,EAAE;IAAEC,EAAE,EAAEP,CAAC,CAACQ;EAAM,CAAC;EACnBC,GAAG,EAAET,CAAC,CAACU;AACT,CAAC,CAAC,CAAEC,KAAK,IAAK;EACZ,MAAMC,QAAQ,GAAGZ,CAAC,CAACQ,KAAK,CAACG,KAAK,CAACJ,EAAE,CAACM,CAAC,EAAE,GAAG,GAAGF,KAAK,CAACJ,EAAE,CAACO,CAAC,CAAC;EAEtD,MAAMC,IAAI,GAAGd,GAAG,CAACe,aAAa,CAC5Bb,0BAA0B,CAACc,CAAC,CAACC,OAAO,EACpCf,0BAA0B,CAACc,CAAC,CAACE,OAAO,EACpCP,QACF,CAAC;EACD,MAAMQ,YAAY,GAAGpB,CAAC,CAACU,KAAK,CAACT,GAAG,CAACoB,GAAG,CAAC,GAAG,EAAEN,IAAI,CAACO,GAAG,CAAC,EAAEP,IAAI,CAACQ,CAAC,CAAC;EAE5D,IAAIC,KAAK,GAAGvB,GAAG,CAACe,aAAa,CAC3Bd,sBAAsB,CAACe,CAAC,CAACC,OAAO,EAChChB,sBAAsB,CAACe,CAAC,CAACE,OAAO,EAChCP,QACF,CAAC;EAED,OAAOZ,CAAC,CAACU,KAAK,CAACc,KAAK,CAACF,GAAG,EAAEF,YAAY,CAACP,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEF,eAAeT,YAAY","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ import tgpu from 'typegpu';
4
+ import * as d from 'typegpu/data';
5
+ import * as std from 'typegpu/std';
6
+ import { textureBindGroupLayout, maskTextureBindGroupLayout, rotationValuesBindGroupLayout, glareOptionsBindGroupLayout } from "../bindGroupLayouts.js";
7
+ import { hueShift } from "../tgpuUtils.js";
8
+ export const reverseHoloFragment = tgpu['~unstable'].fragmentFn({
9
+ in: {
10
+ uv: d.vec2f
11
+ },
12
+ out: d.vec4f
13
+ })(input => {
14
+ const texcoord = d.vec2f(input.uv.x, 1.0 - input.uv.y);
15
+ const uv = texcoord;
16
+ const centeredCoords = std.sub(std.mul(uv, 2.0), 1.0);
17
+ const rot = rotationValuesBindGroupLayout.$.vec;
18
+ const center = std.add(d.vec2f(0.0), d.vec2f(rot.x, rot.y)); // center from device orientation/touch
19
+
20
+ const opts = glareOptionsBindGroupLayout.$.glareOptions;
21
+ const glareIntensity = opts.glareIntensity;
22
+ const glowPower = opts.glowPower;
23
+ const hueBlendPower = opts.hueBlendPower;
24
+ const hueShiftAngleMin = opts.hueShiftAngleMin;
25
+ const hueShiftAngleMax = opts.hueShiftAngleMax;
26
+ const lightIntensity = opts.lightIntensity;
27
+ const cardColor = std.textureSample(textureBindGroupLayout.$.texture, textureBindGroupLayout.$.sampler, texcoord);
28
+ const holoMaskColor = std.textureSample(maskTextureBindGroupLayout.$.texture, maskTextureBindGroupLayout.$.sampler, texcoord);
29
+ const dist = std.distance(centeredCoords, center);
30
+ const rFalloff = std.exp(-dist);
31
+ const scaledRadial = std.mul(rFalloff, std.add(1.0, std.max(0.0, glareIntensity)));
32
+ const influence = std.smoothstep(0.0, 1.0, scaledRadial);
33
+ const curvePower = std.clamp(glowPower, 0.05, 64.0);
34
+ const glowMask = std.pow(influence, std.div(1.0, curvePower));
35
+ const holoFactor = (1.0 - holoMaskColor.x) * holoMaskColor.w * std.pow(scaledRadial, 1.5);
36
+ const maskedGlow = std.mul(glowMask, holoFactor); // only affect masked areas
37
+
38
+ const hueAmount = std.mix(hueShiftAngleMin, hueShiftAngleMax, std.clamp(maskedGlow, 0.0, 1.0));
39
+ const sparkleHue = hueShift(cardColor.xyz, hueAmount);
40
+ const hueMixAmt = std.clamp(hueBlendPower / 5.0 * maskedGlow, 0.0, 1.0);
41
+ const chromaMix = std.mix(cardColor.xyz, sparkleHue, hueMixAmt);
42
+ const shineStrength = std.clamp(lightIntensity, 1.0, 100.0);
43
+ const shineLayer = std.mul(chromaMix, 1.5 * shineStrength * maskedGlow);
44
+ return d.vec4f(shineLayer, 1 - maskedGlow);
45
+ });
46
+ //# sourceMappingURL=reverseHoloFragment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["tgpu","d","std","textureBindGroupLayout","maskTextureBindGroupLayout","rotationValuesBindGroupLayout","glareOptionsBindGroupLayout","hueShift","reverseHoloFragment","fragmentFn","in","uv","vec2f","out","vec4f","input","texcoord","x","y","centeredCoords","sub","mul","rot","$","vec","center","add","opts","glareOptions","glareIntensity","glowPower","hueBlendPower","hueShiftAngleMin","hueShiftAngleMax","lightIntensity","cardColor","textureSample","texture","sampler","holoMaskColor","dist","distance","rFalloff","exp","scaledRadial","max","influence","smoothstep","curvePower","clamp","glowMask","pow","div","holoFactor","w","maskedGlow","hueAmount","mix","sparkleHue","xyz","hueMixAmt","chromaMix","shineStrength","shineLayer"],"sourceRoot":"../../../../src","sources":["shaders/fragmentShaders/reverseHoloFragment.ts"],"mappings":"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","ignoreList":[]}
@@ -1,26 +1,34 @@
1
1
  "use strict";
2
2
 
3
+ import { maskTextureBindGroupLayout, textureBindGroupLayout } from "./bindGroupLayouts.js";
4
+ import { createBindGroupPair, createBindGroupPairs } from "../types/typeUtils.js";
5
+ import mainVertex from "./vertexShaders/mainVertex.js";
6
+ import maskFragment from "./fragmentShaders/maskFragment.js";
7
+ import { reverseHoloFragment } from "./fragmentShaders/reverseHoloFragment.js";
8
+ import { holoFragment } from "./fragmentShaders/holoFragment.js";
9
+ import { WAVE_CALLBACKS, waveCallbackFn, waveCallbackSlot } from "../enums/waveCallback.js";
3
10
  export const attachBindGroups = (pipeline, bindGroupPairs) => {
4
11
  for (const pair of bindGroupPairs) {
5
12
  pipeline = pipeline.with(pair.layout, pair.group);
6
13
  }
7
14
  return pipeline;
8
15
  };
9
- export const getDefaultTarget = presentationFormat => {
16
+ export const blend = {
17
+ color: {
18
+ srcFactor: 'one-minus-src-alpha',
19
+ dstFactor: 'src-alpha',
20
+ operation: 'add'
21
+ },
22
+ alpha: {
23
+ srcFactor: 'one-minus-src-alpha',
24
+ dstFactor: 'dst-alpha',
25
+ operation: 'add'
26
+ }
27
+ };
28
+ export const getDefaultTarget = (presentationFormat, blendMode) => {
10
29
  return {
11
30
  format: presentationFormat,
12
- blend: {
13
- color: {
14
- srcFactor: 'src-alpha',
15
- dstFactor: 'one-minus-src-alpha',
16
- operation: 'add'
17
- },
18
- alpha: {
19
- srcFactor: 'one',
20
- dstFactor: 'one-minus-src-alpha',
21
- operation: 'add'
22
- }
23
- }
31
+ blend: blendMode
24
32
  };
25
33
  };
26
34
  export const attachBindGroupsToPass = (pass, bindGroupPairs) => {
@@ -29,4 +37,65 @@ export const attachBindGroupsToPass = (pass, bindGroupPairs) => {
29
37
  }
30
38
  return pass;
31
39
  };
40
+ export const createMaskPipeline = (root, maskTexture, BGP, sampler, presentationFormat) => {
41
+ if (!maskTexture) return null;
42
+ const maskTextureBindGroup = root.createBindGroup(maskTextureBindGroupLayout, {
43
+ texture: root.unwrap(maskTexture).createView(),
44
+ sampler
45
+ });
46
+ const maskBGP = createBindGroupPairs([maskTextureBindGroupLayout], [maskTextureBindGroup]);
47
+ for (let i = 0; i < BGP.length; i++) {
48
+ maskBGP.push(BGP[i]);
49
+ }
50
+ let maskPipeline = root['~unstable'].withVertex(mainVertex, {}).withFragment(maskFragment, getDefaultTarget(presentationFormat, blend)).createPipeline();
51
+ maskPipeline = attachBindGroups(maskPipeline, maskBGP);
52
+ return maskPipeline;
53
+ };
54
+ export const createReverseHoloPipeline = (root, texture, BGP, sampler, presentationFormat) => {
55
+ if (!texture) return null;
56
+ const reverseHoloBindGroup = root.createBindGroup(maskTextureBindGroupLayout, {
57
+ texture: root.unwrap(texture).createView(),
58
+ sampler
59
+ });
60
+ const reverseHoloBGP = BGP;
61
+ reverseHoloBGP.push(createBindGroupPair(maskTextureBindGroupLayout, reverseHoloBindGroup));
62
+ let reverseHoloPipeline = root['~unstable'].withVertex(mainVertex, {}).withFragment(reverseHoloFragment, getDefaultTarget(presentationFormat, blend)).createPipeline();
63
+ reverseHoloPipeline = attachBindGroups(reverseHoloPipeline, reverseHoloBGP);
64
+ return reverseHoloPipeline;
65
+ };
66
+ export const createRainbowHoloPipeline = (root, texture, BGP, sampler, presentationFormat) => {
67
+ if (!texture) return null;
68
+ const imageTextureBindGroup = root.createBindGroup(textureBindGroupLayout, {
69
+ texture: root.unwrap(texture).createView(),
70
+ sampler
71
+ });
72
+ const texBGP = createBindGroupPair(textureBindGroupLayout, imageTextureBindGroup);
73
+ let rainbowHoloPipeline = root['~unstable'].with(waveCallbackSlot, waveCallbackFn(WAVE_CALLBACKS.default)).withVertex(mainVertex, {}).withFragment(holoFragment, getDefaultTarget(presentationFormat, blend)).createPipeline();
74
+ rainbowHoloPipeline = attachBindGroups(rainbowHoloPipeline, [...BGP, texBGP]);
75
+ return rainbowHoloPipeline;
76
+ };
77
+ export const pipelineRenderFunction = (root, pipelines, attachments, view, isInSinglePass) => {
78
+ if (isInSinglePass) {
79
+ root['~unstable'].beginRenderPass({
80
+ colorAttachments: [{
81
+ view: view,
82
+ clearValue: [0, 0, 0, 0],
83
+ loadOp: 'clear',
84
+ storeOp: 'store'
85
+ }]
86
+ }, pass => {
87
+ for (let i = 0; i < pipelines.length; i++) {
88
+ pass.setPipeline(pipelines[i]);
89
+ pass.draw(6);
90
+ }
91
+ });
92
+ root['~unstable'].flush();
93
+ } else {
94
+ for (let i = 0; i < pipelines.length; i++) {
95
+ const attachment = attachments[i];
96
+ if (!attachment) return;
97
+ pipelines[i].withColorAttachment(attachment).draw(6);
98
+ }
99
+ }
100
+ };
32
101
  //# sourceMappingURL=pipelineSetups.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["attachBindGroups","pipeline","bindGroupPairs","pair","with","layout","group","getDefaultTarget","presentationFormat","format","blend","color","srcFactor","dstFactor","operation","alpha","attachBindGroupsToPass","pass","setBindGroup"],"sourceRoot":"../../../src","sources":["shaders/pipelineSetups.ts"],"mappings":";;AAGA,OAAO,MAAMA,gBAAgB,GAAGA,CAC9BC,QAA4B,EAC5BC,cAA+B,KAC5B;EACH,KAAK,MAAMC,IAAI,IAAID,cAAc,EAAE;IACjCD,QAAQ,GAAGA,QAAQ,CAACG,IAAI,CAACD,IAAI,CAACE,MAAM,EAAEF,IAAI,CAACG,KAAK,CAAC;EACnD;EAEA,OAAOL,QAAQ;AACjB,CAAC;AAED,OAAO,MAAMM,gBAAgB,GAC3BC,kBAAoC,IACZ;EACxB,OAAO;IACLC,MAAM,EAAED,kBAAkB;IAC1BE,KAAK,EAAE;MACLC,KAAK,EAAE;QACLC,SAAS,EAAE,WAAW;QACtBC,SAAS,EAAE,qBAAqB;QAChCC,SAAS,EAAE;MACb,CAAC;MACDC,KAAK,EAAE;QACLH,SAAS,EAAE,KAAK;QAChBC,SAAS,EAAE,qBAAqB;QAChCC,SAAS,EAAE;MACb;IACF;EACF,CAAC;AACH,CAAC;AAED,OAAO,MAAME,sBAAsB,GAAGA,CACpCC,IAAS,EACTf,cAA+B,KAC5B;EACH,KAAK,MAAMC,IAAI,IAAID,cAAc,EAAE;IACjCe,IAAI,CAACC,YAAY,CAACf,IAAI,CAACE,MAAM,EAAEF,IAAI,CAACG,KAAK,CAAC;EAC5C;EAEA,OAAOW,IAAI;AACb,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["maskTextureBindGroupLayout","textureBindGroupLayout","createBindGroupPair","createBindGroupPairs","mainVertex","maskFragment","reverseHoloFragment","holoFragment","WAVE_CALLBACKS","waveCallbackFn","waveCallbackSlot","attachBindGroups","pipeline","bindGroupPairs","pair","with","layout","group","blend","color","srcFactor","dstFactor","operation","alpha","getDefaultTarget","presentationFormat","blendMode","format","attachBindGroupsToPass","pass","setBindGroup","createMaskPipeline","root","maskTexture","BGP","sampler","maskTextureBindGroup","createBindGroup","texture","unwrap","createView","maskBGP","i","length","push","maskPipeline","withVertex","withFragment","createPipeline","createReverseHoloPipeline","reverseHoloBindGroup","reverseHoloBGP","reverseHoloPipeline","createRainbowHoloPipeline","imageTextureBindGroup","texBGP","rainbowHoloPipeline","default","pipelineRenderFunction","pipelines","attachments","view","isInSinglePass","beginRenderPass","colorAttachments","clearValue","loadOp","storeOp","setPipeline","draw","flush","attachment","withColorAttachment"],"sourceRoot":"../../../src","sources":["shaders/pipelineSetups.ts"],"mappings":"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","ignoreList":[]}
@@ -11,9 +11,10 @@ const getBitmapFromURI = async uri => {
11
11
  const response = await fetch(fileURI);
12
12
  const blob = await response.blob();
13
13
  const imageBitmap = await createImageBitmap(blob);
14
+ console.log('bitmap size: ', imageBitmap);
14
15
  uriToBitmapMap.set(uri, imageBitmap);
15
16
  return imageBitmap;
16
17
  };
17
18
  const uriToBitmapMap = new Map();
18
19
  export default getBitmapFromURI;
19
- //# sourceMappingURL=resourceManagement.js.map
20
+ //# sourceMappingURL=bitmaps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Asset","getBitmapFromURI","uri","uriToBitmapMap","has","get","console","log","ast","fromURI","downloadAsync","fileURI","localUri","response","fetch","blob","imageBitmap","createImageBitmap","set","Map"],"sourceRoot":"../../../../src","sources":["shaders/resourceManagement/bitmaps.ts"],"mappings":";;AAAA,SAASA,KAAK,QAAQ,YAAY;AAElC,MAAMC,gBAAgB,GAAG,MAAOC,GAAW,IAA2B;EACpE,IAAIC,cAAc,CAACC,GAAG,CAACF,GAAG,CAAC,EAAE,OAAOC,cAAc,CAACE,GAAG,CAACH,GAAG,CAAC;EAC3DI,OAAO,CAACC,GAAG,CAAC,8CAA8C,CAAC;EAE3D,MAAMC,GAAG,GAAGR,KAAK,CAACS,OAAO,CAACP,GAAG,CAAC;EAC9B,MAAMM,GAAG,CAACE,aAAa,CAAC,CAAC;EACzB,MAAMC,OAAO,GAAGH,GAAG,CAACI,QAAQ,IAAIJ,GAAG,CAACN,GAAG;EAEvCI,OAAO,CAACC,GAAG,CAAC,uCAAuC,CAAC;EACpD,MAAMM,QAAQ,GAAG,MAAMC,KAAK,CAACH,OAAO,CAAC;EACrC,MAAMI,IAAI,GAAG,MAAMF,QAAQ,CAACE,IAAI,CAAC,CAAC;EAClC,MAAMC,WAAW,GAAG,MAAMC,iBAAiB,CAACF,IAAI,CAAC;EAEjDT,OAAO,CAACC,GAAG,CAAC,eAAe,EAAES,WAAW,CAAC;EACzCb,cAAc,CAACe,GAAG,CAAChB,GAAG,EAAEc,WAAW,CAAC;EACpC,OAAOA,WAAW;AACpB,CAAC;AAED,MAAMb,cAAc,GAAG,IAAIgB,GAAG,CAAsB,CAAC;AAErD,eAAelB,gBAAgB","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ export class TypedBufferMap {
4
+ buffers = {};
5
+ constructor(schemas) {
6
+ this.schemas = schemas;
7
+ }
8
+ set(key, buffer) {
9
+ this.buffers[key] = buffer;
10
+ }
11
+ get(key) {
12
+ return this.buffers[key];
13
+ }
14
+ addBuffer(root, key, initValues) {
15
+ const entry = this.schemas[key];
16
+ if (!entry) {
17
+ throw new Error(`No schema found for buffer key "${String(key)}"`);
18
+ }
19
+ const {
20
+ schema,
21
+ usage
22
+ } = entry;
23
+ if (this.buffers[key]) {
24
+ console.warn(`Buffer "${String(key)}" already exists. Skipping...`);
25
+ return this.buffers[key];
26
+ }
27
+ const buffer = initValues ? root.createBuffer(schema, initValues) : root.createBuffer(schema);
28
+ const typedBuffer = buffer.$usage(usage);
29
+ this.buffers[key] = typedBuffer;
30
+ return typedBuffer;
31
+ }
32
+ keys() {
33
+ return Object.keys(this.buffers);
34
+ }
35
+ has(key) {
36
+ return !!this.buffers[key];
37
+ }
38
+ delete(key) {
39
+ const buf = this.buffers[key];
40
+ if (buf) {
41
+ buf.destroy?.();
42
+ delete this.buffers[key];
43
+ }
44
+ }
45
+ }
46
+ //# sourceMappingURL=bufferManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TypedBufferMap","buffers","constructor","schemas","set","key","buffer","get","addBuffer","root","initValues","entry","Error","String","schema","usage","console","warn","createBuffer","typedBuffer","$usage","keys","Object","has","delete","buf","destroy"],"sourceRoot":"../../../../src","sources":["shaders/resourceManagement/bufferManager.ts"],"mappings":";;AAcA,OAAO,MAAMA,cAAc,CAKzB;EACQC,OAAO,GAEX,CAAC,CAAC;EAENC,WAAWA,CAASC,OAAiB,EAAE;IAAA,KAAnBA,OAAiB,GAAjBA,OAAiB;EAAG;EAExCC,GAAGA,CACDC,GAAM,EACNC,MAA6C,EACvC;IACN,IAAI,CAACL,OAAO,CAACI,GAAG,CAAC,GAAGC,MAAM;EAC5B;EAEAC,GAAGA,CACDF,GAAM,EAC6C;IACnD,OAAO,IAAI,CAACJ,OAAO,CAACI,GAAG,CAAC;EAC1B;EAEAG,SAASA,CACPC,IAAc,EACdJ,GAAM,EACNK,UAA6C,EACN;IACvC,MAAMC,KAAK,GAAG,IAAI,CAACR,OAAO,CAACE,GAAG,CAAC;IAC/B,IAAI,CAACM,KAAK,EAAE;MACV,MAAM,IAAIC,KAAK,CAAC,mCAAmCC,MAAM,CAACR,GAAG,CAAC,GAAG,CAAC;IACpE;IAEA,MAAM;MAAES,MAAM;MAAEC;IAAM,CAAC,GAAGJ,KAAK;IAC/B,IAAI,IAAI,CAACV,OAAO,CAACI,GAAG,CAAC,EAAE;MACrBW,OAAO,CAACC,IAAI,CAAC,WAAWJ,MAAM,CAACR,GAAG,CAAC,+BAA+B,CAAC;MACnE,OAAO,IAAI,CAACJ,OAAO,CAACI,GAAG,CAAC;IAC1B;IAEA,MAAMC,MAAM,GAAGI,UAAU,GACrBD,IAAI,CAACS,YAAY,CAACJ,MAAM,EAAEJ,UAAU,CAAC,GACrCD,IAAI,CAACS,YAAY,CAACJ,MAAM,CAAC;IAE7B,MAAMK,WAAW,GAAGb,MAAM,CAACc,MAAM,CAACL,KAAK,CAEtC;IACD,IAAI,CAACd,OAAO,CAACI,GAAG,CAAC,GAAGc,WAAW;IAC/B,OAAOA,WAAW;EACpB;EAEAE,IAAIA,CAAA,EAAuB;IACzB,OAAOC,MAAM,CAACD,IAAI,CAAC,IAAI,CAACpB,OAAO,CAAC;EAClC;EAEAsB,GAAGA,CAA2BlB,GAAM,EAAW;IAC7C,OAAO,CAAC,CAAC,IAAI,CAACJ,OAAO,CAACI,GAAG,CAAC;EAC5B;EAEAmB,MAAMA,CAA2BnB,GAAM,EAAQ;IAC7C,MAAMoB,GAAG,GAAG,IAAI,CAACxB,OAAO,CAACI,GAAG,CAAC;IAC7B,IAAIoB,GAAG,EAAE;MACPA,GAAG,CAACC,OAAO,GAAG,CAAC;MACf,OAAO,IAAI,CAACzB,OAAO,CAACI,GAAG,CAAC;IAC1B;EACF;AACF","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ export const createTexture = async (root, size) => {
4
+ const texture = root['~unstable'].createTexture({
5
+ size: [size.width, size.height],
6
+ format: 'rgba8unorm'
7
+ }).$usage('sampled', 'render');
8
+ return texture;
9
+ };
10
+ export const loadTexture = async (root, imageBitmap, texture) => {
11
+ root.device.queue.copyExternalImageToTexture({
12
+ source: imageBitmap
13
+ }, {
14
+ texture: root.unwrap(texture)
15
+ }, [imageBitmap.width, imageBitmap.height]);
16
+ };
17
+ //# sourceMappingURL=textures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createTexture","root","size","texture","width","height","format","$usage","loadTexture","imageBitmap","device","queue","copyExternalImageToTexture","source","unwrap"],"sourceRoot":"../../../../src","sources":["shaders/resourceManagement/textures.ts"],"mappings":";;AAEA,OAAO,MAAMA,aAAa,GAAG,MAAAA,CAC3BC,IAAc,EACdC,IAGC,KACwB;EACzB,MAAMC,OAAO,GAAGF,IAAI,CAAC,WAAW,CAAC,CAC9BD,aAAa,CAAC;IACbE,IAAI,EAAE,CAACA,IAAI,CAACE,KAAK,EAAEF,IAAI,CAACG,MAAM,CAAC;IAC/BC,MAAM,EAAE;EACV,CAAC,CAAC,CACDC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC;EAE9B,OAAOJ,OAAO;AAChB,CAAC;AAED,OAAO,MAAMK,WAAW,GAAG,MAAAA,CACzBP,IAAc,EACdQ,WAAwB,EACxBN,OAAoB,KACjB;EACHF,IAAI,CAACS,MAAM,CAACC,KAAK,CAACC,0BAA0B,CAC1C;IAAEC,MAAM,EAAEJ;EAAY,CAAC,EACvB;IAAEN,OAAO,EAAEF,IAAI,CAACa,MAAM,CAACX,OAAO;EAAE,CAAC,EACjC,CAACM,WAAW,CAACL,KAAK,EAAEK,WAAW,CAACJ,MAAM,CACxC,CAAC;AACH,CAAC","ignoreList":[]}
@@ -20,7 +20,7 @@ export const hueShift = tgpu.fn([d.vec3f, d.f32], d.vec3f)((rgb, angle) => {
20
20
  const b = std.add(std.add(yiqY, std.mul(i, -1.105)), std.mul(q, 1.702));
21
21
  return d.vec3f(r, g, b);
22
22
  });
23
- export const bloomColorShift = tgpu.fn([d.vec3f, d.f32], d.vec3f)((color, power) => {
23
+ export const glareColorShift = tgpu.fn([d.vec3f, d.f32], d.vec3f)((color, power) => {
24
24
  const maxValue = std.max(std.max(color.x, color.y), color.z);
25
25
  const scale = std.mix(d.f32(1.0), d.f32(1.0) / std.max(maxValue, d.f32(0.001)), power);
26
26
  const boosted = std.mul(color, scale);
@@ -35,4 +35,22 @@ export const overlayChannel = tgpu.fn([d.f32, d.f32], d.f32)((base, blend) => {
35
35
  export const overlayChannels = tgpu.fn([d.vec3f, d.vec3f], d.vec3f)((base, blend) => {
36
36
  return d.vec3f(overlayChannel(base.x, blend.x), overlayChannel(base.y, blend.y), overlayChannel(base.z, blend.z));
37
37
  });
38
+
39
+ /** Rec.601 luma */
40
+ export const luma601 = tgpu.fn([d.vec3f], d.f32)(rgb => {
41
+ return std.add(std.mul(rgb.x, 0.299), std.add(std.mul(rgb.y, 0.587), std.mul(rgb.z, 0.114)));
42
+ });
43
+ export const tiltTowardsLighterNeighbor = tgpu.fn([d.vec3f, d.f32], d.vec3f)((rgb, t) => {
44
+ const toYellow = d.vec3f(std.max(rgb.x, rgb.y), std.max(rgb.x, rgb.y), rgb.z);
45
+ const toCyan = d.vec3f(rgb.x, std.max(rgb.y, rgb.z), std.max(rgb.y, rgb.z));
46
+ const yYellow = luma601(toYellow);
47
+ const yCyan = luma601(toCyan);
48
+ const toColor = std.select(toCyan, toYellow, yYellow >= yCyan);
49
+ const tClamped = std.clamp(t, 0.0, 1.0);
50
+ return std.mix(rgb, toColor, tClamped);
51
+ });
52
+ export const linearstep = tgpu.fn([d.f32, d.f32, d.f32], d.f32)((num1, num2, x) => {
53
+ const t = (x - num1) / (num2 - num1);
54
+ return std.clamp(t, 0, 1);
55
+ });
38
56
  //# sourceMappingURL=tgpuUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["tgpu","std","d","hueShift","fn","vec3f","f32","rgb","angle","yiqY","add","mul","x","y","z","yiqI","sub","yiqQ","cosA","cos","sinA","sin","i","q","r","g","b","bloomColorShift","color","power","maxValue","max","scale","mix","boosted","saturated","overlayChannel","base","blend","mult","screen","select","overlayChannels"],"sourceRoot":"../../../src","sources":["shaders/tgpuUtils.ts"],"mappings":";;AAAA,OAAOA,IAAI,MAAM,SAAS;AAC1B,OAAO,KAAKC,GAAG,MAAM,aAAa;AAClC,OAAO,KAAKC,CAAC,MAAM,cAAc;AAEjC,OAAO,MAAMC,QAAQ,GAAGH,IAAI,CAACI,EAAE,CAC7B,CAACF,CAAC,CAACG,KAAK,EAAEH,CAAC,CAACI,GAAG,CAAC,EAChBJ,CAAC,CAACG,KACJ,CAAC,CAAC,CAACE,GAAG,EAAEC,KAAK,KAAK;EAChB,MAAMC,IAAI,GAAGR,GAAG,CAACS,GAAG,CAClBT,GAAG,CAACU,GAAG,CAACJ,GAAG,CAACK,CAAC,EAAE,KAAK,CAAC,EACrBX,GAAG,CAACS,GAAG,CAACT,GAAG,CAACU,GAAG,CAACJ,GAAG,CAACM,CAAC,EAAE,KAAK,CAAC,EAAEZ,GAAG,CAACU,GAAG,CAACJ,GAAG,CAACO,CAAC,EAAE,KAAK,CAAC,CACtD,CAAC;EACD,MAAMC,IAAI,GAAGd,GAAG,CAACS,GAAG,CAClBT,GAAG,CAACU,GAAG,CAACJ,GAAG,CAACK,CAAC,EAAE,KAAK,CAAC,EACrBX,GAAG,CAACe,GAAG,CAACf,GAAG,CAACU,GAAG,CAACJ,GAAG,CAACM,CAAC,EAAE,CAAC,KAAK,CAAC,EAAEZ,GAAG,CAACU,GAAG,CAACJ,GAAG,CAACO,CAAC,EAAE,KAAK,CAAC,CACvD,CAAC;EACD,MAAMG,IAAI,GAAGhB,GAAG,CAACS,GAAG,CAClBT,GAAG,CAACU,GAAG,CAACJ,GAAG,CAACK,CAAC,EAAE,KAAK,CAAC,EACrBX,GAAG,CAACe,GAAG,CAACf,GAAG,CAACU,GAAG,CAACJ,GAAG,CAACM,CAAC,EAAE,CAAC,KAAK,CAAC,EAAEZ,GAAG,CAACU,GAAG,CAACJ,GAAG,CAACO,CAAC,EAAE,KAAK,CAAC,CACvD,CAAC;;EAED;EACA,MAAMI,IAAI,GAAGjB,GAAG,CAACkB,GAAG,CAACX,KAAK,CAAC;EAC3B,MAAMY,IAAI,GAAGnB,GAAG,CAACoB,GAAG,CAACb,KAAK,CAAC;EAC3B,MAAMc,CAAC,GAAGrB,GAAG,CAACe,GAAG,CAACf,GAAG,CAACU,GAAG,CAACI,IAAI,EAAEG,IAAI,CAAC,EAAEjB,GAAG,CAACU,GAAG,CAACM,IAAI,EAAEG,IAAI,CAAC,CAAC;EAC3D,MAAMG,CAAC,GAAGtB,GAAG,CAACS,GAAG,CAACT,GAAG,CAACU,GAAG,CAACI,IAAI,EAAEK,IAAI,CAAC,EAAEnB,GAAG,CAACU,GAAG,CAACM,IAAI,EAAEC,IAAI,CAAC,CAAC;;EAE3D;EACA,MAAMM,CAAC,GAAGvB,GAAG,CAACS,GAAG,CAACT,GAAG,CAACS,GAAG,CAACD,IAAI,EAAER,GAAG,CAACU,GAAG,CAACW,CAAC,EAAE,KAAK,CAAC,CAAC,EAAErB,GAAG,CAACU,GAAG,CAACY,CAAC,EAAE,KAAK,CAAC,CAAC;EACtE,MAAME,CAAC,GAAGxB,GAAG,CAACS,GAAG,CAACT,GAAG,CAACS,GAAG,CAACD,IAAI,EAAER,GAAG,CAACU,GAAG,CAACW,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAErB,GAAG,CAACU,GAAG,CAACY,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;EACxE,MAAMG,CAAC,GAAGzB,GAAG,CAACS,GAAG,CAACT,GAAG,CAACS,GAAG,CAACD,IAAI,EAAER,GAAG,CAACU,GAAG,CAACW,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAErB,GAAG,CAACU,GAAG,CAACY,CAAC,EAAE,KAAK,CAAC,CAAC;EAEvE,OAAOrB,CAAC,CAACG,KAAK,CAACmB,CAAC,EAAEC,CAAC,EAAEC,CAAC,CAAC;AACzB,CAAC,CAAC;AAEF,OAAO,MAAMC,eAAe,GAAG3B,IAAI,CAACI,EAAE,CACpC,CAACF,CAAC,CAACG,KAAK,EAAEH,CAAC,CAACI,GAAG,CAAC,EAChBJ,CAAC,CAACG,KACJ,CAAC,CAAC,CAACuB,KAAK,EAAEC,KAAK,KAAK;EAClB,MAAMC,QAAQ,GAAG7B,GAAG,CAAC8B,GAAG,CAAC9B,GAAG,CAAC8B,GAAG,CAACH,KAAK,CAAChB,CAAC,EAAEgB,KAAK,CAACf,CAAC,CAAC,EAAEe,KAAK,CAACd,CAAC,CAAC;EAC5D,MAAMkB,KAAK,GAAG/B,GAAG,CAACgC,GAAG,CACnB/B,CAAC,CAACI,GAAG,CAAC,GAAG,CAAC,EACVJ,CAAC,CAACI,GAAG,CAAC,GAAG,CAAC,GAAGL,GAAG,CAAC8B,GAAG,CAACD,QAAQ,EAAE5B,CAAC,CAACI,GAAG,CAAC,KAAK,CAAC,CAAC,EAC5CuB,KACF,CAAC;EACD,MAAMK,OAAO,GAAGjC,GAAG,CAACU,GAAG,CAACiB,KAAK,EAAEI,KAAK,CAAC;EACrC,MAAMG,SAAS,GAAGlC,GAAG,CAACgC,GAAG,CAACL,KAAK,EAAEM,OAAO,EAAEL,KAAK,CAAC;EAEhD,OAAOM,SAAS;AAClB,CAAC,CAAC;AAEF,OAAO,MAAMC,cAAc,GAAGpC,IAAI,CAACI,EAAE,CACnC,CAACF,CAAC,CAACI,GAAG,EAAEJ,CAAC,CAACI,GAAG,CAAC,EACdJ,CAAC,CAACI,GACJ,CAAC,CAAC,CAAC+B,IAAI,EAAEC,KAAK,KAAK;EACjB,MAAMC,IAAI,GAAGtC,GAAG,CAACU,GAAG,CAAC,GAAG,EAAEV,GAAG,CAACU,GAAG,CAAC0B,IAAI,EAAEC,KAAK,CAAC,CAAC;EAE/C,MAAME,MAAM,GAAGvC,GAAG,CAACe,GAAG,CACpB,GAAG,EACHf,GAAG,CAACU,GAAG,CAAC,GAAG,EAAEV,GAAG,CAACU,GAAG,CAACV,GAAG,CAACe,GAAG,CAAC,GAAG,EAAEqB,IAAI,CAAC,EAAEpC,GAAG,CAACe,GAAG,CAAC,GAAG,EAAEsB,KAAK,CAAC,CAAC,CAC/D,CAAC;EAED,OAAOrC,GAAG,CAACwC,MAAM,CAACD,MAAM,EAAED,IAAI,EAAEF,IAAI,GAAGnC,CAAC,CAACI,GAAG,CAAC,GAAG,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,OAAO,MAAMoC,eAAe,GAAG1C,IAAI,CAACI,EAAE,CACpC,CAACF,CAAC,CAACG,KAAK,EAAEH,CAAC,CAACG,KAAK,CAAC,EAClBH,CAAC,CAACG,KACJ,CAAC,CAAC,CAACgC,IAAI,EAAEC,KAAK,KAAK;EACjB,OAAOpC,CAAC,CAACG,KAAK,CACZ+B,cAAc,CAACC,IAAI,CAACzB,CAAC,EAAE0B,KAAK,CAAC1B,CAAC,CAAC,EAC/BwB,cAAc,CAACC,IAAI,CAACxB,CAAC,EAAEyB,KAAK,CAACzB,CAAC,CAAC,EAC/BuB,cAAc,CAACC,IAAI,CAACvB,CAAC,EAAEwB,KAAK,CAACxB,CAAC,CAChC,CAAC;AACH,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["tgpu","std","d","hueShift","fn","vec3f","f32","rgb","angle","yiqY","add","mul","x","y","z","yiqI","sub","yiqQ","cosA","cos","sinA","sin","i","q","r","g","b","glareColorShift","color","power","maxValue","max","scale","mix","boosted","saturated","overlayChannel","base","blend","mult","screen","select","overlayChannels","luma601","tiltTowardsLighterNeighbor","t","toYellow","toCyan","yYellow","yCyan","toColor","tClamped","clamp","linearstep","num1","num2"],"sourceRoot":"../../../src","sources":["shaders/tgpuUtils.ts"],"mappings":"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","ignoreList":[]}
@@ -1,20 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  import { Dimensions } from 'react-native';
4
- export const createTexture = async (root, size) => {
5
- const texture = root['~unstable'].createTexture({
6
- size: [size.width, size.height],
7
- format: 'rgba8unorm'
8
- }).$usage('sampled', 'render');
9
- return texture;
10
- };
11
- export const loadTexture = async (root, imageBitmap, texture) => {
12
- root.device.queue.copyExternalImageToTexture({
13
- source: imageBitmap
14
- }, {
15
- texture: root.unwrap(texture)
16
- }, [imageBitmap.width, imageBitmap.height]);
17
- };
18
4
  export const rotateVectorByQuaternion = (vec, quaternion) => {
19
5
  'worklet';
20
6
 
@@ -1 +1 @@
1
- {"version":3,"names":["Dimensions","createTexture","root","size","texture","width","height","format","$usage","loadTexture","imageBitmap","device","queue","copyExternalImageToTexture","source","unwrap","rotateVectorByQuaternion","vec","quaternion","t","t2","crossQT2","rotated","clamp","v","min","max","Math","rotate2D","x","y","angleDeg","rad","PI","c","cos","s","sin","getAngleFromDimensions","get","subscribeToOrientationChange","callback","handler","dimSub","addEventListener","remove"],"sourceRoot":"../../../src","sources":["shaders/utils.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Dimensions","rotateVectorByQuaternion","vec","quaternion","t","t2","crossQT2","rotated","clamp","v","min","max","Math","rotate2D","x","y","angleDeg","rad","PI","c","cos","s","sin","getAngleFromDimensions","width","height","get","subscribeToOrientationChange","callback","handler","dimSub","addEventListener","remove"],"sourceRoot":"../../../src","sources":["shaders/utils.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ import tgpu from 'typegpu';
4
+ import * as std from 'typegpu/std';
5
+ import * as d from 'typegpu/data';
6
+ import { rotationValuesBindGroupLayout } from "../bindGroupLayouts.js";
7
+ const mainRotationEffectVertex = tgpu['~unstable'].vertexFn({
8
+ in: {
9
+ vertexIndex: d.builtin.vertexIndex
10
+ },
11
+ out: {
12
+ position: d.builtin.position,
13
+ uv: d.vec2f
14
+ }
15
+ })(input => {
16
+ const rot = rotationValuesBindGroupLayout.$.vec;
17
+
18
+ // Maximum rotation angles in radians
19
+ const maxAngle = d.f32(25.0 * Math.PI / 180.0);
20
+ const ax = d.f32(-rot.y * maxAngle); // rotateX depends on vertical touch
21
+ const ay = d.f32(-rot.x * 1.0); // rotateY depends on horizontal touch
22
+
23
+ const positions = [d.vec2f(-1.0, -1.0), d.vec2f(1.0, 1.0), d.vec2f(1.0, -1.0), d.vec2f(-1.0, -1.0), d.vec2f(-1.0, 1.0), d.vec2f(1.0, 1.0)];
24
+ const uvs = [d.vec2f(0.0, 0.0), d.vec2f(1.0, 1.0), d.vec2f(1.0, 0.0), d.vec2f(0.0, 0.0), d.vec2f(0.0, 1.0), d.vec2f(1.0, 1.0)];
25
+ const index = input.vertexIndex;
26
+ const pos = d.vec3f(positions[index], 0.0);
27
+ const pivot = d.vec3f(rot.x, rot.y, 0.0);
28
+ const relative = std.sub(pos, pivot);
29
+ const cosX = std.cos(ax);
30
+ const sinX = std.sin(ax);
31
+ const rotatedX = d.vec3f(relative.x, cosX * relative.y - sinX * relative.z, sinX * relative.y + cosX * relative.z);
32
+ const cosY = std.cos(ay);
33
+ const sinY = std.sin(ay);
34
+ const rotatedXY = d.vec3f(cosY * rotatedX.x + sinY * rotatedX.z, rotatedX.y, -sinY * rotatedX.x + cosY * rotatedX.z);
35
+ const finalPos3D = std.add(rotatedXY, pivot);
36
+ const perspective = 100.0;
37
+ const zOffset = 2.5;
38
+ const z = finalPos3D.z + zOffset;
39
+ const persp = perspective / (perspective + z);
40
+ const finalPos = d.vec4f(finalPos3D.x * persp, finalPos3D.y * persp, 0.0, 1.0);
41
+ return {
42
+ position: finalPos,
43
+ uv: uvs[index]
44
+ };
45
+ });
46
+ export default mainRotationEffectVertex;
47
+ //# sourceMappingURL=mainRotationEffectVertex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["tgpu","std","d","rotationValuesBindGroupLayout","mainRotationEffectVertex","vertexFn","in","vertexIndex","builtin","out","position","uv","vec2f","input","rot","$","vec","maxAngle","f32","Math","PI","ax","y","ay","x","positions","uvs","index","pos","vec3f","pivot","relative","sub","cosX","cos","sinX","sin","rotatedX","z","cosY","sinY","rotatedXY","finalPos3D","add","perspective","zOffset","persp","finalPos","vec4f"],"sourceRoot":"../../../../src","sources":["shaders/vertexShaders/mainRotationEffectVertex.ts"],"mappings":"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","ignoreList":[]}
@@ -2,24 +2,25 @@
2
2
 
3
3
  import { f32, vec2f, vec3f, vec4f } from 'typegpu/data';
4
4
  import { div } from 'typegpu/std';
5
- export const createBloomOptions = options => {
5
+ import { WAVE_CALLBACKS } from "../enums/waveCallback.js";
6
+ export const createGlareOptions = options => {
6
7
  const {
7
8
  glowPower,
8
9
  hueShiftAngleMax,
9
10
  hueShiftAngleMin,
10
11
  hueBlendPower,
11
12
  lightIntensity,
12
- bloomIntensity
13
+ glareIntensity
13
14
  } = options;
14
- const bloomOp = {
15
+ const glareOp = {
15
16
  glowPower: glowPower ?? 1.0,
16
17
  hueShiftAngleMax: hueShiftAngleMax ?? 1.0,
17
18
  hueShiftAngleMin: hueShiftAngleMin ?? 0.0,
18
19
  hueBlendPower: hueBlendPower ?? 1.0,
19
20
  lightIntensity: lightIntensity ?? 1.0,
20
- bloomIntensity: bloomIntensity ?? 1.0
21
+ glareIntensity: glareIntensity ?? 1.0
21
22
  };
22
- return bloomOp;
23
+ return glareOp;
23
24
  };
24
25
  export const mapToF32 = obj => {
25
26
  const result = {};
@@ -57,6 +58,17 @@ export const colorMaskToTyped = colorMask => {
57
58
  };
58
59
  return result;
59
60
  };
61
+ export const createHoloOptions = options => {
62
+ const {
63
+ intensity,
64
+ waveCallback
65
+ } = options;
66
+ const holoOpt = {
67
+ intensity: intensity ?? 0.7,
68
+ waveCallback: waveCallback ?? WAVE_CALLBACKS.default
69
+ };
70
+ return holoOpt;
71
+ };
60
72
  export const numberArrToTyped = vec => {
61
73
  let convFn = null;
62
74
  switch (vec.length) {
@@ -1 +1 @@
1
- {"version":3,"names":["f32","vec2f","vec3f","vec4f","div","createBloomOptions","options","glowPower","hueShiftAngleMax","hueShiftAngleMin","hueBlendPower","lightIntensity","bloomIntensity","bloomOp","mapToF32","obj","result","key","createColorMask","colorMask","baseColor","rgbToleranceRange","baseTolerance","upper","lower","tolerance","mask","colorMaskToTyped","numberArrToTyped","vec","convFn","length","Error","typed","createBindGroupPair","bindGroupLayout","bindGroup","layout","group","createBindGroupPairs","bindGroupLayouts","bindGroups","pairs","i","push"],"sourceRoot":"../../../src","sources":["types/typeUtils.ts"],"mappings":";;AAAA,SAASA,GAAG,EAAEC,KAAK,EAAEC,KAAK,EAAEC,KAAK,QAAQ,cAAc;AAQvD,SAASC,GAAG,QAAQ,aAAa;AAGjC,OAAO,MAAMC,kBAAkB,GAC7BC,OAA8B,IACb;EACjB,MAAM;IACJC,SAAS;IACTC,gBAAgB;IAChBC,gBAAgB;IAChBC,aAAa;IACbC,cAAc;IACdC;EACF,CAAC,GAAGN,OAAO;EAEX,MAAMO,OAAO,GAAG;IACdN,SAAS,EAAEA,SAAS,IAAI,GAAG;IAC3BC,gBAAgB,EAAEA,gBAAgB,IAAI,GAAG;IACzCC,gBAAgB,EAAEA,gBAAgB,IAAI,GAAG;IACzCC,aAAa,EAAEA,aAAa,IAAI,GAAG;IACnCC,cAAc,EAAEA,cAAc,IAAI,GAAG;IACrCC,cAAc,EAAEA,cAAc,IAAI;EACpC,CAAC;EAED,OAAOC,OAAO;AAChB,CAAC;AAED,OAAO,MAAMC,QAAQ,GACnBC,GAAM,IAGH;EACH,MAAMC,MAAM,GAAG,CAAC,CAAQ;EACxB,KAAK,MAAMC,GAAG,IAAIF,GAAG,EAAE;IACrBC,MAAM,CAACC,GAAG,CAAC,GAAGjB,GAAG,CAACe,GAAG,CAACE,GAAG,CAAC,CAAC;EAC7B;EAEA,OAAOD,MAAM;AACf,CAAC;AAED,OAAO,MAAME,eAAe,GAC1BC,SAAwD,IAC1C;EACd,MAAM;IAAEC,SAAS;IAAEC;EAAkB,CAAC,GAAGF,SAAS;EAClD,MAAMG,aAAa,GAAG;IACpBC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAS;IAC3BC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;EACpB,CAAC;EACD,MAAMC,SAAS,GAAG;IAAE,GAAGH,aAAa;IAAE,GAAGD;EAAkB,CAAC;EAE5D,MAAMK,IAAe,GAAG;IACtBN,SAAS,EAAEA,SAAS;IACpBC,iBAAiB,EAAEI;EACrB,CAAC;EAED,OAAOC,IAAI;AACb,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAIR,SAAoB,IAAK;EACxD,MAAMH,MAAM,GAAG;IACbI,SAAS,EAAEhB,GAAG,CAACwB,gBAAgB,CAACT,SAAS,CAACC,SAAS,CAAC,EAAE,GAAG,CAAC;IAC1DC,iBAAiB,EAAE;MACjBE,KAAK,EAAEnB,GAAG,CAACwB,gBAAgB,CAACT,SAAS,CAACE,iBAAiB,CAACE,KAAK,CAAC,EAAE,GAAG,CAAC;MACpEC,KAAK,EAAEpB,GAAG,CAACwB,gBAAgB,CAACT,SAAS,CAACE,iBAAiB,CAACG,KAAK,CAAC,EAAE,GAAG;IACrE;EACF,CAAC;EACD,OAAOR,MAAM;AACf,CAAC;AAED,OAAO,MAAMY,gBAAgB,GAAIC,GAAa,IAAK;EACjD,IAAIC,MAA2C,GAAG,IAAI;EACtD,QAAQD,GAAG,CAACE,MAAM;IAChB,KAAK,CAAC;MACJD,MAAM,GAAG7B,KAAK;MACd;IACF,KAAK,CAAC;MACJ6B,MAAM,GAAG5B,KAAK;MACd;IACF,KAAK,CAAC;MACJ4B,MAAM,GAAG3B,KAAK;MACd;IACF;MACE,MAAM,IAAI6B,KAAK,CAAC,kDAAkD,CAAC;EACvE;EAEA,MAAMC,KAAK,GAAGH,MAAM,CAAC,GAAGD,GAAG,CAAC;EAC5B,OAAOI,KAAK;AACd,CAAC;AAED,OAAO,MAAMC,mBAAmB,GAAGA,CACjCC,eAAoC,EACpCC,SAAwB,KACN;EAClB,OAAO;IAAEC,MAAM,EAAEF,eAAe;IAAEG,KAAK,EAAEF;EAAU,CAAC;AACtD,CAAC;AAED,OAAO,MAAMG,oBAAoB,GAAGA,CAClCC,gBAAuC,EACvCC,UAA2B,KACP;EACpB,IACED,gBAAgB,CAACT,MAAM,GAAG,CAAC,IAC3BS,gBAAgB,CAACT,MAAM,KAAKU,UAAU,CAACV,MAAM,EAE7C,MAAM,IAAIC,KAAK,CACb,oFACF,CAAC;EACH,MAAMU,KAAsB,GAAG,EAAE;EACjC,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,gBAAgB,CAACT,MAAM,EAAEY,CAAC,EAAE,EAAE;IAChDD,KAAK,CAACE,IAAI,CAACV,mBAAmB,CAACM,gBAAgB,CAACG,CAAC,CAAC,EAAGF,UAAU,CAACE,CAAC,CAAE,CAAC,CAAC;EACvE;EAEA,OAAOD,KAAK;AACd,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["f32","vec2f","vec3f","vec4f","div","WAVE_CALLBACKS","createGlareOptions","options","glowPower","hueShiftAngleMax","hueShiftAngleMin","hueBlendPower","lightIntensity","glareIntensity","glareOp","mapToF32","obj","result","key","createColorMask","colorMask","baseColor","rgbToleranceRange","baseTolerance","upper","lower","tolerance","mask","colorMaskToTyped","numberArrToTyped","createHoloOptions","intensity","waveCallback","holoOpt","default","vec","convFn","length","Error","typed","createBindGroupPair","bindGroupLayout","bindGroup","layout","group","createBindGroupPairs","bindGroupLayouts","bindGroups","pairs","i","push"],"sourceRoot":"../../../src","sources":["types/typeUtils.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ import { type SharedValue } from 'react-native-reanimated';
2
+ import type { GlareOptions, ColorMask, DeepPartiallyOptional } from '../types/types';
3
+ export interface ShineProps {
4
+ width: number;
5
+ height: number;
6
+ imageURI: string;
7
+ glareOptions?: Partial<GlareOptions>;
8
+ colorMaskOptions?: DeepPartiallyOptional<ColorMask, 'baseColor'>;
9
+ maskURI?: string;
10
+ useTouchControl?: boolean;
11
+ touchPosition?: SharedValue<[number, number]>;
12
+ addTextureMask?: boolean;
13
+ addReverseHolo?: boolean;
14
+ addHolo?: boolean;
15
+ }
16
+ export declare function Shine({ width, height, imageURI, glareOptions: glareOptions, colorMaskOptions, maskURI, touchPosition, useTouchControl, addTextureMask, addHolo, addReverseHolo, }: ShineProps): import("react/jsx-runtime").JSX.Element;
17
+ //# sourceMappingURL=Shine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Shine.d.ts","sourceRoot":"","sources":["../../../../src/components/Shine.tsx"],"names":[],"mappings":"AAoBA,OAAiB,EAMf,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAcjC,OAAO,KAAK,EAEV,YAAY,EACZ,SAAS,EACT,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AAkBxB,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACrC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,WAAW,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC9C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,KAAK,CAAC,EACpB,KAAK,EACL,MAAM,EACN,QAAQ,EACR,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,eAAuB,EACvB,cAAsB,EACtB,OAAe,EACf,cAAsB,GACvB,EAAE,UAAU,2CAiYZ"}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { type ShineProps } from './Shine';
3
+ interface ShineGroupProps {
4
+ children: React.ReactNode;
5
+ }
6
+ export declare function ShineGroup({ children, glareOptions, colorMaskOptions, maskURI, touchPosition, useTouchControl, addTextureMask, addHolo, addReverseHolo, }: ShineGroupProps & Partial<ShineProps>): import("react/jsx-runtime").JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=ShineGroup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ShineGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/ShineGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAS3D,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAEjD,UAAU,eAAe;IACvB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,eAAuB,EACvB,cAAsB,EACtB,OAAe,EACf,cAAsB,GACvB,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,2CA4EvC"}
@@ -0,0 +1,9 @@
1
+ import { type TgpuFn } from 'typegpu';
2
+ import * as d from 'typegpu/data';
3
+ export declare const WAVE_CALLBACKS: {
4
+ readonly default: (pos: d.v2f) => d.v2f;
5
+ };
6
+ export declare const waveCallbackSlot: import("typegpu").TgpuSlot<TgpuFn<(pos: d.Vec2f) => d.Vec2f>>;
7
+ export type WaveCallbackFn = (pos: d.v2f) => d.v2f;
8
+ export declare const waveCallbackFn: import("typegpu").TgpuFnShell<[d.Vec2f], d.Vec2f>;
9
+ //# sourceMappingURL=waveCallback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waveCallback.d.ts","sourceRoot":"","sources":["../../../../src/enums/waveCallback.ts"],"names":[],"mappings":"AAAA,OAAa,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAElC,eAAO,MAAM,cAAc;4BACV,CAAC,CAAC,GAAG;CAWZ,CAAC;AAEX,eAAO,MAAM,gBAAgB,0CAA0B,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,EAAI,CAAC;AAE/E,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC;AACnD,eAAO,MAAM,cAAc,mDAA8B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const useOrientation: () => string | undefined;
2
+ //# sourceMappingURL=useOrientation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useOrientation.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useOrientation.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,cAAc,0BAa1B,CAAC"}
@@ -1,12 +1,7 @@
1
- import { subscribeToOrientationChange, getAngleFromDimensions } from './shaders/utils';
2
- import type { BloomOptions, ColorMask, DeepPartiallyOptional } from './types/types';
3
- interface ShineProps {
4
- width: number;
5
- height: number;
6
- imageURI: string;
7
- bloomOptions?: Partial<BloomOptions>;
8
- colorMaskOptions?: DeepPartiallyOptional<ColorMask, 'baseColor'>;
9
- }
10
- export declare function Shine({ width, height, imageURI, bloomOptions, colorMaskOptions, }: ShineProps): import("react/jsx-runtime").JSX.Element;
11
- export { subscribeToOrientationChange, getAngleFromDimensions };
1
+ import { useOrientation } from './hooks/useOrientation';
2
+ import { getAngleFromDimensions, subscribeToOrientationChange } from './shaders/utils';
3
+ export { subscribeToOrientationChange, getAngleFromDimensions, useOrientation };
4
+ export { Shine } from './components/Shine';
5
+ export { ShineGroup } from './components/ShineGroup';
6
+ export type { ShineProps } from './components/Shine';
12
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAKA,OAAO,EAKL,4BAA4B,EAC5B,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AA8BzB,OAAO,KAAK,EAEV,YAAY,EACZ,SAAS,EACT,qBAAqB,EACtB,MAAM,eAAe,CAAC;AAGvB,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACrC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;CAClE;AAED,wBAAgB,KAAK,CAAC,EACpB,KAAK,EACL,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,gBAAgB,GACjB,EAAE,UAAU,2CAmQZ;AAED,OAAO,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC7B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,cAAc,EAAE,CAAC;AAChF,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC"}