|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Hi,
if I have an object with already have some texture, how can I discard all
texture settings from it (strip texture), and apply a new texture to it?
Example:
#declare obj =
union {
sphere { -x 1 pigment { rgb x } } // ((B))
sphere { +x 1 pigment { rgb y } } // ((C))
sphere { +y 1 } sphere { -z .1 }
pigment { rgb .5 }
scale 100 rotate y*30
translate y*100
}
object {
obj
pigment { rgb 1 } // ((A))
}
and I would like the object to be entire white - rgb 1. Currently the line
((A)) do not change red and green texture in ((B)) and ((C))
Rest part of minimal example scene:
plane { y,0 pigment { rgbf .8 } finish { diffuse 0 ambient 1 } no_shadow }
camera { location <100,70,-500>*1.3 look_at y*50 }
light_source { <1000,0,-15000> rgb 1 }
light_source { <1000,1000,-150> rgb 1 }
--
http://www.raf256.com/3d/
Rafal Maj 'Raf256', home page - http://www.raf256.com/me/
Computer Graphics
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Rafal 'Raf256' Maj wrote:
> Hi,
> if I have an object with already have some texture, how can I discard all
> texture settings from it (strip texture), and apply a new texture to it?
>
> Example:
>
>
> #declare obj =
> union {
> sphere { -x 1 pigment { rgb x } } // ((B))
> sphere { +x 1 pigment { rgb y } } // ((C))
> sphere { +y 1 } sphere { -z .1 }
> pigment { rgb .5 }
> scale 100 rotate y*30
> translate y*100
> }
>
> object {
> obj
> pigment { rgb 1 } // ((A))
> }
>
The most locally applied texture always overrides the more generally
applied one (not vice versa). In your example even if you removed the
pigments to spheres in B and C the pigment ( rgb .5 ) in the union
block would still override A in the object block.
But the intention of your question is not clear. What do you want to do
exactly, avoid the manual editing in the spheres? Are you changing the
texture during an animation? You could use the clock value to adjust
the texture or actually wrap the objects in a macro and pass the texture
that way I suppose.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
jrc### [at] msncom news:41e0d11e@news.povray.org
> But the intention of your question is not clear. What do you want to do
> exactly, avoid the manual editing in the spheres? Are you changing the
> texture during an animation? You could use the clock value to adjust
> the texture or actually wrap the objects in a macro and pass the texture
> that way I suppose.
>
I have a complicated object, for example - imported via Polyray. I have to
render it with several varsion, in few of them - giving entire object some
special texture in example pure white. DOing it manualy (changing all
texture{} into #if(...) texture{} #else pigment{rgb 1} #end) would be very
uncomfortable.
So there is no ready thing to make that?
I quess it would be possible to write a path, that will walk tree of a
given object and change every texture?
--
http://www.raf256.com/3d/
Rafal Maj 'Raf256', home page - http://www.raf256.com/me/
Computer Graphics
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Rafal 'Raf256' Maj wrote:
> jrc### [at] msncom news:41e0d11e@news.povray.org
>
>
>>But the intention of your question is not clear. What do you want to do
>>exactly, avoid the manual editing in the spheres? Are you changing the
>>texture during an animation? You could use the clock value to adjust
>>the texture or actually wrap the objects in a macro and pass the texture
>>that way I suppose.
>>
>
>
> I have a complicated object, for example - imported via Polyray. I have to
> render it with several varsion, in few of them - giving entire object some
> special texture in example pure white. DOing it manualy (changing all
> texture{} into #if(...) texture{} #else pigment{rgb 1} #end) would be very
> uncomfortable.
>
> So there is no ready thing to make that?
>
> I quess it would be possible to write a path, that will walk tree of a
> given object and change every texture?
>
can you give the textures names before you import?
then you can assign different colors dynamically
ie
in one place
#declare Name1 = rgb Green;
#declare Name2 = rgb Blue;
#declare Name3 = rgb Cyan;
then in another place
#declare Name1 = rgb White;
#declare Name2 = rgb White;
#declare Name3 = rgb White;
this is only solution I can suggest if you
need the granularity in one place but not
in another.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Rafal 'Raf256' Maj <spa### [at] raf256com> wrote:
> if I have an object with already have some texture, how can I discard all
> texture settings from it (strip texture), and apply a new texture to it?
You can't.
--
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}// - Warp -
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |