„Számítógépes grafika és képfeldolgozás - Vizsga, 2015.01.06.” változatai közötti eltérés
Nincs szerkesztési összefoglaló |
Nincs szerkesztési összefoglaló |
||
| 49. sor: | 49. sor: | ||
} | } | ||
</pre> | </pre> | ||
| | |<pre> | ||
void main( in float3 p : TEXCOORD0, | |||
uniform sampler3D volume, | |||
uniform float3 eye, | |||
out float3 color : COLOR ) | |||
{ | |||
float3 dir = normalize(p - eye); | |||
float3 t0 = (float3(0,0,0)-eye)/dir; | |||
float3 t1 = (float3(1,1,1)-eye)/dir; | |||
float3 ti = min(t0, t1); | |||
float3 to = max(t0, t1); | |||
float ey = max(max(ti.x, ti.y), ti.z); | |||
float ex = min(min(to.x, to.y), to.z); | |||
color = float3(0,0,0); | |||
if (ex > ey) { | |||
float3 q, normal; | |||
float dt = (ex - ey) / 128; | |||
for(t = ey; t < ex; t += dt) { | |||
if ( color.r == 0 ) { | |||
q = eye + raydir * t; | |||
if (tex3D(volume, q).r > 0.1) | |||
color = float(1, 0, 0); | |||
} | |||
} | |||
} | |||
</pre> | |||
|} | |} | ||