Skip to content

Commit 2bda8fa

Browse files
author
takuma-hmng8
committed
バグ修正
1 parent f29bcca commit 2bda8fa

File tree

9 files changed

+18
-15
lines changed

9 files changed

+18
-15
lines changed

Diff for: app/_home/index.tsx

+4-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ export const Home = () => {
1818
const [updateFluid, setFluid] = useFluid({ size, dpr });
1919
const [updateFxBlending, setFxBlending] = useFxBlending({ size, dpr });
2020
const [updateColorStrata, setColorStrata] = useColorStrata({ size, dpr });
21-
const [updateBrightnessPicker] = useBrightnessPicker({ size, dpr });
21+
const [updateBrightnessPicker, setBrightnessPicker] = useBrightnessPicker({
22+
size,
23+
dpr,
24+
});
2225

2326
setFxBlending({
2427
mapIntensity: 0.45,

Diff for: packages/use-shader-fx/build/use-shader-fx.js

+3-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/use-shader-fx/build/use-shader-fx.js.map

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/use-shader-fx/build/use-shader-fx.umd.cjs

+3-3
Original file line numberDiff line numberDiff line change
@@ -616,7 +616,7 @@ void main() {
616616
vec2 uv = vUv;
617617
vec3 color = texture2D(u_texture, uv).rgb;
618618
float brightness = dot(color,u_brightness);
619-
float alpha = smoothstep(u_min, u_max, brightness);
619+
float alpha = clamp(smoothstep(u_min, u_max, brightness),0.0,1.0);
620620
gl_FragColor = vec4(color, alpha);
621621
}`;const pn=t=>{const i=a.useMemo(()=>new n.PlaneGeometry(2,2),[]),r=a.useMemo(()=>new n.ShaderMaterial({uniforms:{u_texture:{value:new n.Texture},u_brightness:{value:new n.Vector3},u_min:{value:0},u_max:{value:1}},vertexShader:mn,fragmentShader:dn}),[]);return D(t,i,r),r},Q={texture:new n.Texture,brightness:new n.Vector3(.5,.5,.5),min:0,max:1},gn=({size:t,dpr:i})=>{const r=a.useMemo(()=>new n.Scene,[]),e=pn(r),u=_(t),[l,v]=R({scene:r,camera:u,size:t,dpr:i}),[o,c]=b(Q);return[a.useCallback((m,d)=>{const{gl:g}=m;return d&&c(d),s(e,"u_texture",o.texture),s(e,"u_brightness",o.brightness),s(e,"u_min",o.min),s(e,"u_max",o.max),v(g)},[v,e,c,o]),c,{scene:r,material:e,camera:u,renderTarget:l}]};var xn=`varying vec2 vUv;
622622
@@ -646,14 +646,14 @@ void main() {
646646
vec2 pos = isTexture ? texture2D(uTexture, uv).rg : uv * scale;
647647
vec2 noise = isNoise ? texture2D(noise, uv).rg : vec2(0.0);
648648
float alpha = isTexture ? texture2D(uTexture, uv).a : 1.0;
649+
650+
alpha = (alpha < 1e-10) ? 0.0 : alpha;
649651
650652
vec3 col;
651653
for(float j = 0.0; j < 3.0; j++){
652654
for(float i = 1.0; i < laminateLayer; i++){
653-
654655
float timeNoiseSin = sin(uTime / (i + j)) * timeStrength.x + noise.r * noiseStrength.x;
655656
float timeNoiseCos = cos(uTime / (i + j)) * timeStrength.y + noise.g * noiseStrength.y;
656-
657657
pos.x += laminateInterval.x / (i + j) * cos(i * distortion.x * pos.y + timeNoiseSin + sin(i + j));
658658
pos.y += laminateInterval.y / (i + j) * cos(i * distortion.y * pos.x + timeNoiseCos + sin(i + j));
659659
}

Diff for: packages/use-shader-fx/build/use-shader-fx.umd.cjs.map

+1-1
Large diffs are not rendered by default.

Diff for: packages/use-shader-fx/package-lock.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/use-shader-fx/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@hmng8/use-shader-fx",
3-
"version": "1.0.23",
3+
"version": "1.0.24",
44
"description": "wide variety of shader effects for React",
55
"main": "./build/use-shader-fx.umd.cjs",
66
"module": "./build/use-shader-fx.js",

Diff for: packages/use-shader-fx/src/hooks/useBrightnessPicker/shader/main.frag

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@ void main() {
1010
vec2 uv = vUv;
1111
vec3 color = texture2D(u_texture, uv).rgb;
1212
float brightness = dot(color,u_brightness);
13-
float alpha = smoothstep(u_min, u_max, brightness);
13+
float alpha = clamp(smoothstep(u_min, u_max, brightness),0.0,1.0);
1414
gl_FragColor = vec4(color, alpha);
1515
}

Diff for: packages/use-shader-fx/src/hooks/useColorStrata/shader/main.frag

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,14 @@ void main() {
2121
vec2 pos = isTexture ? texture2D(uTexture, uv).rg : uv * scale;
2222
vec2 noise = isNoise ? texture2D(noise, uv).rg : vec2(0.0);
2323
float alpha = isTexture ? texture2D(uTexture, uv).a : 1.0;
24+
// Avoid floating point bugs caused by GPU drivers.
25+
alpha = (alpha < 1e-10) ? 0.0 : alpha;
2426

2527
vec3 col;
2628
for(float j = 0.0; j < 3.0; j++){
2729
for(float i = 1.0; i < laminateLayer; i++){
28-
2930
float timeNoiseSin = sin(uTime / (i + j)) * timeStrength.x + noise.r * noiseStrength.x;
3031
float timeNoiseCos = cos(uTime / (i + j)) * timeStrength.y + noise.g * noiseStrength.y;
31-
3232
pos.x += laminateInterval.x / (i + j) * cos(i * distortion.x * pos.y + timeNoiseSin + sin(i + j));
3333
pos.y += laminateInterval.y / (i + j) * cos(i * distortion.y * pos.x + timeNoiseCos + sin(i + j));
3434
}

0 commit comments

Comments
 (0)