POV-Ray : Newsgroups : povray.general : Use uniform texture : Re: Use uniform texture Server Time
11 Aug 2022 04:00:21 EDT (-0400)
  Re: Use uniform texture  
From: Alain
Date: 1 Jun 2012 20:30:31
Message: <4fc95ea7@news.povray.org>

> Alain<kua### [at] videotronca>  wrote:

>>> Hi All,
>>> I have one question. Assume I have a union of several objects (each with its own
>>> texture). Is it possible to disable these textures without using #if statements
>>> and apply another texture X for the union (like pigment{Red}) ?
>>> Thank you very much!
>> Any texture applied to a given object always override any texture
>> applied to the union.
>> You can comment out some textures.
>> You can use some #if statement to conditionaly disable any texture.
>> You can use the quick_color feature and use a lower quality setting.
>> For that, you add quick_color Some_Pigment at the end of the texture
>> block or after the pigment statement, and reduce the quality to a value
>> of 5 or less.
>> You can set the quality by using +qn on the command line like +q5.
>> Alain
> I have tried disabling all the possible textures conditionally and then having a
> object representing the union of all the other objects that make the scene.
> #declare allObjects = union {
> ....
> }
> object {
>    allObjects
>    pigment {Red}
>    finish {ambient 1 diffuse 0}
>   }
> However, this yields to such a picture:
> http://s17.postimage.org/j30sg07a7/1st_pass.png
> As you can see some parts are black, while the white part is this way probably
> because it's infinity. I really cannot understand what textures I have not
> disabled that yield to such a picture. In fact, when I look at the those
> specific objects there's nothing wrong to me.
> I am using MegaPov (I got used to it since I've a Mac) and I am afraid I cannot
> set the quality parameter up.

The default quality level is +q9. I proposed to LOWER the quality to +q5 
or LOWER. You can set it by using an ini file or a command line parameter.
The quality setting should work using megapov.

> Also, I don't get why a pigment/texture applied to all the union does not
> overwrite all the other pigments/textures.

megapov is an experimental build used to test features fefore it could 
be envisaged to include them in POV-Ray.

Any scene made with any version of megapov may no longer work as 
expected with the next version, and often get totaly broken if you try 
to render them on the official version.

You realy don't need megapov on a Mac, there is an official Mac version 
for 3.6.1 and an approved unofficial version of 3.7RC5.
There have been regular Mac builds for a realy LONG time, think version 

Why a texture applied to a CSG object don't override that of it's 
constituent objects:
That's to enable to have a general texture applied to a complex object 
while permiting specific elements to have their own texture, or even 
some totaly different full material.

If the overall texture did override that of the components, you'd be 
stuck needing to always apply your identical texture to every single 
component every time you only need any component to have a different 
texture than the whole CSG, or always only having a single texture for 
your object. It makes the whole description of the object much clearer 
with the additional bonus of reducing the memory useage.


Post a reply to this message

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