Changeset 1810


Ignore:
Timestamp:
Aug 24, 2012, 2:36:18 PM (8 years ago)
Author:
rez
Message:

fixed all noise/displacement effects

Location:
trunk/tools/neercs/video
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/tools/neercs/video/noise.lolfx

    r1806 r1810  
    2020uniform vec3 retrace;
    2121
    22 float rand(in vec2 p)
     22float rand(in vec2 p,in float t,in float v)
    2323        {
    24         return fract(sin(dot(p,vec2(12.9898,78.233)))*43758.5453);
     24        return fract(sin(dot(p+t,vec2(12.9898,78.233)))*v);
    2525        }
    2626
     
    2929        vec2 p=gl_FragCoord.xy/screen_size.xy;
    3030
    31         float rnd=rand(p+time);
    32         vec2 o=(offset-offset*2.0*rnd)/screen_size;
     31        float r1=rand(p,time,43758.5453);
     32        float r2=rand(p,time,70425.2854);
     33        vec2 o=(offset-offset*2.0*r1)/screen_size;
    3334
    3435        vec3 c=texture2D(texture,p+o).xyz;                                              // offset
    35         c-=rnd*noise;                                                                                   // noise
     36        c*=1.0+(noise-noise*2.0*r1);                                                    // noise
    3637        c-=retrace.x*mod(p.y*retrace.y+time*retrace.z,1.0);             // retrace
    3738        gl_FragColor=vec4(c,1.0);
  • trunk/tools/neercs/video/postfx.lolfx

    r1806 r1810  
    8484        c*=scanline_v.x+scanline_v.y*cos(z.x*float(screen_size.x*scanline_v.z+scanline_v.w));   // scanline v
    8585        c*=(mask-vignetting);                                                                   // vignetting
    86         c*=letterbox(z,corner.x,corner.y);                                              // letterbox
     86        c*=letterbox(z,corner.x,corner.y);                                              // corner
    8787        gl_FragColor=vec4(c,1.0);
    8888        }
  • trunk/tools/neercs/video/render.cpp

    r1806 r1810  
    9393vec2 glow_small(1.0f,1.0f);     // small glow radius [center,corner]
    9494vec2 blur(0.25f,0.5f);          // glow radius [center,corner]
    95 vec2 noise_offset(3.0f,3.0f);         // random line [horizontal,vertical]
     95vec2 noise_offset(1.5f,1.5f);         // random line [horizontal,vertical]
    9696float noise_noise = 0.15f;            // noise
    97 vec3 noise_retrace(0.05f,2.0f,4.0f);  // retrace [strength,length,speed]
     97vec3 noise_retrace(0.02f,1.0f,0.5f);  // retrace [strength,length,speed]
    9898vec2 postfx_deform(0.7f,0.54f);       // deformation [ratio,zoom]
    9999vec3 postfx_filter(0.8f,0.9f,0.4f);   // color filter [red,green,blue]
     
    184184        "",
    185185    "noise",
     186        "enable",
    186187        "offset h",
    187188        "offset v",
     
    190191        "retrace length",
    191192        "retrace speed",
    192         "",
    193193        "",
    194194    "ghost",
     
    250250    vec4(0), /* blur */
    251251        vec4(0, 1, 1, 1),
    252         vec4(0.0f, 2.0f, 0.1f, blur.x),
    253         vec4(0.0f, 2.0f, 0.1f, blur.y),
     252        vec4(0.0f, 2.0f, 0.05f, blur.x),
     253        vec4(0.0f, 2.0f, 0.05f, blur.y),
    254254        vec4(0),
    255255        vec4(0),
     
    276276        vec4(0),
    277277    vec4(0), /* noise */
     278        vec4( 0, 1, 1, 1),
    278279        vec4(0.0f, 4.0f, 0.50f, noise_offset.x),
    279280        vec4(0.0f, 4.0f, 0.50f, noise_offset.y),
    280         vec4(0.0f, 1.0f, 0.05f, noise_noise),
     281        vec4(0.0f, 0.5f, 0.25f, noise_noise),
    281282        vec4(0.0f, 0.2f, 0.01f, noise_retrace.x),
    282283        vec4(0.0f, 8.0f, 0.50f, noise_retrace.y),
    283284        vec4(0.0f, 4.0f, 0.25f, noise_retrace.z),
    284         vec4(0),
    285285        vec4(0),
    286286    vec4(0), /* ghost */
     
    339339    postfx_aberration = setup_var[k].w; k++;
    340340    k += 2; /* noise */
     341    m_shader_noise = (setup_var[k].w == 1) ? true : false; k++;
    341342    noise_offset = vec2(setup_var[k].w, setup_var[k + 1].w); k += 2;
    342343    noise_noise = setup_var[k].w; k++;
    343344    noise_retrace = vec3(setup_var[k].w, setup_var[k + 1].w, setup_var[k + 2].w); k += 3;
    344     k += 3; /* ghost */
     345    k += 2; /* ghost */
    345346    postfx_ghost1 = vec4(setup_var[k].w, setup_var[k + 1].w, setup_var[k + 2].w, setup_var[k + 3].w); k += 4;
    346347    postfx_ghost2 = vec4(setup_var[k].w, setup_var[k + 1].w, setup_var[k + 2].w, setup_var[k + 3].w); k += 4;
Note: See TracChangeset for help on using the changeset viewer.