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