|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
A code:
-----------------------------
plane {
y, 0
texture {
pigment { color rgbf <0.2, 0.2, 0.2,0.9> }
finish { reflection 0.3 diffuse 0.2 specular 0.2}
normal { cells scale 0.5 }
normal { hexagon
normal { agate 3 scale 0.7 }
normal { cells 3 scale 0.2 }
}
}
}
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
In article <40c304ac@news.povray.org> , "IkA" <ixis.yandex.ru> wrote:
> A code:
What is this about???
Thorsten
____________________________________________________
Thorsten Froehlich, Duisburg, Germany
e-mail: tho### [at] trfde
Visit POV-Ray on the web: http://mac.povray.org
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
IkA nous apporta ses lumieres ainsi en ce 06/06/2004 07:48... :
>A code:
>-----------------------------
>
>plane {
> y, 0
> texture {
> pigment { color rgbf <0.2, 0.2, 0.2,0.9> }
> finish { reflection 0.3 diffuse 0.2 specular 0.2}
>
> normal { cells scale 0.5 }
>
>
> normal { hexagon
> normal { agate 3 scale 0.7 }
> normal { cells 3 scale 0.2 }
>}
>}
>}
>
>
>
>
>
The problem seems to be the nested normals. Your hexagon normal pattern
contain 2 other normal patterns.
Alain
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Thorsten Froehlich wrote:
> In article <40c304ac@news.povray.org> , "IkA" <ixis.yandex.ru> wrote:
>
>> A code:
>
> What is this about???
>
It took me one second to see that this is a bug report. So people like
Thorsten should figure out in approximately 0.1 seconds :)
The crash is in
void Post_Tnormal (TNORMAL *Tnormal) (normal.cpp):
case NORMAL_TYPE:
--> Map->Blend_Map_Entries[i].Vals.Tnormal->Flags |=
(Tnormal->Flags & DONT_SCALE_BUMPS_FLAG);
with i=2, Map->Number_Of_Entries=3 and ...Tnormal=NULL.
The problem probably begins in express.cpp, Parse_Blend_List(), near
the end (line 2680):
case NORMAL_TYPE:
Temp_Ent[i].Vals.Tnormal=Copy_Tnormal(Default_Texture->Tnormal);
break;
Copy_Tnormal will return NULL because Default_Texture->Tnormal is NULL.
Then, in Post_Tnormal it's a classical NULL pointer deref.
Using if(Map->Blend_Map_Entries[i].Vals.Tnormal!=NULL) in the
case NORMAL_TYPE in Post_Tnormal() will make the test scene trace
successfully but I doubt that this is a good solution.
Instead, using
case NORMAL_TYPE:
Temp_Ent[i].Vals.Tnormal=Copy_Tnormal(Default_Texture->Tnormal);
--> if(!Temp_Ent[i].Vals.Tnormal) Count=i;
break;
in Parse_Blend_List(), will also make the crash go away. This, however,
means that Parse_Blend_List() no longer guarantees that the number
of entries is equal to the Count argument.
Just my 10 minute bug analysis (so no warranty for anything)...
Somebody with a bit more clue about that portion of the code should have
a look at this.
Cheers,
Wolfgang
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |