1

GLSLで画面のクワッドエッジ(内側の輝き)に沿って光る効果を作成する方法を探しています。フラグメントシェーダーで長方形の手続き型を作成する方法と、それをぼかして外側に光る方法を知っていますが、設定可能なグロー距離とぼかしレベルで内側を向くスクリーンクワッドに沿ってグローを設定する方法がわかりません。関連する例やドキュメントへのリンク?これが私が必要とするものです: ここに画像の説明を入力してください

Daコード:

const vec2 resolution = vec2(800,600);
float rect( vec2 p, vec2 b, float smooth )
{
vec2 v = abs(p) - b;
float d = length(max(v,0.0));
return 1.0-pow(d, smooth);
}

void main( void ) {

vec2 unipos = (gl_FragCoord.xy / resolution);
vec2 pos = unipos*2.0-1.0;
pos.x *= resolution.x / resolution.y;


float d1 = rect(pos - vec2(-1.0,0.0), vec2(1,1), 0.1); 
vec3 clr1 = vec3(0.2,0.6,1.0) *d1; 



gl_FragColor = vec4( clr1 , 1.0 );

}

このコードは、外側の輝きを備えたフルスクリーンの長方形を作成しますが、必要なのはグローだけで、内側にある必要があります。

4

0 に答える 0