POV-Ray : Newsgroups : povray.general : Texture maps different in 3.5 even when using #version Server Time
5 Aug 2024 02:15:42 EDT (-0400)
  Texture maps different in 3.5 even when using #version (Message 3 to 12 of 12)  
<<< Previous 2 Messages Goto Initial 10 Messages
From: Thorsten Froehlich
Subject: Re: Texture maps different in 3.5 even when using #version
Date: 1 Feb 2003 07:08:33
Message: <3e3bb8c1$1@news.povray.org>
In article <3e3bae64@news.povray.org> , Not My Real Email Address 
<ano### [at] anoncom>  wrote:

> I will post images to povray.binaries.images with the subject line
> 'Texture maps different in 3.5 even when using #version'

The images are not in p.b.i yet...

    Thorsten


Post a reply to this message

From: Tim Nikias
Subject: Re: Texture maps different in 3.5 even when using #version
Date: 1 Feb 2003 07:19:29
Message: <3e3bbb51@news.povray.org>
AFAIK, the noise-generator was changed from 3.1 to 3.5,
not to mention the new one added to avoid some "plateaus"
in number-distribution or what-not. I'm not so sure about
thise topic, but I DO know that the new noise-generator is
default in 3.5, and AFAIK you have to set that manually to
overcome the problem, just a #version won't help.

But that's just a guess, so don't blame me if I'm wrong! :-)

Regards,
Tim


--
Tim Nikias
Homepage: http://www.digitaltwilight.de/no_lights/index.html
Email: Tim### [at] gmxde

> /*
> I find the following texture renders markedly differently in 3.5 compared
> with both 3.0.20-10 debian and megapovplus 0.5.0.2.5a-1 (3.1 equivalent),
> which both render the images similarly to each other.
>
> It looks to me like the grade between 0 and 1.0 in the texture map of the
> older versions is quite different to the grade in 3.5 .. for example as
> if one used a linear gradient and the other an exponential one. I hope
> someone understand what I mean.
>
> I don't see this mentioned in the documentation or in the bugs so far
> listed in povray.general or povray.bugreports, or by googling old usenet
> postings.
>
> I haven't played much with 3.5, but have checked that if I use a plain
> pigment it is the same color.
>
> Can someone tell me this is a bug, or is expected behaviour and why? If
> so, how do i figure out how to translate an old-style texture into a new
> one?
>
> I will post images to povray.binaries.images with the subject line
> 'Texture maps different in 3.5 even when using #version'
>
> Simeon
> */
>
> #include "colors.inc"
> #version 3.0
>
> //test.pov
> //bah there is some bug in the 3.5 textures i think
> //Simeon Scott 2003-02-01 ////////////////////////
> //Something like a blue agate.
> /////////////////////////////
>
>
> background
>   { color White }
>
> global_settings
> {
>   ambient_light 0.05
>   assumed_gamma 1
> }
>
> camera
> {
>   location <0, 0, -3>
>   look_at <0, 0, 0>
>   scale 0.2
> }
>
> light_source
>   {  <2, 4, -3> color White scale 0.4 }
>
> #declare Sim_Blue_Agate = texture
> {
>   waves
>   texture_map
>   {
>     [  0.15 pigment { color White }        ]
>     [  1.0  pigment { color <0, 0, 0.3> }  ]
>   }
>   turbulence <10, 10, 0.3>
>   scale 0.1
> }
>
> sphere
>   {  <0, 0, 0>, 0.3 texture {  Sim_Blue_Agate } }


Post a reply to this message

From: Not My Real Email Address
Subject: Re: Texture maps different in 3.5 even when using #version
Date: 1 Feb 2003 07:38:33
Message: <3e3bbfc9@news.povray.org>
Bah this newsreader! Had trouble posting images to usenet, but here they
are on my website (for now).

http://bur.st/~shevek/test_3.0.jpg
http://bur.st/~shevek/test_mega0.5.jpg
http://bur.st/~shevek/test_3.5.jpg

Thanks in advance for your kind help :)

Simeon


On Sat, 01 Feb 2003 23:21:44 +1100, Tim Nikias wrote:

> AFAIK, the noise-generator was changed from 3.1 to 3.5, not to mention
> the new one added to avoid some "plateaus" in number-distribution or
> what-not. I'm not so sure about thise topic, but I DO know that the new
> noise-generator is default in 3.5, and AFAIK you have to set that
> manually to overcome the problem, just a #version won't help.
> 
> But that's just a guess, so don't blame me if I'm wrong! :-)
> 
> Regards,
> Tim
> 
> 
> --
> Tim Nikias
> Homepage: http://www.digitaltwilight.de/no_lights/index.html Email:
> Tim### [at] gmxde
> 
>> /*
>> I find the following texture renders markedly differently in 3.5
>> compared with both 3.0.20-10 debian and megapovplus 0.5.0.2.5a-1 (3.1
>> equivalent), which both render the images similarly to each other.
>>
>> It looks to me like the grade between 0 and 1.0 in the texture map of
>> the older versions is quite different to the grade in 3.5 .. for
>> example as if one used a linear gradient and the other an exponential
>> one. I hope someone understand what I mean.
>>
>> I don't see this mentioned in the documentation or in the bugs so far
>> listed in povray.general or povray.bugreports, or by googling old
>> usenet postings.
>>
>> I haven't played much with 3.5, but have checked that if I use a plain
>> pigment it is the same color.
>>
>> Can someone tell me this is a bug, or is expected behaviour and why? If
>> so, how do i figure out how to translate an old-style texture into a
>> new one?
>>
>> I will post images to povray.binaries.images with the subject line
>> 'Texture maps different in 3.5 even when using #version'
>>
>> Simeon
>> */
>>
>> #include "colors.inc"
>> #version 3.0
>>
>> //test.pov
>> //bah there is some bug in the 3.5 textures i think //Simeon Scott
>> 2003-02-01 //////////////////////// //Something like a blue agate.
>> /////////////////////////////
>>
>>
>> background
>>   { color White }
>>
>> global_settings
>> {
>>   ambient_light 0.05
>>   assumed_gamma 1
>> }
>>
>> camera
>> {
>>   location <0, 0, -3>
>>   look_at <0, 0, 0>
>>   scale 0.2
>> }
>>
>> light_source
>>   {  <2, 4, -3> color White scale 0.4 }
>>
>> #declare Sim_Blue_Agate = texture
>> {
>>   waves
>>   texture_map
>>   {
>>     [  0.15 pigment { color White }        ] [  1.0  pigment { color
>>     <0, 0, 0.3> }  ]
>>   }
>>   turbulence <10, 10, 0.3>
>>   scale 0.1
>> }
>>
>> sphere
>>   {  <0, 0, 0>, 0.3 texture {  Sim_Blue_Agate } }


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: Texture maps different in 3.5 even when using #version
Date: 1 Feb 2003 09:13:40
Message: <3e3bd614@news.povray.org>
In article <3e3bbb51@news.povray.org> , "Tim Nikias" <tim### [at] gmxde> 
wrote:

> AFAIK, the noise-generator was changed from 3.1 to 3.5,
> not to mention the new one added to avoid some "plateaus"
> in number-distribution or what-not. I'm not so sure about
> thise topic, but I DO know that the new noise-generator is
> default in 3.5, and AFAIK you have to set that manually to
> overcome the problem, just a #version won't help.

Indeed.  Reading section "2.6.14 Changed features that may 'break' old
scenes" in the manual explains all this.

    Thorsten


Post a reply to this message

From: Warp
Subject: Re: Texture maps different in 3.5 even when using #version
Date: 1 Feb 2003 13:59:00
Message: <3e3c18f4@news.povray.org>
Tim Nikias <tim### [at] gmxde> wrote:
> AFAIK, the noise-generator was changed from 3.1 to 3.5,

  Actually the noise-generator from 3.1 was not modified (AFAIK). It's simply
that two new noise-generators were added and the *default* noise-generator
was changed. You can still get the old noise-generator by adding
global_settings { noise_generator 1 } to your scene.
  (In the same way the media algorithm from 3.1 was not modified in 3.5,
but two new algorithms were added and the default when none is specified
was changed to one of the new ones.)

-- 
plane{-x+y,-1pigment{bozo color_map{[0rgb x][1rgb x+y]}turbulence 1}}
sphere{0,2pigment{rgbt 1}interior{media{emission 1density{spherical
density_map{[0rgb 0][.5rgb<1,.5>][1rgb 1]}turbulence.9}}}scale
<1,1,3>hollow}text{ttf"timrom""Warp".1,0translate<-1,-.1,2>}//  - Warp -


Post a reply to this message

