POV-Ray : Newsgroups : povray.binaries.images : Don't neglect your chrome sphere! Server Time
5 Nov 2024 20:20:41 EST (-0500)
  Don't neglect your chrome sphere! (Message 1 to 6 of 6)  
From: Cousin Ricky
Subject: Don't neglect your chrome sphere!
Date: 15 Dec 2022 17:33:55
Message: <639ba0d3@news.povray.org>
This is my latest update to a rusted chrome sphere I first created in
2004; a 2006 update is posted at:
https://news.povray.org/web.523a47261b23139d306548240@news.povray.org

I took Thomas' advice in that thread and updated the texture normal.
The change quadrupled the render time.

Here is the texture used on the sphere.  Note that the final texture
adds an additional turbulence to the rust texture.

----------[BEGIN CODE EXCERPT]---------
#include "rc3metal.inc" // https://github.com/CousinRicky/POV-RC3Metal

#declare c_Chrome = rgb <0.50, 0.51, 0.55>;
#declare c_Rust1 = rgb <0.17, 0.07, 0.06>;
#declare c_Rust2 = rgb <0.30, 0.10, 0.04>;
#declare c_Rust3 = rgb <0.60, 0.24, 0.03>;

#declare RC3M_Diffuse = [your #default diffuse value];
#declare RC3M_Ambient = [your #default ambient value];
RC3Metal_Set_highlight (0)
#declare t_Chrome = RC3Metal_Texture (c_Chrome, 1.0, 0.5)
#declare t_Buckled_chrome = texture
{ RC3Metal (c_Chrome, 0.5, 0.5)
  normal { bumps 0.3 scale 0.1 }
}
#declare t_Rust = texture
{ pigment
  { bozo color_map
    { [0.00 c_Rust1]
      [0.20 c_Rust1]
      [0.62 c_Rust2]
      [0.72 c_Rust3]
      [1.00 c_Rust3]
    }
    scale 0.18
  }
  normal
  { agate 0.8
    warp { turbulence 0.5 octaves 3 lambda 3 omega 0.9 }
  }
}
#declare t_Rusted_chrome = texture
{ bozo texture_map
  { [0.43 t_Chrome]
    [0.53 t_Buckled_chrome]
    [0.53 t_Rust]
  }
  turbulence 0.7
  scale 0.2
}
-----------[END CODE EXCERPT]----------


Post a reply to this message


Attachments:
Download 'rusty_ball-2022-1080.jpg' (388 KB)

Preview of image 'rusty_ball-2022-1080.jpg'
rusty_ball-2022-1080.jpg


 

From: Cousin Ricky
Subject: Re: Don't neglect your chrome sphere!
Date: 15 Dec 2022 17:45:00
Message: <web.639ba2d06db9fd8060e0cc3d949c357d@news.povray.org>
Cousin Ricky <ric### [at] yahoocom> wrote:
>
> I took Thomas' advice in that thread and updated the texture normal.
> The change quadrupled the render time.

Actually, more than that.  Before the change I used single-pass radiosity; with
the new texture, it was taking so long that I aborted and used two-pass
radiosity.


Post a reply to this message

From: Bill Pragnell
Subject: Re: Don't neglect your chrome sphere!
Date: 18 Dec 2022 09:55:00
Message: <web.639f29246db9fd80b96893c06f35e431@news.povray.org>
I really like this, especially the wrinkled effect aound the edges of the rust
patches - it makes it look like a chromed coating flaking off rather than a
rusty metal ball.

If I had one criticism, it would be that that rust 'swirls' follow the shape of
the patches, which I'm not sure is realistic. I might have tried to make the
rust texture more finely grained, and disconnected from the patch shapes.

Bill


Post a reply to this message

From: Cousin Ricky
Subject: Re: Don't neglect your chrome sphere!
Date: 19 Dec 2022 07:50:31
Message: <63a05e17$1@news.povray.org>
On 2022-12-18 10:52 (-4), Bill Pragnell wrote:
> 
> If I had one criticism, it would be that that rust 'swirls' follow the shape of
> the patches, which I'm not sure is realistic. I might have tried to make the
> rust texture more finely grained, and disconnected from the patch shapes.

I'd love to do that, but I haven't yet worked out how to warp a texture
map without having the constituent textures warped as well.


Post a reply to this message

From: Bill Pragnell
Subject: Re: Don't neglect your chrome sphere!
Date: 19 Dec 2022 10:30:00
Message: <web.63a082626db9fd80b96893c06f35e431@news.povray.org>
Cousin Ricky <ric### [at] yahoocom> wrote:
> On 2022-12-18 10:52 (-4), Bill Pragnell wrote:
> > I might have tried to make the
> > rust texture more finely grained, and disconnected from the patch shapes.
>
> I'd love to do that, but I haven't yet worked out how to warp a texture
> map without having the constituent textures warped as well.

You could declare the chrome/buckled/rust pattern up front, then apply the
texture map at point of use. That way the warp gets applied before the map. Like
this:

#declare RustFn = function
{ pigment
  { bozo
    color_map { [0 rgb 0] [1 rgb 1] }
    turbulence 0.7
    scale 0.2
  }
}

#declare t_Rusted_chrome = texture
{ function { RustFn(x, y, z).x }
  texture_map
  { [0.43 t_Chrome]
    [0.53 t_Buckled_chrome]
    [0.53 t_Rust scale 0.1]
  }
}

(That last scale 0.1 on the rust was me trying to make it more fine-grained. Not
sure if it's any better offhand)

Bill


Post a reply to this message

From: Cousin Ricky
Subject: Re: Don't neglect your chrome sphere!
Date: 22 Dec 2022 22:33:42
Message: <63a52196@news.povray.org>
On 2022-12-19 11:25 (-4), Bill Pragnell wrote:
> Cousin Ricky <ric### [at] yahoocom> wrote:
>> On 2022-12-18 10:52 (-4), Bill Pragnell wrote:
>>> I might have tried to make the
>>> rust texture more finely grained, and disconnected from the patch shapes.
>>
>> I'd love to do that, but I haven't yet worked out how to warp a texture
>> map without having the constituent textures warped as well.
> 
> You could declare the chrome/buckled/rust pattern up front, then apply the
> texture map at point of use. That way the warp gets applied before the map. Like
> this:
> 
> #declare RustFn = function
> { pigment
>   { bozo
>     color_map { [0 rgb 0] [1 rgb 1] }
>     turbulence 0.7
>     scale 0.2
>   }
> }
> 
> [snip]

Thanks!  Here's the updated texture:

----------[BEGIN CODE EXCERPT]---------
#include "rc3metal.inc" // https://github.com/CousinRicky/POV-RC3Metal

#declare c_Chrome = rgb <0.50, 0.51, 0.55>;
#declare c_Rust1 = rgb <0.17, 0.07, 0.06>;
#declare c_Rust2 = rgb <0.30, 0.08, 0.05>;
#declare c_Rust3 = rgb <0.60, 0.22, 0.04>;

#declare RC3M_Diffuse = [your #default diffuse value];
#declare RC3M_Ambient = [your #default ambient value];
RC3Metal_Set_highlight (0)
#declare t_Chrome = RC3Metal_Texture (c_Chrome, 1.0, 0.5)
#declare t_Buckled_chrome = texture
{ RC3Metal (c_Chrome, 0.5, 0.5)
  normal { bumps 0.3 scale 0.1 }
}
#declare t_Rust = texture
{ pigment
  { bozo color_map
  }
  normal
  { agate 0.8
    warp { turbulence 0.5 octaves 4 lambda 2.7 omega 0.9 }
    scale 0.8
  }
}
#declare t_Chrome_transition = texture
{ bozo texture_map
  { [0.43 t_Chrome]
    [0.53 t_Buckled_chrome]
  }
  warp { turbulence 0.7 }
}
#declare fn_Rust = function
{ pigment
  { bozo
    color_map { [0 rgb 0] [1 rgb 1] }
    warp { turbulence 0.7 }
  }
}
#declare t_Rusted_chrome = texture
{ function { fn_Rust (x, y, z).x }
  texture_map
  { [0.53 t_Chrome_transition]
    [0.53 t_Rust]
  }
  scale 0.2
}
-----------[END CODE EXCERPT]----------


Post a reply to this message


Attachments:
Download 'rusty_ball-2022-1080.jpg' (378 KB)

Preview of image 'rusty_ball-2022-1080.jpg'
rusty_ball-2022-1080.jpg


 

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