annotate data/shaders/transfer.f.glsl @ 25:4b6c952a83bd
works
todo:
1- ta quads na nai to res tou volume * 2
2- conservative quad
3- to aspect ratio tou preview
author |
Eleni Maria Stea <elene.mst@gmail.com> |
date |
Sun, 27 Apr 2014 18:13:44 +0300 |
parents |
|
children |
|
rev |
line source |
elene@24
|
1 uniform sampler3D tex;
|
elene@24
|
2 uniform float tmin;
|
elene@24
|
3 uniform float tmax;
|
elene@24
|
4
|
elene@24
|
5 float transfer(float x, float tmin, float tmax)
|
elene@24
|
6 {
|
elene@24
|
7 float dt = 0.25 * (tmax - tmin);
|
elene@24
|
8 return smoothstep(tmin - dt, tmin + dt, x) *
|
elene@24
|
9 (1.0 - smoothstep(tmax - dt, tmax + dt, x));
|
elene@24
|
10 }
|
elene@24
|
11
|
elene@24
|
12 void main()
|
elene@24
|
13 {
|
elene@24
|
14 float texel = texture3D(tex, gl_TexCoord[0].xyz).x;
|
elene@24
|
15 float val = transfer(texel, tmin, tmax);
|
elene@24
|
16
|
elene@24
|
17 gl_FragColor = vec4(val, val, val, 1.0);
|
elene@24
|
18 }
|