From: Tim Nikias
Subject: Re: Texture maps different in 3.5 even when using #version
Date: 1 Feb 2003 19:21:16
Message: <3e3c647c$1@news.povray.org>
You're right about that. I had that in mind while writing,
but as it sometimes happens, I've written something I
didn't mean in its fullest extent.

Regards,
Tim

--
Tim Nikias
Homepage: http://www.digitaltwilight.de/no_lights/index.html
Email: Tim### [at] gmxde

> > AFAIK, the noise-generator was changed from 3.1 to 3.5,
>
>   Actually the noise-generator from 3.1 was not modified (AFAIK). It's simply
> that two new noise-generators were added and the *default* noise-generator
> was changed. You can still get the old noise-generator by adding
> global_settings { noise_generator 1 } to your scene.
>   (In the same way the media algorithm from 3.1 was not modified in 3.5,
> but two new algorithms were added and the default when none is specified
> was changed to one of the new ones.)


Post a reply to this message

From: Not My Real Email Address
Subject: Re: Texture maps different in 3.5 even when using #version
Date: 4 Feb 2003 08:08:08
Message: <3e3fbb38@news.povray.org>
/*
On Sun, 02 Feb 2003 01:13:40 +1100, Thorsten Froehlich wrote:

> In article <3e3bbb51@news.povray.org> , "Tim Nikias" <tim### [at] gmxde>
> wrote:
> 
>> AFAIK, the noise-generator was changed from 3.1 to 3.5, not to mention
>> the new one added to avoid some "plateaus" in number-distribution or
>> what-not. I'm not so sure about thise topic, but I DO know that the new
>> noise-generator is default in 3.5, and AFAIK you have to set that
>> manually to overcome the problem, just a #version won't help.
> 
> Indeed.  Reading section "2.6.14 Changed features that may 'break' old
> scenes" in the manual explains all this.
> 
>     Thorsten

Sorry in advance for the rude tone of this post.

1) I am not inclined to ignore the documentation. The documentation does
not 'explain all this' ...

    2.6.14  Changed features that may 'break' old scenes

    ...

    Noise:
    New noise functions have been added in POV-Ray 3.5. Noise functions 
    are internaly used in patterns. The default function in 3.5 is not 
    the same as it was in 3.1 and earlier. This may affect the appearence
    of textures in old scenes.
    Solution: put noise_generator 1 in global_settings{}.

    ...

'noise and pigment functions' in the TOC takes me to

    3.6.3.6  noise and pigment functions

    Some of the internal functions have a random or noise-like structure

    Together with the pigment functions they are one of the most powerful
    tools for designing isosurfaces. We can add real surface displacement
    to the objects rather than only normal perturbation known from the 
    normal{} statement.

    The relevant internal functions are:

    * f_noise3d(x,y,z)
      uses the noise generator specified in global_settings{} and 
      generates structures like the bozo pattern.

    ...

The words 'noise generator' above link to

    6.7.12.4  Noise Generators

    There are three noise generators implemented. Changing the 
    noise_generator will change the appearence of noise based patterns, 
    like bozo and granite.

    * noise_generator 1 the noise that was used in POV_Ray 3.1
    * noise_generator 2 'range corrected' version of the old noise, it 
      does not show the plateaus seen with noise_generator 1
    * noise_generator 3 generates Perlin noise

    The default is noise_generator 2

    Note: The noise_generator can also be set in global_settings

    ...

So it looks like indeed the 'noise generator' MAY be the culprit, but
I need to verify what exactly uses these 'noise generator's and what
doesn't.

So I go back to '3.6.3.6  noise and pigment functions' and this time
click on the words 'internal functions'.

    3.6.3.4  internal functions

    There are a lot of internal functions available in POV-Ray. For 
    example a sphere could also be generated with function 
    { f_sphere(x, y, z, 2) } These functions are declared in the 
    functions.inc include file. Most of them are more complicated and 
    it's usually faster to use them instead of a hand coded equivalent.
    See the complete list for details.

    ...

The words 'complete list' are hyperlinked, supposedly to 
povdoc_082.html#target_141 but in fact this is a dead link. It refers to 
the exact paragraph of text that it appears in.

So I am still in the dark of whether the 'noise generator' parameter is
theoretically supposed to fix the problem. But I can tell you it does not
in practice.

And in my opinion, it should NOT be necessary. What is #version 3.0 or
#version 3.1 supposed to do, if not set values like this to the necessary
values to recreate a scene made using a previous version of povray?

So there are three bugs for you for the price of one.

1) documentation: dead link at 'complete list' in paragraph at 
povdoc_082.html#target_141

2) #version does not set correct value of noise_generator in order to 
recreate images from source code created with previous versions of 
povray (if I am to believe what I hear here).

3) povray 3.5 does not recreate image correctly from my source code
generated for previous version of povray (3.0, 3.1-compatible megapov0.5)
even with global_settings { noise_generator 1 }, optionally also with 
#version 3.0 or #version 3.1.


Thanks for replying, I hope this can be easily sorted. Thanks povray team
for many years of joy (and frustration! ;)

I did not bother attaching the output from the changed source, since it
is exactly the same output as generated previously using povray 3.5, but
here below is my source code amended to include the 'noise_generator'
setting, so that you can verify that I have not made a typo.

In fact, it makes no difference whatsoever to the output generated
whether noise_generator is set to 1, 2 or 3, nor whether I remove the
#version directive.

Simeon

*/


