|
|
There appears to be a bug with photons and texture_map. Consider a typical
photon scene: a refractive object with a floor beneath - Then the
transformation of the floor affects the way caustics appear if the floor has
a texture map.
This animation will demonstrate the effect:
#version unofficial MegaPov 0.4;
$Lpos=<3,5,-5>*6;
light_source { 0, 2 translate Lpos }
// Try these one at a time:
$Pigment_map=0; // this is ok
$Plain_colour=0; // ditto
$Texture_map=1; // this is not ok
$T=.55;//clock; // clock from 0 through 1
// T=0.5 correspond to no transformation and will produce
// correct results with all the above pigments
camera {
location <0, 10 ,-10>
look_at 0
rotate 90*y
}
global_settings{
max_trace_level 12
photons{
count 20000
autostop 0
}
}
$Ruby_mat=material {
texture {
pigment {rgb x filter 0.95}
finish {specular .4 roughness .01}
}
interior { ior 1.06}
}
$C1=<120,1,165>/255;
$Plane=plane{y,.3
#if(Plain_colour) pigment {rgb C1} #end
#if(Texture_map)
texture {
marble
texture_map {
[.5 pigment {color C1} ]
[.5 pigment {color C1*1.4} ]
}
}
#end
#if(Pigment_map)
pigment {
marble
pigment_map {
[.5 color C1 ]
[.5 color C1*1.4 ]
}
}
#end
}
object {Plane translate <-5+T*10, 0, -5+T*10>}
$k=0;$l=0;$counter=0;
#while (k<=1)
#while (l<=1)
box {-.5,.5
material {Ruby_mat}
photons { target refraction on}
$Pos=<-5+k*10, 0, -5+10*l>;
translate Pos+(Lpos-Pos)*.04 +y*.3
}
$counter=counter+1;
$l=l+1/3;
#end
$l=0;
$k=k+1/3;
#end
Post a reply to this message
|
|