|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Hi,
I have created a wine glass, complete with wine in it. The problem is that
the "shadow" did not look right. When I rotated the glass, it became clear
that there was a large amount of "noise" slicing through the glass (near
the top).
Here is a link to the picture of my "dud wine glass".
http://www.complus.co.nz/blogpics/dudglass.jpg"
The code I used is below:
---
#include "colors.inc"
#include "glass.inc"
camera {
location <10, 15, -20>
look_at <0, 0, 0>
angle 50
}
background { color Silver }
light_source {
0*x // light's position (translated below)
color rgb <1,1,1> // light's color
translate <50, 50, -30>
}
plane {
<0, 1, 0>, -4
pigment {color LightBlue }
finish{reflection .2}
}
#declare Wine_Glass=
//Wine Glass
sor {
12,
<0.0, -0.5>,
<2.0, 0.1>,
<0.2, 0.15>,
<0.2, 0.18>,
<0.2, 1.0>,
<0.2, 2.0>,
<0.2, 3.0>,
<0.2, 4.0>,
<0.4, 4.4>,
<2.0, 6.0>,
<1.5, 8.5>,
<2, 10.0>
open
texture {
T_Glass3 // Pre-defined from glass.inc
scale 3 }
}
#declare Red_Wine=
union
{
object { Wine_Glass
finish {reflection 0.2}
}
intersection
{object {Wine_Glass
scale .999
translate <0, 0.001, 0>
pigment {color White}
}
difference{
plane {y,7}
plane {y,4.5}
}
}
}
object {Red_Wine
translate <0, -2, 0>
rotate <30, 0, -30>
}
---
So, where have I done wrong???? Its making me nuts.
Thanks in advance for any help.
Dzeni :)
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"nzdzeni" <nzd### [at] gmailcom> wrote:
> Hi,
>
> I have created a wine glass, complete with wine in it. The problem is that
> the "shadow" did not look right. When I rotated the glass, it became clear
> that there was a large amount of "noise" slicing through the glass (near
> the top).
>
> Here is a link to the picture of my "dud wine glass".
> http://www.complus.co.nz/blogpics/dudglass.jpg"
>
> The code I used is below:
>
> object { Wine_Glass
> finish {reflection 0.2}
> }
>
> intersection
>
> {object {Wine_Glass
> scale .999
> translate <0, 0.001, 0>
> pigment {color White}
> }
>
> difference{
> plane {y,7}
> plane {y,4.5}
> }
> }
> }
>
I've just had a quick look, but I'm pretty sure that these planes are the
source of the problem. Remember that POV planes fill half the universe. You
need to have one normal pointing up, one pointing down.
See 2.2.2.4 in the 3.6 docs
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
nzdzeni <nzd### [at] gmailcom> wrote:
> When I rotated the glass, it became clear
> that there was a large amount of "noise" slicing through the glass (near
> the top).
At least the noise goes away by adding "sturm" to the sor.
--
- Warp
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Hi Warp,
Thanks for the sturm tip. It gets rid of the noise beautifully but the
shadow of the glass is still wrong. This bothers me a lot as the shadow
should match the image that casts it.
PM 2,
I commented out the planes to see if that would get rid of the noise and
interstingly, it didn't! Which would imply that the planes are not the
problem.
So, that leaves me still looking for answers to the noise / dodgy shadow
problem.
Thanks for all the input so far.
G-d Bless
Dzeni :)
http://www.dzeni.blogspot.com
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
nzdzeni <nzd### [at] gmailcom> wrote:
> Thanks for the sturm tip. It gets rid of the noise beautifully but the
> shadow of the glass is still wrong. This bothers me a lot as the shadow
> should match the image that casts it.
Well, that shadow isn't physically accurate anyways. If you want
something more close to reality you'll have to use photons.
OTOH your glass isn't physically correct either (and because of this
simply adding photons won't get a correct result): It's made of
solid glass (the "open" keyword doesn't really change this). A real-life
glass has an outer and an inner surface.
The best way to model a wineglass is using a lathe instead of a sor,
and model the inner surface too.
--
- Warp
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"nzdzeni" <nzd### [at] gmailcom> wrote in message
news:web.4395545b90f42f19b2fe0630@news.povray.org...
> Hi Warp,
>
> Thanks for the sturm tip. It gets rid of the noise beautifully but the
> shadow of the glass is still wrong. This bothers me a lot as the shadow
> should match the image that casts it.
>
> PM 2,
>
> I commented out the planes to see if that would get rid of the noise and
> interstingly, it didn't! Which would imply that the planes are not the
> problem.
>
> So, that leaves me still looking for answers to the noise / dodgy shadow
> problem.
>
> Thanks for all the input so far.
>
> G-d Bless
> Dzeni :)
> http://www.dzeni.blogspot.com
>
>
As well as what Warp said, there are also quite a few other things wrong
with your SDL, some of which also distort the shadows.
Your texture and pigment definitions seem to me to be in the wrong places,
so the texture definition of the glass is applied on top of the White
pigment you seem to want for the content. The planes used to slice off the
top and bottom of the content don't have any pigment, so will be black.
Also the scaling that you use for the content w.r.t. the glass is not
centred on the origin so will move the content down a little, with the
danger of giving you coincident or overlaping surfaces.
The message stream shows a max_trace_level reached warning and another about
the glass texture you've chosen.
The following SDL shows where I would put the pigment and texture
statements, and I think it probably gets over quite a few of your shadow
problems:
Regards,
Chris B.
#include "colors.inc"
#include "glass.inc"
camera {
location <0, 8, -20>
look_at <0, 0, 0>
angle 50
}
background { color Silver }
light_source {
0*x // light's position (translated below)
color rgb <1,1,1> // light's color
translate <50, 50, -30>
}
plane {
<0, 1, 0>, -4
pigment {color LightBlue }
finish{reflection .2}
}
//Wine Glass
#declare Wine_Glass= sor {
12,
<0.0, -0.5>,
<2.0, 0.1>,
<0.2, 0.15>,
<0.2, 0.18>,
<0.2, 1.0>,
<0.2, 2.0>,
<0.2, 3.0>,
<0.2, 4.0>,
<0.4, 4.4>,
<2.0, 6.0>,
<1.5, 8.5>,
<2, 10.0>
open
sturm
}
#declare Red_Wine = intersection {
object {Wine_Glass
translate -7*y
scale .9
translate 7*y
translate <0, 0.001, 0>
}
plane {-y,-4.5}
plane { y, 0 rotate z*30 rotate -x*30 translate 7*y} // or plane {y,7}
pigment {color Red+0.5*t}
}
object {Red_Wine
translate <0, -2, 0>
rotate <30, 0, -30>
}
object {Wine_Glass
texture {
T_Glass3 // Pre-defined from glass.inc
scale 3
}
translate <0, -2, 0>
rotate <30, 0, -30>
}
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"nzdzeni" <nzd### [at] gmailcom> wrote:
> PM 2,
>
> I commented out the planes to see if that would get rid of the noise and
> interstingly, it didn't! Which would imply that the planes are not the
> problem.
Sorry about that! Still, those planes did need fixing. :)
By way of apology, here is something I derived from what Chris B posted. I
hope you like it.
//-----------------------------------------------------------------------------
/*
Less dodgy wine glass
Derived From: Chris B
Subject: Re: Dodgy Wine Glass
Date: 6 Dec 2005 12:19:07
Message: <439581bb$1@news.povray.org>
PM 2Ring
*/
#include "colors.inc"
#include "glass.inc"
#declare Photons = 1;
#declare Area_Lights = 1;
#declare Use_Sturm = 1;
global_settings {
assumed_gamma 2.2 //because of glass.inc
max_trace_level 10
#if(Photons)
photons {
count 250000
autostop 0
}
#end
}
camera {
location <0, 2, -2> * 10 * .85
//location <0, .5, -2> * 10 * .65
look_at 3.25*y
angle 50
}
#if(0)
sky_sphere{pigment{function{abs(y)}}}
#else
background {color Silver}
#end
#declare Spot = 0.75;
light_source {
<-5, 6, -3>*25
//rgb 1
rgb 640 fade_distance 6.25 fade_power 2
spotlight point_at 8*z falloff 8*Spot radius 5*Spot tightness 0.1*Spot
#if(Area_Lights)
#declare AL = 5;
#declare ASize = 2.5;
area_light x*ASize, z*ASize, AL, AL
adaptive 1
jitter
circular
orient
#end
}
#declare Floor =
plane {
y, -1e-4
texture{
pigment {cells colour_map{[0 White][0.25 SkyBlue][1 White]}}
//pigment {color LightBlue }
pigment {checker SkyBlue, White}
//pigment {checker rgb <1,.8,.9>, White}
finish{reflection .25 diffuse 0.75 specular 0.25 roughness 1e-4}
//finish{diffuse .9}
//normal{quilted .25 control0 0 control1 0}
//normal{wrinkles .15 scale 3e-5}
translate z
scale 10
rotate y*45
}
}
//Wine Glass
#declare WGS = 10;
#declare WGA = array[WGS] //SOR points
{
<0.0, 0.4>,
<2.0, 1.0>,
<0.2, 1.05>,
<0.2, 1.08>,
<0.2, 1.9>,
<0.2, 4.9>,
<0.4, 5.3>,
<2.0, 6.9>,
<1.5, 9.4>,
< 2, 10.9>
}
#declare Wine_Glass_Outer = sor {
#declare I=0;
WGS,
#while(I<WGS)
WGA[I]
#declare I=I+1;
#end
#if(Use_Sturm) sturm #end
//pigment{checker}
}
#declare TH = 0.025; //thickness (sort-of)
#declare Wine_Glass_Inner = sor {
#declare I=5;
WGS-I,
#while(I<WGS)
WGA[I] + <-TH, TH*1e-4> //move inwards, and up a tiny bit
#declare I=I+1;
#end
#if(Use_Sturm) sturm #end
//pigment{checker Red,Yellow}finish{ambient .5}
}
#declare Wine = intersection
{
plane {y, 8.5}
sor {
#declare I=5;
WGS-I,
#while(I<WGS)
WGA[I] + <-TH-1e-4, TH*2e-4> //move inwards, and up a tiny bit
more
#declare I=I+1;
#end
#if(Use_Sturm) sturm #end
}
texture {
pigment{Red filter .6 transmit .4}
finish{ambient 0 diffuse 0.2 reflection {0,1 fresnel} conserve_energy}
}
interior{ior 1.35}
photons {
target
refraction on
reflection on
collect off
}
}
#declare Wine_Glass = difference {
object{Wine_Glass_Outer}
object{Wine_Glass_Inner}
texture {T_Glass3}
interior{ior 1.5}
photons {
target
refraction on
reflection on
collect off
}
}
//---The
scene--------------------------------------------------------------------------
union{
object{Wine_Glass}
object{Wine}
translate <0, -1, 1>
//rotate x*-45
}
object{Floor}
//-----------------------------------------------------------------------------
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
PM2, amazing effort!!
The finished glass looks great :)
I have a long way to go before I reach your degree of sophistication but it
is great to see that such graphics are possible.
Thanks for the time and effort that you (and Chris) have put into this
problem.
G-d Bless
Jenni :)
http://www.dzeni.blogspot.com
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"nzdzeni" <nzd### [at] gmailcom> wrote:
> PM2, amazing effort!!
>
> The finished glass looks great :)
Thanks!
> I have a long way to go before I reach your degree of sophistication but it
> is great to see that such graphics are possible.
>
> Thanks for the time and effort that you (and Chris) have put into this
> problem.
Aw shucks, t'weren't nuthin' :)
Over the weekend, I'm going to convert the glass to using a lathe instead of
sor. Differences can be *very* slow.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|