POV-Ray : Newsgroups : povray.text.scene-files : winlogo Server Time
17 May 2024 08:17:37 EDT (-0400)
  winlogo (Message 1 to 7 of 7)  
From: Piotr 'utak3r' Borys
Subject: winlogo
Date: 29 Mar 2006 16:45:30
Message: <442afffa$1@news.povray.org>
Hi all,

I'm a rather newbie in povray so... ;)

Here's some scene with simple winlogo. It's in two versions to render: 
one with metallic textures and one with glass. The first one renders in 
a few minutes :) and the second one in a few hours... Is there a way to 
make it a little bit faster?
The biggest problem I had with textures was the environment - I've 
chosen some bitmap which had to act as an environment for reflections. 
Every render I tried ended with strange and obvious patterns on the 
surfaces :[ I've spent hours before I've decided to change the bitmap - 
and that was it :) Patterns gone away.
Then with the glassy version I had problems with the transmission 
colours I wanted to achieve, I tried zillions of 
fade_distance/fade_power combinations ;) in addition, I've suddenly 
after next few hours I discovered that the very strong influence on that 
has the roughness parameter. And thus I've found the proper values :)
The objects itself are isosurfaces. For the first time I've built them 
from an extruded surface and wanted to make them have rounded edges... 
but had no idea how to make for example f_rounded_box bended with sin(x) 
function - one question on p.newusers and I know it already :) btw, is 
there a really good tutorial on all those substitutions and so on with 
isosurfaces? I'd really like to learn it thoroughly...

After making it looking good, I wanted to put some photons. Never 
succeeded to make it good :( Any good tutorial somewhere?

OK, so here it goes, the scene itself:

// Persistence of Vision Ray Tracer Scene Description File
// File: MSWindows.pov
// Vers: 3.6
// Desc: MS Windows logo variation
// Date: 2006-03-23
// Auth: Piotr Borys
//
// +AM2 +A0.3 +R2 +FN +UA
//


#version 3.6;

#include "functions.inc"
#include "rad_def.inc"

#declare Photons   = off;
#declare Radiosity = on;
#declare Glass     = off;

global_settings {
   max_trace_level 16
   #if (Radiosity)
   radiosity {
     Rad_Settings(Radiosity_Normal, off, off)
   }
   #end
   #if (Photons)
     photons {
       spacing 0.01
       autostop 0
     }

   #end
}

// --------------------------------------------------------------------

camera {
   right x*image_width/image_height
   location  <0.6, 1, -1>*5
   look_at   <-0.25, 0.2, 0>
   angle 50
}

light_source {
   <8, 16, -4>
   color rgb 1.2
   spotlight
   radius 50
   falloff 70
   tightness 10
   point_at <0, 0, 0>
   area_light
   <1.8, 0, 0> <0, 0, 1.8>
   6, 6
   adaptive 1
   #if (Photons)
   photons {
     refraction on
     reflection on
   }
   #end
}

light_source {
   <-10, 2, -10>
   color <0.7, 0.8, 0.9>*0.5
}

// --------------------------------------------------------------------

sphere {
   <0, 0, 0> 20
   texture {
     pigment {
       image_map {
         jpeg "../lighting/lighting-04.jpg"
         map_type 1
       }
     }
     finish {
       ambient 0.3
       diffuse 0.9
       specular 0.0
       roughness 0.01
     }
   }
   #if (Photons)
   photons {
     collect off
   }
   #end
   hollow
}

plane {
   y, 0
   texture {
     pigment {
       color rgb <0.7, 0.8, 0.9>
     }
     finish {
       ambient 0.1
       diffuse 0.7
       specular 0.15
       roughness 0.001
     }
   }
}


// --------------------------------------------------------------------

#declare T_Chrome =
texture {
     pigment { rgb <0.2, 0.2, 0.2> }
     finish {
       metallic
       ambient 0.1
       diffuse 0.6
       specular 0.9
       roughness 0.01
       reflection {
         0.35, 1.0
         fresnel on
       }
       conserve_energy
       brilliance 1.5
     }
}

#declare T_Glass =
   texture {
     pigment {rgbt 1}
     finish {
       ambient 0.0
       diffuse 0.0
       specular 0.8
       roughness 0.0005
       reflection {
         0.4, 1.0
         fresnel on
       }
       conserve_energy
     }
   }

#declare I_Glass =
   interior {
     ior 1.5
     fade_power 8
     fade_distance 0.02
     fade_color <0.7, 0.8, 0.9>
   }

#declare M_RGlass =
material {
   texture { T_Glass }
   interior {
     I_Glass
     fade_color <1.0, 0.0, 0.0>
   }
}

#declare M_GGlass =
material {
   texture { T_Glass }
   interior {
     I_Glass
     fade_color <0.0, 1.0, 0.0>
   }
}

#declare M_BGlass =
material {
   texture { T_Glass }
   interior {
     I_Glass
     fade_color <0.0, 0.0, 1.0>
   }
}

#declare M_YGlass =
material {
   texture { T_Glass }
   interior {
     I_Glass
     fade_color <1.0, 1.0, 0.0>
   }
}
 

// --------------------------------------------------------------------

#declare Thickness = 0.07;
#declare WaveHeight = 0.15;
#declare Roundness = 0.1;

#declare wave_box =
isosurface {
    function { f_rounded_box(x, (y - sin(x*pi)*WaveHeight), z, 
Roundness, 1, Thickness, 1) }
    contained_by { box { <-1,-0.5,-1>, < 1, 0.5, 1> } }
    max_gradient 1.1
}


isosurface {
   wave_box
   #if (Glass)
   material { M_YGlass }
   #else
   texture {
     T_Chrome
     pigment { rgb <0.5, 0.5, 0.0> }
   }
   #end
   #if (Photons)
   photons {
     target
     reflection on
     refraction on
     //collect off
   }
   #end
   translate <1.1, 1.0, -1.1>
}

isosurface {
   wave_box
   #if (Glass)
   material { M_BGlass }
   #else
   texture {
     T_Chrome
     pigment { rgb <0.0, 0.0, 0.5> }
   }
   #end
   #if (Photons)
   photons {
     target
     reflection on
     refraction on
     //collect off
   }
   #end
   translate <-1.1, 1.0, -1.1>
}

isosurface {
   wave_box
   #if (Glass)
   material { M_GGlass }
   #else
   texture {
     T_Chrome
     pigment { rgb <0.0, 0.5, 0.0> }
   }
   #end
   #if (Photons)
   photons {
     target
     reflection on
     refraction on
     //collect off
   }
   #end
   translate <1.1, 1.0, 1.1>
}

isosurface {
   wave_box
   #if (Glass)
   material { M_RGlass }
   #else
   texture {
     T_Chrome
     pigment { rgb <0.5, 0.0, 0.0> }
   }
   #end
   #if (Photons)
   photons {
     target
     reflection on
     refraction on
     //collect off
   }
   #end
   translate <-1.1, 1.0, 1.1>
}


Post a reply to this message

From: Roman Reiner
Subject: Re: winlogo
Date: 29 Mar 2006 17:15:01
Message: <web.442b0566db0e0e3376d9909d0@news.povray.org>
I have to confess that i had just a rough look into your source and i hand
the questions on to more sophisticated (and less tired ;)) users. One thing
that catched my eye looking at your image was that your arealight could use
jitter. with jitter you should even be able to lower the grid size of your
arealight to only 2x2 or 3x3 with equal (or still even better) results. in
addition this should speed up the rendering quite a lot.

