POV-Ray : Newsgroups : povray.general : Use uniform texture Server Time
19 Mar 2024 03:03:17 EDT (-0400)
  Use uniform texture (Message 1 to 10 of 12)  
Goto Latest 10 Messages Next 2 Messages >>>
From: sic2
Subject: Use uniform texture
Date: 1 Jun 2012 06:00:01
Message: <web.4fc892634f065c00e32b83540@news.povray.org>
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!


Post a reply to this message

From: Alain
Subject: Re: Use uniform texture
Date: 1 Jun 2012 13:44:15
Message: <4fc8ff6f@news.povray.org>

> 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


Post a reply to this message

From: sic2
Subject: Re: Use uniform texture
Date: 1 Jun 2012 14:30:00
Message: <web.4fc909c43ed44e33ee48ba0@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.

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


Post a reply to this message

From: sic2
Subject: Re: Use uniform texture
Date: 1 Jun 2012 15:00:01
Message: <web.4fc910c83ed44e33ee48ba0@news.povray.org>
"sic2" <nomail@nomail> wrote:
> 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.
>
> Also, I don't get why a pigment/texture applied to all the union does not
> overwrite all the other pigments/textures.

In addition to my previous message.

Is it possible that some of the objects appear "black" because of their concave
shape? (some of the objects, in fact, are bowls, vases, boxes, etc).


Post a reply to this message

From: Stephen
Subject: Re: Use uniform texture
Date: 1 Jun 2012 16:37:40
Message: <4fc92814@news.povray.org>
On 01/06/2012 7:58 PM, sic2 wrote:

>> Also, I don't get why a pigment/texture applied to all the union does not
>> overwrite all the other pigments/textures.
>
It is a philosophical thing. Look at it the other way round.
You can texture the whole object using a texture in the union and 
texture individual components with their own texture.


> In addition to my previous message.
>
> Is it possible that some of the objects appear "black" because of their concave
> shape? (some of the objects, in fact, are bowls, vases, boxes, etc).
>

I would check the message window and see if there is a line that reads 
something like:

Rays:            1046865   Saved:             39883   Max Level: 5/5

The important bit is:
Max Level: 5/5
Which means that the Max_Trace_Level is set to 5 and the level has been 
reached. Try increasing it in the global_settings. For instance;
global_settings { max_intersections 25}


-- 
Regards
     Stephen


Post a reply to this message

From: clipka
Subject: Re: Use uniform texture
Date: 1 Jun 2012 17:19:51
Message: <4fc931f7$1@news.povray.org>
Am 01.06.2012 20:28, schrieb sic2:

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

Because it's a feature.

This way you can, for instance, model a car in such a way that you can 
easily change its color while leaving the windows transparent.


Post a reply to this message

From: Alain
Subject: Re: Use uniform texture
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 
2.0...

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.




Alain


Post a reply to this message

From: Alain
Subject: Re: Use uniform texture
Date: 1 Jun 2012 20:58:15
Message: <4fc96527$1@news.povray.org>

> "sic2"<nomail@nomail>  wrote:
>> 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.
>>
>> Also, I don't get why a pigment/texture applied to all the union does not
>> overwrite all the other pigments/textures.
>
> In addition to my previous message.
>
> Is it possible that some of the objects appear "black" because of their concave
> shape? (some of the objects, in fact, are bowls, vases, boxes, etc).
>
>
>

No, the shape should not bne an isue apart from some self shadowing. As 
you use ambient 1, this should not be an isue.

It looks like the "offending" objects are rather complexe compound 
objects themself? Possibly with several levels of CSG probably defined 
in several places, including some include files. And that, somewho, the 
have an explicite black pigment, or an ambient 0 in a lightless scene?

Any #include directive outside your union? Some bad includes contain 
undeclared objects that will apears by themself. Those are best used 
this way:
#declare Some_Object = #include "bad include.inc"


What do you get by removing that ambient 0, adding a reasonable diffuse 
value and using some light?
What about rendering using +q0? This will render as if EVERY single 
textures had ambient 1 and ignoring any light.




Alain


Post a reply to this message

From: Christian Froeschlin
Subject: Re: Use uniform texture
Date: 2 Jun 2012 05:46:08
Message: <4fc9e0e0$1@news.povray.org>
clipka wrote:

> Because it's a feature.

maybe a keyword override_textures, similar to cutaway_textures,
would be useful to allow both use cases for CSG operations.


Post a reply to this message

From: clipka
Subject: Re: Use uniform texture
Date: 2 Jun 2012 07:35:15
Message: <4fc9fa73$1@news.povray.org>
Am 02.06.2012 11:47, schrieb Christian Froeschlin:
> clipka wrote:
>
>> Because it's a feature.
>
> maybe a keyword override_textures, similar to cutaway_textures,
> would be useful to allow both use cases for CSG operations.

I do agree.


Post a reply to this message

Goto Latest 10 Messages Next 2 Messages >>>

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