/*
I find the following texture renders markedly differently in 3.5 compared
with both 3.0.20-10 debian and megapovplus 0.5.0.2.5a-1, which both
render the images similarly.

I haven't played much with 3.5, but have checked that if I use a plain
pigment it is the same color.

Can someone tell me this is a bug, or is expected behaviour and why?

Simeon
*/

#include "colors.inc"
#version 3.0

//test.pov                  
//bah there is some bug in the 3.5 textures i think         
//Simeon Scott 2003-02-01 ////////////////////////
//Something like a blue agate.
/////////////////////////////


background
  { color White }

global_settings
{
  ambient_light 0.05
  assumed_gamma 1
  noise_generator 1
}

camera
{
  location <0, 0, -3>
  look_at <0, 0, 0>
  scale 0.2
}

light_source
  {  <2, 4, -3> color White scale 0.4 }

#declare Sim_Blue_Agate = texture
{
  waves
  texture_map	
  {
    [  0.15 pigment { color White }        ]
    [  1.0  pigment { color <0, 0, 0.3> }  ]
  }
  turbulence <10, 10, 0.3>
  scale 0.1
}

sphere
  {  <0, 0, 0>, 0.3	texture {  Sim_Blue_Agate } }


Post a reply to this message

From: Warp
Subject: Re: Texture maps different in 3.5 even when using #version
Date: 4 Feb 2003 08:44:51
Message: <3e3fc3d3@news.povray.org>
Not My Real Email Address <ano### [at] anoncom> wrote:
> 3) povray 3.5 does not recreate image correctly from my source code
> generated for previous version of povray (3.0, 3.1-compatible megapov0.5)

  Is it supposed to?
  The #version directive only emulates older versions at language level.
It does not emulate older versions at rendering level. (Eg. you won't get
halo back, no matter how many #version directives you write.)
  There have been many changes which are not affected by #version because
they are not a simple language syntax thing.

-- 
#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

From: Thorsten Froehlich
Subject: Re: Texture maps different in 3.5 even when using #version
Date: 4 Feb 2003 13:06:28
Message: <3e400124$1@news.povray.org>
In article <3e3fbb38@news.povray.org> , Not My Real Email Address 
<ano### [at] anoncom>  wrote:

> Sorry in advance for the rude tone of this post.

Same for this one.

> 1) documentation: dead link at 'complete list' in paragraph at
> povdoc_082.html#target_141

No, it leads you to section 3.6.3.7 as it is supposed to.

> 2) #version does not set correct value of noise_generator in order to
> recreate images from source code created with previous versions of
> povray (if I am to believe what I hear here).

Not a bug.  It works exactly as documented.

> 3) povray 3.5 does not recreate image correctly from my source code
> generated for previous version of povray (3.0, 3.1-compatible megapov0.5)
> even with global_settings { noise_generator 1 }, optionally also with
> #version 3.0 or #version 3.1.

Not a bug.  The #version directive sets the language version, not the scene
rendering style.  this is pointed out in "6.2.5 The #version Directive" as
well.

> 'noise and pigment functions' in the TOC takes me to
>
>     3.6.3.6  noise and pigment functions

Well, if you are looking in the completely wrong place.  This is a
subsection of "3.6.3 Isosurface Object".  Surely not what you are looking
for.  And the TOC makes quite clear to which section a subsection belongs...

> So I am still in the dark of

Hardly a surprise if you seek information in sections of the documentation
that are unrelated to textures at all...