Hope that helpes!
Regards Roman


Post a reply to this message

From: Bob H
Subject: Re: winlogo
Date: 29 Mar 2006 20:29:18
Message: <442b346e$1@news.povray.org>
Hiya Piotr.

Gave it to POV-Ray here to render and I only saw a 3X change in render times 
for the chrome and glass. I'm not sure what to suggest then, because that 
seems about right for glass objects.

Something I wanted to point out about your global_settings is that you 
aren't using assumed_gamma, something that has often been discussed in the 
past, so you might want to check into that. Using assumed_gamma 1 is said to 
be correct (unlike version 3.7 beta where that has now changed).

And for radiosity it is common practice to use ambient_light 0 to squelch 
the effect of ambience and apply to the diffuse of textures.

One other thing I noticed, your chrome has fresnel reflection but that's 
applied based on ior (refraction), yet it hasn't any refraction; although, 
you may add that if you wish.

-- 
Bob H  www.3digitaleyes.com
http://3digitaleyes.com/imagery/


Post a reply to this message

From: Kenneth
Subject: Re: winlogo
Date: 31 Mar 2006 12:20:00
Message: <web.442d647cdb0e0e3376e868250@news.povray.org>
Piotr 'utak3r' Borys <pio### [at] gmailcom> wrote:
> Hi all,
>
> I'm a rather newbie in povray so... ;)
>

> ...btw, is
> there a really good tutorial on all those substitutions and so on with
> isosurfaces? I'd really like to learn it thoroughly...
>

Hi, Piotr!

Take a look at Friedrich Lohmueller's *excellent* series of tutorials and
#include files, for all things POV, at

http://www.f-lohmueller.de/pov_tut/pov__eng.htm

Ken


Post a reply to this message

From: Piotr 'utak3r' Borys
Subject: Re: winlogo
Date: 13 Apr 2006 10:21:27
Message: <443e5e67$1@news.povray.org>
Hi Kenneth,

> Take a look at Friedrich Lohmueller's *excellent* series of tutorials and
> #include files, for all things POV, at
> 
> http://www.f-lohmueller.de/pov_tut/pov__eng.htm

Wow, great link, thanks :))

-- 
Piotr


Post a reply to this message

From: Piotr 'utak3r' Borys
Subject: Re: winlogo
Date: 13 Apr 2006 10:28:50
Message: <443e6022@news.povray.org>
Hi Bob,

> Gave it to POV-Ray here to render and I only saw a 3X change in render times 
> for the chrome and glass. I'm not sure what to suggest then, because that 
> seems about right for glass objects.

Huh?... hmm, my Athlon64 3000+ chokes on this... will have to 
investigate that.

> Something I wanted to point out about your global_settings is that you 
> aren't using assumed_gamma, something that has often been discussed in the 
> past, so you might want to check into that. Using assumed_gamma 1 is said to 
> be correct (unlike version 3.7 beta where that has now changed).

I was always adding assumed_gamma, but this time I was rendering it with 
3.7 beta :)

> And for radiosity it is common practice to use ambient_light 0 to squelch 
> the effect of ambience and apply to the diffuse of textures.

Och, I forgot that... I'm using radiosity for a short period of time. 
Indeed, it'd be better.

> One other thing I noticed, your chrome has fresnel reflection but that's 
> applied based on ior (refraction), yet it hasn't any refraction; although, 
> you may add that if you wish.

O, have to check it out... :) thanks!

-- 
cheers,
Piotr


Post a reply to this message

From: Piotr 'utak3r' Borys
Subject: Re: winlogo
Date: 13 Apr 2006 10:30:04
Message: <443e606c$1@news.povray.org>
Hi Roman,

> that catched my eye looking at your image was that your arealight could use
> jitter. with jitter you should even be able to lower the grid size of your
> arealight to only 2x2 or 3x3 with equal (or still even better) results. in
> addition this should speed up the rendering quite a lot.

Yeah, you're right. With those current settings I have shadow-banding :/
Thanks!
-- 
cheers
Piotr


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.