1
중간에 광선이있는 그라디언트 원을 얻고 싶습니다. 내 코드에 사용 된 방법을 사용합니다. 그러나 뭔가 잘못되고 있습니다. 가운데에 빛나는 부분이 정확히 가운데에 있지 않습니다. 광선 아래 부분은 상단 부분보다 큽니다.쉐이더의 광선이 잘못 배치 된 것 같습니다.
왜 이런 일이 : 페인트의 픽셀은 그것은 착시 참조 이미지 아니었다 확인하기 위해 검사?
코드 :
// Author @patriciogv - 2015
// http://patriciogonzalezvivo.com
#ifdef GL_ES
precision mediump float;
#endif
#define PI 3.14159265359
#define TWO_PI 6.28318530718
uniform vec2 u_resolution;
uniform vec2 u_mouse;
uniform float u_time;
void main(){
vec2 c = gl_FragCoord.xy/u_resolution.xy;
c.x *= u_resolution.x/u_resolution.y;
c.y = c.y;
c = vec2(0.5, 0.5) - c;
float d = smoothstep(0.0, 1.572, 0.336 - length(c.xy));
float glowsize = 30.712;
gl_FragColor = vec4(0., .0, d, 1.) * glowsize ;
}
감사합니다! 그러나 문제는 여전히 동일하게 유지되며 하단 부분은 더 크다 – RomeoTheWizard
@RomeoTheWizard 캔버스 전체에 뷰포트가 있으며 뷰포트 전체에 그립니 까? gl_FragColor = vec4 (1.0, 0.0, 0.0, 1.0);을 할 경우 모두 빨간색으로 칠해집니다. – Rabbid76
예 모두 빨간색으로 그려져 있습니다. – RomeoTheWizard