> whether the 'noise generator' parameter is
> theoretically supposed to fix the problem. But I can tell you it does not
> in practice.

If you don't know how to use it, you should ask here.  The old noise
generator does work exactly as before.  Thousands of users have successfully
used the old noise generator, so blaming POV-Ray for you not knowing how to
use it without having read (not randomly searched) the manual, well...

> And in my opinion, it should NOT be necessary. What is #version 3.0 or
> #version 3.1 supposed to do, if not set values like this to the necessary
> values to recreate a scene made using a previous version of povray?

RTFM.

    Thorsten


Post a reply to this message

From: Not My Real Email Address
Subject: Re: Texture maps different in 3.5 even when using #version
Date: 5 Feb 2003 09:33:21
Message: <3e4120b1@news.povray.org>
On Wed, 05 Feb 2003 05:06:29 +1100, Thorsten Froehlich wrote:

> In article <3e3fbb38@news.povray.org> , Not My Real Email Address
> <ano### [at] anoncom>  wrote:
> 
>> Sorry in advance for the rude tone of this post.
> 
> Same for this one.
> 
>> 1) documentation: dead link at 'complete list' in paragraph at
>> povdoc_082.html#target_141
> 
> No, it leads you to section 3.6.3.7 as it is supposed to.

I'm sorry but it does not. It leads to the same paragraph it occurs in,
as I said. It self-references. It goes nowhere. I will paste the source
html:

<div class="divh4">
<a name="target_141"></a>
<h4>3.6.3.4  internal functions</h4>

  <p>There are a lot of internal functions available in POV-Ray. For example
  a sphere could also be generated with <code>function { f_sphere(x, y, z, 2) }</code>
  These functions are declared in the <code>functions.inc</code> include file.
  Most of them are more complicated and it's usually faster to use them instead of a
  hand coded equivalent. See the
  <a href="#target_141">complete list</a> for details.</p>

Section 3.6.3.7 is titled 'accuracy, max_gradient, etc.' -- doesn't seem
to be a 'complete list' of anything. Certainly nothing to do with the
'noise generator' function or patterns generated any which way. It is
talking about isosurfaces.


>> 2) #version does not set correct value of noise_generator in order to
>> recreate images from source code created with previous versions of
>> povray (if I am to believe what I hear here).
> 
> Not a bug.  It works exactly as documented.

So the documentation matches the behaviour. I still perceive it as a bug.
 
>> 3) povray 3.5 does not recreate image correctly from my source code
>> generated for previous version of povray (3.0, 3.1-compatible
>> megapov0.5) even with global_settings { noise_generator 1 }, optionally
>> also with #version 3.0 or #version 3.1.
> 
> Not a bug.  The #version directive sets the language version, not the
> scene rendering style.  this is pointed out in "6.2.5 The #version
> Directive" as well.

See above.

Do you mean the 6.2.5 that starts out "As POV-Ray has evolved from 
version 1.0 through 3.5 we have made every effort to maintain some amount
of backwards compatibility with earlier versions."

 
>> 'noise and pigment functions' in the TOC takes me to
>>
>>     3.6.3.6  noise and pigment functions
> 
> Well, if you are looking in the completely wrong place.  This is a
> subsection of "3.6.3 Isosurface Object".  Surely not what you are
> looking for.  And the TOC makes quite clear to which section a
> subsection belongs...

Thanks that is a good point. And yet the title of the subsection is 'noise
and pigment functions'.
 
>> So I am still in the dark of
> 
> Hardly a surprise if you seek information in sections of the
> documentation that are unrelated to textures at all...

Could you please provide a pointer to the section of the documentation
which explains this?

>> whether the 'noise generator' parameter is theoretically supposed to
>> fix the problem. But I can tell you it does not in practice.
> 
> If you don't know how to use it, you should ask here.  The old noise
> generator does work exactly as before.  Thousands of users have
> successfully used the old noise generator, so blaming POV-Ray for you
> not knowing how to use it without having read (not randomly searched)
> the manual, well...

Did you ever look at my images or try the source I posted? You give no
indication that you did so.
 
>> And in my opinion, it should NOT be necessary. What is #version 3.0 or
>> #version 3.1 supposed to do, if not set values like this to the
>> necessary values to recreate a scene made using a previous version of
>> povray?
> 
> RTFM.
> 
>     Thorsten

You know where to put the manual.

Thanks in advance,

Simeon


Post a reply to this message

<<< Previous 2 Messages Goto Initial 10 Messages

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