POV-Ray : Newsgroups : povray.newusers : Finishes on blobs Server Time
1 Nov 2024 21:21:36 EDT (-0400)
  Finishes on blobs (Message 1 to 4 of 4)  
From: Amazon Warrior
Subject: Finishes on blobs
Date: 21 Dec 2004 14:58:54
Message: <41c8807e@news.povray.org>
Evening all!
 I'm a very new user of POVray, and am just dabbling in a bit of blob object
generation.  However, I seem to have run into a problem.  I can make bits of
my blob object different colours (by applying them to the induvidual
components of the blob object), but when I try to apply a finish to the
whole object, nothing seems to happen.  I've tried specifying my own finish
properties, and also using those in the finish.inc file, but nothing seems
to work.  Anyone have any advice?  I'd really like to crack this as I want
to use blob objects in an animation!  A copy of my experimentation is pasted
below:

#include "colors.inc"
#include "finish.inc"
camera {
 location <0,0,-20>
 look_at <0,0,0>
}
light_source { <100,100,-100> colour White }
background { Gray50 }
plane { y, -4 pigment { checker colour White colour Pink } finish {
Shiny } }

blob {
 threshold 0.65
 sphere {
  <0,0,0>, 3, 1
  pigment { rgb<0,0,1> }
 }
 cylinder {
  <0,3,0>, <0,-3,0>, 3, 1
  pigment { rgb<1,0,0> }
  scale <1.3,0,0.5>
 }
 finish { Mirror }
}


Post a reply to this message

From: stm31415
Subject: Re: Finishes on blobs
Date: 21 Dec 2004 15:25:00
Message: <web.41c88588959ceca6101b172d0@news.povray.org>
>
> blob {
>  threshold 0.65
>  sphere {
>   <0,0,0>, 3, 1
>   pigment { rgb<0,0,1> }
>  }
>  cylinder {
>   <0,3,0>, <0,-3,0>, 3, 1
>   pigment { rgb<1,0,0> }
>   scale <1.3,0,0.5>
>  }
>  finish { Mirror }
> }

As far as I understand it, you can't do it qute this way; you are implying a
full texture definition (including a finish) by using the pigment{} block.
If you put the finish in both sections it works:

> blob {
>  threshold 0.65
>  sphere {
>   <0,0,0>, 3, 1
>   pigment { rgb<0,0,1> }
>  finish { Mirror }   <-----------------Like this
>  }
>  cylinder {
>   <0,3,0>, <0,-3,0>, 3, 1
>   pigment { rgb<1,0,0> }
>  finish { Mirror }  <------------------and this.
>   scale <1.3,0,0.5>
>  }
> }

Or by getting rid of the pigment definitions. The texture you are using
there will not have any pigment showing anyway, as all the light is
reflected perfectly.

-S
5TF!


Post a reply to this message

From: Mike Williams
Subject: Re: Finishes on blobs
Date: 21 Dec 2004 15:36:57
Message: <lPqa8HAclIyBFwLW@econym.demon.co.uk>
Wasn't it Amazon_Warrior who wrote:
>Evening all!
> I'm a very new user of POVray, and am just dabbling in a bit of blob object
>generation.  However, I seem to have run into a problem.  I can make bits of
>my blob object different colours (by applying them to the induvidual
>components of the blob object), but when I try to apply a finish to the
>whole object, nothing seems to happen.  I've tried specifying my own finish
>properties, and also using those in the finish.inc file, but nothing seems
>to work.  Anyone have any advice?  I'd really like to crack this as I want
>to use blob objects in an animation!  A copy of my experimentation is pasted
>below:

It's my understanding that you can EITHER have textures on the
individual blob components OR have a texture on the whole blob, but you
can't have some of each. It doesn't work like CSG operations where bits
of the parent object texture propagates down to the components that
don't have their own texture information.

What you could do is change the default finish before creating the blob,
like this:

   default {finish {Mirror}}

If necessary, restore the normal defaults after you've created the blob,
like this:

   default {finish {ambient 0 diffuse 0.6 reflection 0}}

This is exactly equivalent to writing "finish {Mirror}" on each blob
component.

-- 
Mike Williams
Gentleman of Leisure


Post a reply to this message

From: Amazon Warrior
Subject: Re: Finishes on blobs
Date: 21 Dec 2004 18:25:38
Message: <41c8b0f2$1@news.povray.org>
Gotcha.  Thanks for the rapid responses! :)  (BTW I did know about the
mirror thing, it just happened to be my last effort...  I figured that
something was definately out if I didn't notice any change with that
particular finish applied!)

At least I know now.  Sorry for troubling people with such a silly
question...


"Mike Williams" <nos### [at] econymdemoncouk> wrote in message
news:lPq### [at] econymdemoncouk...
> Wasn't it Amazon_Warrior who wrote:
> >Evening all!
> > I'm a very new user of POVray, and am just dabbling in a bit of blob
object
> >generation.  However, I seem to have run into a problem.  I can make bits
of
> >my blob object different colours (by applying them to the induvidual
> >components of the blob object), but when I try to apply a finish to the
> >whole object, nothing seems to happen.  I've tried specifying my own
finish
> >properties, and also using those in the finish.inc file, but nothing
seems
> >to work.  Anyone have any advice?  I'd really like to crack this as I
want
> >to use blob objects in an animation!  A copy of my experimentation is
pasted
> >below:
>
> It's my understanding that you can EITHER have textures on the
> individual blob components OR have a texture on the whole blob, but you
> can't have some of each. It doesn't work like CSG operations where bits
> of the parent object texture propagates down to the components that
> don't have their own texture information.
>
> What you could do is change the default finish before creating the blob,
> like this:
>
>    default {finish {Mirror}}
>
> If necessary, restore the normal defaults after you've created the blob,
> like this:
>
>    default {finish {ambient 0 diffuse 0.6 reflection 0}}
>
> This is exactly equivalent to writing "finish {Mirror}" on each blob
> component.
>
> -- 
> Mike Williams
> Gentleman of Leisure


Post a reply to this message

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