|
|
Hi again,
the source is not too long, so I simply pasted it below.
BR Billabong
//================
#version 3.7;
global_settings {
assumed_gamma 2.2
max_trace_level 16
}
camera {
location <0,1,-2.8>
up <0,1,0>
right <1,0,0>
look_at <0,1,10>
}
#declare Y = -0.2;
#while (Y<2.2)
light_source {
0*x
color rgb 0.7
translate <0, Y,0.7>
}
#declare Y = Y + 0.2;
#end
light_source {
0*x
color rgb 2
translate <0, 0.7,1.7>
}
//--------
sky_sphere { pigment { rgb 1} }
#declare Random = seed(7);
#macro Ice_Texture(Random)
texture {
pigment {
color rgbf <0.5+rand(Random)/5,0.8+rand(Random)/5,1-rand(Random)/10,1>
}
finish {
diffuse 0.9
reflection 0.05
brilliance 7
}
}
#end
#macro Fire_Texture(Random,Transparenz)
texture {
pigment {
color rgbf
<1-rand(Random)/10,0.15+rand(Random)/10,rand(Random)/10,Transparenz>
}
normal { quilted scale 1-rand(Random)/4 }
finish {
diffuse 0.9
ambient 0.5
reflection 0.2
brilliance 2
}
}
#end
#macro Triangle_SplitF(point1,point2,point3,Nesting,Transparenz)
#if(Nesting<15)
#if(vlength(point1-point2)>vlength(point2-point3))
#if(vlength(point1-point2)>vlength(point1-point3))
#local point4 = point1 + (0.4+rand(Random)*0.2)*(point2-point1);
Triangle_SplitF(point1,point3,point4,Nesting+1,Transparenz)
Triangle_SplitF(point2,point3,point4,Nesting+1,Transparenz)
#else
#local point4 = point1 + (0.4+rand(Random)*0.2)*(point3-point1);
Triangle_SplitF(point1,point2,point4,Nesting+1,Transparenz)
Triangle_SplitF(point2,point3,point4,Nesting+1,Transparenz)
#end
#else
#if(vlength(point2-point3)>vlength(point1-point3))
#local point4 = point2 + (0.4+rand(Random)*0.2)*(point3-point2);
Triangle_SplitF(point1,point3,point4,Nesting+1,Transparenz)
Triangle_SplitF(point2,point1,point4,Nesting+1,Transparenz)
#else
#local point4 = point1 + (0.4+rand(Random)*0.2)*(point3-point1);
Triangle_SplitF(point1,point2,point4,Nesting+1,Transparenz)
Triangle_SplitF(point2,point3,point4,Nesting+1,Transparenz)
#end
#end
#else
triangle{point1,point2,point3 Fire_Texture(Random,Transparenz)}
#end
#end
Triangle_SplitF(<-10,-10,5>,<10,-10,5>,<10,10,5>,0,0)
Triangle_SplitF(<-10,-10,5>,<-10,10,5>,<10,10,5>,0,0)
#macro Tetraeder(point1,point2,point3,point4,Texture)
mesh {
triangle{point1,point2,point3 texture{Texture}}
triangle{point1,point2,point4 texture{Texture}}
triangle{point1,point4,point3 texture{Texture}}
triangle{point4,point2,point3 texture{Texture}}
}
#end
#macro Tetraeder_Split(point1,point2,point3,point4,Nesting)
#if(Nesting<12)
#local vl12 = vlength(point1-point2);
#local vl13 = vlength(point1-point3);
#local vl14 = vlength(point1-point4);
#local vl23 = vlength(point2-point3);
#local vl24 = vlength(point2-point4);
#local vl34 = vlength(point3-point4);
#if(vl12>=vl13 & vl12>=vl14 & vl12>=vl23 & vl12 >= vl24 & vl12 >= vl34)
#local point1a = point1;
#local point2a = point2;
#local point3a = point3;
#local point4a = point4;
#else
#if(vl13>=vl14 & vl13>=vl23 & vl13 >= vl24 & vl13 >= vl34)
#local point1a = point1;
#local point2a = point3;
#local point3a = point2;
#local point4a = point4;
#else
#if(vl14>=vl23 & vl14 >= vl24 & vl14 >= vl34)
#local point1a = point1;
#local point2a = point4;
#local point3a = point2;
#local point4a = point3;
#else
#if(vl23 >= vl24 & vl23 >= vl34)
#local point1a = point2;
#local point2a = point3;
#local point3a = point1;
#local point4a = point4;
#else
#if(vl24 >= vl34)
#local point1a = point2;
#local point2a = point4;
#local point3a = point1;
#local point4a = point3;
#else
#local point1a = point3;
#local point2a = point4;
#local point3a = point1;
#local point4a = point2;
#end
#end
#end
#end
#end
#local point5a = point1a + (0.4+0.2*rand(Random))*(point2a-point1a);
Tetraeder_Split(point1a,point4a,point3a,point5a,Nesting+1)
Tetraeder_Split(point2a,point4a,point3a,point5a,Nesting+1)
#else
Tetraeder(point1,point2,point3,point4,Ice_Texture(rand(Random)))
#end
#end
Tetraeder_Split(<-0.8,0,-0.8>,<0.8,0,-0.8>,<0,2.4,0>,<0,0,-0.7>,0)
Tetraeder_Split(<-0.8,0,0.8>,<0.8,0,0.8>,<0,2.4,0>,<0,0,0.7>,0)
Tetraeder_Split(<-0.8,0,-0.8>,<-0.8,0,0.8>,<0,2.4,0>,<-0.7,0,0>,0)
Tetraeder_Split(<0.8,0,-0.8>,<0.8,0,0.8>,<0,2.4,0>,<0.7,0,0>,0)
triangle {<-1.45,-0.8,0.8>,<1.45,-0.8,0.8>,<0,2.8,0.8> pigment {rgb 1} }
William F Pokorny <ano### [at] anonymousorg> wrote:
> On 02/25/2017 07:20 AM, Billabong wrote:
> > Thank you so much for pushing forward for a new release stepping of Povray.
> >
> > I am new in this forum. I have been using V3.7 for some years and now trying out
> > the beta releases. I am re-rendering some of the old competition sources and
> > found a source file that crashes at parsing in beta.3 and also beta.2, but runs
> > fine on the v3.7. I have a pretty standard machine running Win10.
> >
> > I don't know whether you are interested to use such source for debugging and how
> > I can contribute such source?
> >
> > BR Billabong
> >
> >
>
> Yes, interested. If you can prune down to some minimal set of SDL
> causing the crash(1) - more interested :-). Pruned to a small number of
> lines you can post it inline here. Otherwise largish text files can be
> posted to the povray.text.scene-files group (or as an attachment to a
> new github issue - needs to have a .txt suffix added). If you can create
> zip files or tar files these can be posted as binaries to the
> povray.binaries.scene-files group or again to github as an attachment to
> an issue.
>
> There is further detail on how to report bugs at the bottom of this wiki
> page:
>
> http://wiki.povray.org/content/HowTo:Contents
>
> Bill P.
Post a reply to this message
|
|