updated refinement shader
This commit is contained in:
@@ -21,7 +21,7 @@ int IS_FOREGROUND = 2;
|
||||
int UNSET = -1;
|
||||
|
||||
float M_PI= 3.14159;
|
||||
int suchbreich=400; //die anzahl der Pixel, die maximal in eine Richtung gegangen wird um einen Sicheren Pixel zu finden
|
||||
int suchbreich=20; //die anzahl der Pixel, die maximal in eine Richtung gegangen wird um einen Sicheren Pixel zu finden
|
||||
vec4 SicheresPixel[20]; //Speichert die das nachste Sichere Pixel, Array grosse=anzahl der Richtungen
|
||||
int anzahl_richtungen=20; //Speichert anzahl der Richtungen muss gleich der Array grosse von SicheresPixel sein
|
||||
|
||||
@@ -78,14 +78,18 @@ float Farbabstand(int i){
|
||||
vec3 Pruefe_Pixel_in_Umgebung (vec2 start){
|
||||
float winkel=2*M_PI/anzahl_richtungen;
|
||||
int i=0;
|
||||
float gefundene_pixel=0.0f;
|
||||
float maximal=0;
|
||||
float gesamt_abstand=0.0f;
|
||||
while(i<anzahl_richtungen){
|
||||
SicheresPixel[i]=suche_Pixel_nach_winkel(start, winkel*i);
|
||||
if(SicheresPixel[i].w!=-1)
|
||||
if(SicheresPixel[i].w!=-1){
|
||||
gesamt_abstand+=SicheresPixel[i].w;
|
||||
gefundene_pixel++;
|
||||
if(maximal<SicheresPixel[i].w)
|
||||
maximal=SicheresPixel[i].w;
|
||||
}
|
||||
|
||||
i=i+1;
|
||||
}
|
||||
maximal++;
|
||||
@@ -98,7 +102,7 @@ vec3 Pruefe_Pixel_in_Umgebung (vec2 start){
|
||||
}*/
|
||||
i=0;
|
||||
vec3 kombiniert=vec3(0.0f);
|
||||
float nenner=anzahl_richtungen*maximal-gesamt_abstand;
|
||||
float nenner=gefundene_pixel*maximal-gesamt_abstand;
|
||||
while(i<anzahl_richtungen){
|
||||
if(SicheresPixel[i].w!=-1)
|
||||
kombiniert+=SicheresPixel[i].xyz*(maximal-SicheresPixel[i].w)/nenner;
|
||||
|
||||
Reference in New Issue
Block a user