|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
hi all,
I want to make an animation about the so-called "mirage effect" on a heated
surface with a sphere present. (what is the mirage effect:
http://www.physlink.com/Education/askExperts/ae428.cfm)
Basicly the effect is created by a difference in refractive indix of a hot and a
cold medium (water). Is it possible in PORAY to create a location dependant
refractive index?
Regards, Ruud
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
feestje wrote:
> hi all,
>
> I want to make an animation about the so-called "mirage effect" on a heated
> surface with a sphere present. (what is the mirage effect:
> http://www.physlink.com/Education/askExperts/ae428.cfm)
>
> Basicly the effect is created by a difference in refractive indix of a hot and a
> cold medium (water). Is it possible in PORAY to create a location dependant
> refractive index?
>
> Regards, Ruud
You cannot give an object a variable index of refraction, sorry. But you
*can* stack many transparent objects onto each other, each having a
different ior. It might work for the mirage effect. The render times
using this method are slooow, even on faster computers.
Or you could try modeling a microsphere atmosphere, but this would
render even more slowly, I'm pretty sure.
Sam
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
stbenge wrote:
> You cannot give an object a variable index of refraction, sorry. But you
> *can* stack many transparent objects onto each other, each having a
> different ior. It might work for the mirage effect. The render times
> using this method are slooow, even on faster computers.
I've found when stacking translucent objects with internal media, I need to be REALLY
careful about separating surfaces, or I get spotty artifacts.
Dan
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Dan Connelly wrote:
> stbenge wrote:
>> You cannot give an object a variable index of refraction, sorry. But
>> you *can* stack many transparent objects onto each other, each having
>> a different ior. It might work for the mirage effect. The render times
>> using this method are slooow, even on faster computers.
>
> I've found when stacking translucent objects with internal media, I need
> to be REALLY careful about separating surfaces, or I get spotty artifacts.
Oh no, with media in the equation, the scene might take months to
render! I don't think media is really needed for this effect.
Oh yeah, the poster may want to give the stacked objects no_shadow to
help speed things up somewhat.
Sam
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
stbenge nous illumina en ce 2008-10-31 15:25 -->
> feestje wrote:
>> hi all,
>>
>> I want to make an animation about the so-called "mirage effect" on a
>> heated
>> surface with a sphere present. (what is the mirage effect:
>> http://www.physlink.com/Education/askExperts/ae428.cfm)
>>
>> Basicly the effect is created by a difference in refractive indix of a
>> hot and a
>> cold medium (water). Is it possible in PORAY to create a location
>> dependant
>> refractive index?
>>
>> Regards, Ruud
>
> You cannot give an object a variable index of refraction, sorry. But you
> *can* stack many transparent objects onto each other, each having a
> different ior. It might work for the mirage effect. The render times
> using this method are slooow, even on faster computers.
>
> Or you could try modeling a microsphere atmosphere, but this would
> render even more slowly, I'm pretty sure.
>
> Sam
You may not need many stacked objects. Just one or two thin boxes, or strongly
flattened spheres or cylinders, with a clever normal may be enough. Just
remember to keep the ior close to 1.
Start with 1. Do some test renders altering the ior and normal. Then, if needed,
add a second one. Tewak only that added object to adjust as needed. The second
object should have an ior closer to 1 than the first.
--
Alain
-------------------------------------------------
'hAS ANYONE SEEN MY cAPSLOCK KEY?'
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
hi all,
thank you for your responses! I thought of the stacked box methos myself but I
hoped ther ewould be something much more easier! well anyway: he is what I
accomplished so far:
#include "colors.inc"
sphere { // IOR < 1
<0,0,0> ,1.5
pigment {
color Black
}
}
plane{
< 0, -1, 0>, 2
pigment {
color White
}
finish {
ambient 0.7
diffuse 0.7
}
}
box {
< -20, -2, 15 >,
< 20, -1.9, -15 >
pigment {
color White filter 1
}
finish {
phong 1
refraction 1.0
}
interior {
ior 1.1
}}
box {
< -20, -1.9, 15 >,
< 20, -1.8, -15 >
pigment {
color White filter 1
}
finish {
phong 1
refraction 1.0
}
interior {
ior 1.2
}}
box {
< -20, -1.8, 15 >,
< 20, -1.7, -15 >
pigment {
color White filter 1
}
finish {
phong 1
refraction 1.0
}
interior {
ior 1.3
}}
box {
< -20, -1.7, 15 >,
< 20, -1.6, -15 >
pigment {
color White filter 1
}
finish {
phong 1
refraction 1.0
}
interior {
ior 1.4
}}
box {
< -20, -1.6, 15 >,
< 20, -1.5, -15 >
pigment {
color White filter 1
}
finish {
phong 1
refraction 1.0
}
interior {
ior 1.5
} }
box {
< -20, -1.5, 15 >,
< 20, 100, -15 >
pigment {
color White filter 1
}
finish {
phong 1
refraction 1.0
}
interior {
ior 1.6
}}
background {
color SkyBlue
}
camera {
location -1.5*y - 20*z
direction 1.3*z
up y
right 4/3*x
look_at 0*x
}
light_source {
20*z
color White
}
------------------------------------------
I know it doesn't look pretty yet! :(I'll keep trying to improve it. especially
the lighting; is there a trick for making a diffuse light source? If someone
has any suggestions I would appriciate it!
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
feestje wrote:
> hi all,
>
> thank you for your responses! I thought of the stacked box methos myself but I
> hoped ther ewould be something much more easier! well anyway: he is what I
> accomplished so far:
>
I'd use a loop for the slices.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
I dind't know using loops was an option. I will look for a tutorial somewhere
and try it. unless someone wants te show me how to do it offcourse ;)
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
I made a version with loop. I believe it will work. only problem i heve is with
the lighting. I want to use a plane that emits light. This is the codeI am
using:
light_source
{ <0,0,0>, 1
looks_like {
plane {
z, 1000
pigment {
color White }
finish {
ambient 1 }
} }}
it seems the only light production from this code is because of the ambient
statement.
is it even possible to have a plane emit light?
Regards, Ruud
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
btw: the entire code is:
#include "colors.inc"
global_settings { max_trace_level 100 }
object {
sphere { <0,0,0>,10 }
pigment {
color Black
}
finish {
phong 1
phong_size 10
}
}
#declare Index = 1;
#declare Indexmax=20;
#declare lower_ior = 1;
#declare upper_ior = 2;
#declare hight_boundarylayer = 7;
#declare surface=15;
#while(Index <= Indexmax)
// hotter medium
box {
< -50,(-surface+(Index-1)*hight_boundarylayer/Indexmax) , -20 >, //
lower-left corner
< 50, (-surface+(Index)*hight_boundarylayer/Indexmax) , 20 > //
upper-right corner
pigment {
color White filter 1
}
interior {
ior (lower_ior+((upper_ior-lower_ior)/Indexmax)*Index)
}
}
#declare Index = Index + 1;
#end
//normal medium
box{
<-50,-20+hight_boundarylayer,-20>
<50,50,20 >
pigment {
color White filter 1
}
interior {
ior upper_ior
}
}
//surface (heater)
box{
<-50,-surface,-20>
<50,-50,20 >
pigment {
color Blue }
finish {
ambient 0.3 }
}
light_source
{ <0,0,0>, 1
looks_like {
plane {
z, 1000
pigment {
color White }
finish {
ambient 1000 }
} }}
camera {
location -10*y- 1000*z
direction 50*z
up y
right 4/3*x
}
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|