a lot of little changes

This commit is contained in:
Tonton Th 2025-11-13 02:15:11 +01:00
parent 030f2fb2cf
commit 0b04ffd359
17 changed files with 152 additions and 124 deletions

View File

@ -17,7 +17,7 @@
// ======================================================= // =======================================================
#declare POS_Cutoff = <-24, 0, -7>; #declare POS_Cutoff = <-20, 0, -7>;
#local TY = 1.55; #local TY = 1.55;
@ -32,8 +32,10 @@ difference {
translate y*TY + POS_Cutoff translate y*TY + POS_Cutoff
} }
/*
sphere { Position, 0.020 translate y*TY + POS_Cutoff sphere { Position, 0.020 translate y*TY + POS_Cutoff
texture { T_WIP_alert } } texture { T_WIP_alert } }
*/
/* this one is for debugging */ /* this one is for debugging */
// object { OpenBox translate y*TY + POS_Cutoff } // object { OpenBox translate y*TY + POS_Cutoff }

View File

@ -27,13 +27,11 @@
// --------------------------------------------------------- // ---------------------------------------------------------
// ---------------------------------------------------------
object { Repere scale 10 translate y*7 } object { Repere scale 10 translate y*7 }
object { Le_Decor } object { Le_Decor }
camera { camera {
location <45, 179+(42*NormClock), 18-(21*NormClock)> location <45, 179+(51*NormClock), 18-(21*NormClock)>
look_at <0, 1.18, 0.17 + (2.9*NormClock)> look_at <0, 1.18, 0.17 + (2.9*NormClock)>
angle 50 angle 50
} }

View File

@ -21,16 +21,16 @@ object { Le_Decor }
// ======================================================= // =======================================================
#declare R_circ = R_circular; #declare R_circ = R_circular + 0.07;
#declare CK = NormClock * 3.141592654; #declare CK = 1.23 * Cos_010(NormClock * 3.141592654);
#declare CamX = R_circ * cos(CK); #declare CamX = R_circ * cos(CK);
#declare CamY = 3.08 + abs(sin(CK/4.00)); #declare CamY = 3.08 + abs(sin(CK/4.00));
#declare CamZ = R_circ * sin(CK); #declare CamZ = R_circ * sin(CK);
#declare AV = 0.06; #declare AV = 0.070;
#declare LatX = R_circ * 0.98 * cos(CK + AV); #declare LatX = R_circ * 0.96 * cos(CK + AV);
#declare LatY = 3; #declare LatY = 2;
#declare LatZ = R_circ * 0.97 * sin(CK + AV); #declare LatZ = R_circ * 0.97 * sin(CK + AV);
camera { camera {

View File

@ -174,13 +174,13 @@ union {
object { HexaBalls object { HexaBalls
texture { Lightning1 scale 0.44 } texture { Lightning1 scale 0.44 }
rotate <clock/3, clock/4, clock/9> rotate <clock/3, clock/4, clock/9>
translate <2, 1.11*Cos_010(NormClock), 4> translate <2, 1.21*Cos_010(NormClock), 4>
} }
object { HexaBalls object { HexaBalls
texture { Lightning2 scale 0.56 } texture { Lightning2 scale 0.56 }
rotate <-clock, clock*0.33333, clock*3> rotate <-clock, clock*0.33333, clock*3>
translate <4, 1.11*Cos_010(NormClock), -3> translate <4, 1.41*Cos_010(NormClock), -3>
} }
} }
} }
@ -294,15 +294,15 @@ union {
object { Chose () translate < 20, 0, -32> } object { Chose () translate < 20, 0, -32> }
/* a l'exterieur du 'circular' */ /* a l'exterieur du 'circular' */
#for (foo, 0, 359, 20) #for (foo, 0, 359, 18)
#local CK = radians(foo + (5*rand(Rng1))); #local CK = radians(foo + (5*rand(Rng1)));
#local DX = 77 * sin(CK); #local DX = 66 * sin(CK);
#local DZ = 81 * cos(CK); #local DZ = 64 * cos(CK);
// #local Texte = str(CK, 5, 3); // #local Texte = str(CK, 5, 3);
// #debug concat ("Les Choses, CK = ", Texte, "\n") // #debug concat ("Les Choses, CK = ", Texte, "\n")
object { Chose () translate < DX, 0, DZ> } object { Chose () translate < DX, 0, DZ> } // XXX
#end #end
} }
} }
@ -371,15 +371,7 @@ sky_sphere {
// } // }
/* ======================================================= */ /* ======================================================= */
/* ======================================================= */
/* XXX XXX */
light_source {
<-4, 54, -27>
colour Gray40
parallel
point_at 0
}
/* /*
* Et on rassemble tous les éléments... * Et on rassemble tous les éléments...
*/ */
@ -398,12 +390,16 @@ union {
object { Les_HexaPoles } object { Les_HexaPoles }
object { Horloge rotate y*27 translate < 3, 0, -30> } object { Horloge rotate y*27 translate < 3, 0, -30> }
object { Les_Choses } object { Les_Choses }
object { Les_Arches (1) rotate y*59 translate <-22, 0, -20> }
object { Les_Arches (2) rotate y*156 translate <-34, 0, -26> }
object { Les_Arches rotate y*59 translate <-32, 0, 20> } object { Les_Cahutes () translate <22, 0, -9> }
object { Les_Arches rotate y*156 translate <-34, 0, -26> }
object { Les_Cahutes () translate <32, 0, -9> } /* les trucs dans le Y négatif */
object { Les_Cahutes () rotate y*7 translate <61, 0, -55> } object { OpenBox(2, 0.08) rotate <5, 7, -12+(24*NormClock)>
translate <-22, 4, -79> }
object { Les_Cahutes () rotate y*7 translate <35, 0, -84> }
object { Les_Cahutes () rotate y*7 translate <34, 0, -76> }
} }
} }
/* ------------------------------------------------------------ */ /* ------------------------------------------------------------ */

View File

@ -5,19 +5,21 @@
// ======================================================= // =======================================================
// on va tenter de placer un truc qui bouge // on va tenter de placer quelques trucs
// sur le rail circulaire // qui bougent sur le rail circulaire
#local CK = NormClock * 5.750; // radians
#for (foo, 0, 5)
#local CK = (NormClock+(foo*0.019)) * 4.750; // radians
#declare Xpos = R_circular * sin(CK); #declare Xpos = R_circular * sin(CK);
#declare Zpos = R_circular * cos(CK); #declare Zpos = R_circular * cos(CK);
#declare AR = degrees(CK); #declare AR = degrees(CK);
object { object {
Wagonnet_0 (4) Wagonnet_0 (2.4)
rotate y*AR rotate y*AR
translate <Xpos, 1.25, Zpos> translate <Xpos, 0.75, Zpos>
} }
#end // for
// //
object { Les_Bibelots rotate y*clock translate UnderHoles[2] } object { Les_Bibelots rotate y*clock translate UnderHoles[2] }

View File

@ -27,10 +27,10 @@
#declare Un_Wagonnet = object #declare Un_Wagonnet = object
{ {
#local R = 2; #local R = 3.2;
object { Wagonnet_0 (3) object { Wagonnet_0 (R)
rotate y*clock rotate y*clock*2
} }
} }
@ -39,15 +39,13 @@ object { Wagonnet_0 (3)
/* nouveau du 7 octobre 2025 */ /* nouveau du 7 octobre 2025 */
#macro Une_Boule () #macro Une_Boule ()
sphere { sphere {
0, 0.1111 + (rand(Rng1) * 0.20) 0, 0.15 + (rand(Rng1) * 0.07)
#local R = rand(Rng1); #local R = rand(Rng1);
#if (R < 0.333) #if (R < 0.333) texture { C_Texture }
texture { C_Texture } #elseif (R < 0.666) texture { M_Texture }
#elseif (R < 0.666) #else texture { Y_Texture }
texture { M_Texture } #end
#else finish { specular 0.6 }
texture { Y_Texture }
#end
} }
#end // macro #end // macro
@ -57,8 +55,8 @@ sphere {
#declare Les_Boules = object #declare Les_Boules = object
{ {
union { union {
#for (A, 0, 24, 1) #for (A, 0, 32, 1)
#local CK = (NormClock*60.00) + (A*0.07); #local CK = (NormClock*55.00) + (A*0.08);
object { Une_Boule () object { Une_Boule ()
#local TX = 1.6 * sin(CK); #local TX = 1.6 * sin(CK);
#local TY = 1.4 * cos(sin(CK)); #local TY = 1.4 * cos(sin(CK));
@ -76,10 +74,12 @@ union {
*/ */
#declare Obj_BasicTexture = object #declare Obj_BasicTexture = object
{ {
#local R = 0.333; #local R = 0.369;
#local H = 1.2;
merge { merge {
cylinder { 0, y, R } cylinder { 0, y*H, R }
sphere { 0, R scale <1, 0.20, 1> translate y } sphere { 0, R scale <1, 0.50, 1> translate y*H }
box { <-0.19, 0, -0.17>, <R+0.4, H*0.39, R+0.6> }
} }
} }
@ -88,11 +88,11 @@ merge {
#local TR = 2.20; #local TR = 2.20;
union { union {
object { Obj_BasicTexture texture { R_Texture } object { Obj_BasicTexture texture { R_Texture }
translate <TR, 0, 0> } translate <TR*1.4, 0, 0> }
object { Obj_BasicTexture texture { G_Texture } object { Obj_BasicTexture texture { G_Texture }
translate <0, 0, 0> } translate <0, 0, -1> }
object { Obj_BasicTexture texture { B_Texture } object { Obj_BasicTexture texture { B_Texture }
translate <0, 0, TR> } translate <0, 0, TR/2> }
object { Obj_BasicTexture texture { Y_Texture } object { Obj_BasicTexture texture { Y_Texture }
translate < TR, 0, TR> } translate < TR, 0, TR> }
@ -100,6 +100,7 @@ union {
translate <-TR, 0, TR> } translate <-TR, 0, TR> }
object { Obj_BasicTexture texture { C_Texture } object { Obj_BasicTexture texture { C_Texture }
translate <-TR, 0, -TR> } translate <-TR, 0, -TR> }
object { Repere scale 1.5 translate y*2.5 }
} }
} }
// ======================================================= // =======================================================
@ -107,8 +108,9 @@ union {
#declare Des_Choses = object #declare Des_Choses = object
{ {
union { union {
object { Chose () translate -<-1.7, 0, 0.8> } object { Chose () translate -<-1.7, 0, 0.8> }
object { Chose () translate -< 1.5, 0, 1.2> rotate -y*clock } object { Chose () translate -< 1.5, 0, 1.2> rotate -y*clock }
object { Chose () translate -< 1.1, 0, -1.2> rotate y*clock }
} }
} }
// ======================================================= // =======================================================
@ -137,27 +139,37 @@ object { Gyros }
#declare Selector = mod(int(clock/60)+19, 8); #declare Selector = mod(int(clock/60)+19, 8);
#debug concat("Selector = ", str(Selector, 6, 0), "\n") #debug concat("Selector = ", str(Selector, 6, 0), "\n")
#declare AngleCam = 17 - 3*Cos_01(NormClock);
#switch (Selector) #switch (Selector)
#case (0) #case (0)
object { OpenBox translate y*2.1 } union {
object { OpenBox(1, 0.03) }
object { OpenBox(0.55, 0.03)
translate <0.4*rand(Rnd2), NormClock*0.74,cos(NormClock)> }
translate y*2.1
}
#break #break
#case (1) #case (1)
object { Les_Arches rotate -y*(clock*0.666) } object { Les_Arches (1.57) rotate -y*(clock*0.666) }
#declare AngleCam = 22;
#break #break
#case (2) #case (2)
object { HexaWood rotate -y*(clock*0.38) translate y } object { HexaPole translate y }
#break #break
#case (3) #case (3)
object { Des_Choses } object { Des_Choses }
#break #break
#case (4) #case (4)
object { HexaBenz () scale 2 translate 2.7*y rotate -y*clock } object { HexaCone () scale 2 translate 2.7*y rotate -y*clock }
#break #break
#case (5) #case (5)
object { Les_Boules translate y*0.8 } object { Les_Boules translate y*0.8 }
#break #break
#case (6) #case (6)
object { Un_Wagonnet translate y } object { Un_Wagonnet translate < 1, 1, 0> }
object { Un_Wagonnet translate y+NormClock }
object { Un_Wagonnet translate <-1, 1, 0> }
#break #break
#case (7) #case (7)
#local Pos = <0, 0, 0>; #local Pos = <0, 0, 0>;
@ -191,5 +203,5 @@ camera {
#end #end
location <CamX, CamY, CamZ> location <CamX, CamY, CamZ>
look_at <0, 1.6, 0> look_at <0, 1.6, 0>
angle 17 - 3*Cos_01(NormClock) angle AngleCam
} }

View File

@ -14,7 +14,7 @@
merge { merge {
cylinder { 0, y/2, 0.07 } cylinder { 0, y/2, 0.07 }
cylinder { 0, y/6, 0.33 } cylinder { 0, y/8, 0.37 }
#local R = rand(Rng1); #local R = rand(Rng1);
#if ( R < 0.52) #if ( R < 0.52)
texture { T_Beton_1 } texture { T_Beton_1 }
@ -30,22 +30,23 @@ merge {
#macro Chose_le_corps () // = object #macro Chose_le_corps () // = object
merge { merge {
difference { difference {
cone { -1.2*y, 0.81, 0.2*y, 1.12 } cone { -1.2*y, 0.81, 0.2*y, 1.07 }
sphere { 0.2*y 0.73 } sphere { 0.2*y 0.73 }
} }
#local CK = NormClock * (9.876+rand(Rng1)); #local CK = NormClock * (9.876+rand(Rng1));
#for (Foo, 0, 7) #for (Foo, 0, 7)
#local C2X = 3.4 * sin(CK+rand(Rng1)) * sin(CK*3); #local CK2 = CK + Foo;
#local C2Z = 2.3 * (sin(-CK+rand(Rng1)) * cos(CK*(5+rand(Rng1)))); #local C2X = 2.4 * sin(CK2+rand(Rng1)) * sin(CK*3);
#local C2Z = 2.3 * (sin(-CK2+rand(Rng1)) * cos(CK*(rand(Rng1))));
#local R = 0.06+(0.04*Cos_010(NormClock)); #local R = 0.06+(0.04*Cos_010(NormClock));
#local H = 4.2; #local H = 4.2;
cylinder { 0, <C2X, H, C2Z>, R } cylinder { 0, <C2X, H, C2Z>, R }
sphere { <C2X, H, C2Z>, R } sphere { <C2X, H, C2Z>, R }
#end #end
#if (rand(Rng1) < 0.52) #local R = rand(Rng1);
texture { tPlasticOrange } #if (R < 0.33) texture { tPlasticOrange }
#else #elseif (R < 0.66) texture { tPlasticBlue }
texture { tPlasticGreen } #else texture { tPlasticGreen }
#end // if #end // if
scale <0.62, 0.5, 0.61> scale <0.62, 0.5, 0.61>
@ -94,15 +95,17 @@ prism {
#else #else
texture { T_Beton_2 } texture { T_Beton_2 }
#end // if #end // if
scale 0.666
} }
#end // macro #end // macro
// ------------------------------------------------------ ## // ------------------------------------------------------ ##
#macro HexaPole_tubes () #macro HexaPole_tubes ()
#local R = 0.06; #local R = 0.04;
#local E = 0.725; #local E = 0.58;
#local H = H_cone*3; #local H = H_cone*1.8;
union { union {
#for (A, 0, 359, 60) #for (A, 0, 359, 60)
#local Xp = E * cos(radians(A)); #local Xp = E * cos(radians(A));
@ -111,13 +114,13 @@ union {
#local H2 = H + rand(Rng1) + rand(Rng1); #local H2 = H + rand(Rng1) + rand(Rng1);
cylinder { 0, y*H2, R } cylinder { 0, y*H2, R }
sphere { 0, R*2 scale <1, 0.666, 1> } sphere { 0, R*2 scale <1, 0.666, 1> }
sphere { 0, R*2 scale <1, 0.555, 1> translate y*H2 } sphere { 0, R*2 scale <1, 1.555, 1> translate y*H2 }
#local Ra = rand(Rng1); #local Ra = rand(Rng1);
#if (Ra < 0.25) #if (Ra < 0.25)
texture { T_Chrome_1A } texture { T_Chrome_1A }
#elseif (Ra < 0.50) #elseif (Ra < 0.50)
texture { T_Chrome_4D } texture { T_Chrome_4D }
#elseif (Ra < 0.85) #elseif (Ra < 0.75)
texture { T_Brass_2C } texture { T_Brass_2C }
#else #else
texture { Soft_Silver } texture { Soft_Silver }
@ -141,37 +144,34 @@ union {
#macro HexaPole () #macro HexaPole ()
union { union {
object { Base_hexapole () scale <0.24, 0.2, 0.24> } object { Base_hexapole () scale <0.24, 0.2, 0.24> }
object { HexaPole_tubes () translate y*0.25 } object { HexaPole_tubes () translate y*0.20 }
rotate y*(53*rand(Rng1)) rotate y*(53*rand(Rng1))
} }
#end // macro #end // macro
// ======================================================= // =======================================================
#declare OpenBox = object #macro OpenBox (D, R)
{
union { union {
#local R = 0.021;
/* les verticales */ /* les verticales */
cylinder { <-1, -1, -1>, <-1, 1, -1>, R } cylinder { <-D, -D, -D>, <-D, D, -D>, R }
cylinder { < 1, -1, -1>, < 1, 1, -1>, R } cylinder { < D, -D, -D>, < D, D, -D>, R }
cylinder { <-1, -1, 1>, <-1, 1, 1>, R } cylinder { <-D, -D, D>, <-D, D, D>, R }
cylinder { < 1, -1, 1>, < 1, 1, 1>, R } cylinder { < D, -D, D>, < D, D, D>, R }
/* en bas */ /* en bas */
cylinder { < 1, -1, 1>, <-1, -1, 1>, R } cylinder { < D, -D, D>, <-D, -D, D>, R }
cylinder { < 1, -1, -1>, <-1, -1, -1>, R } cylinder { < D, -D, -D>, <-D, -D, -D>, R }
cylinder { <-1, -1, 1>, <-1, -1, -1>, R } cylinder { <-D, -D, D>, <-D, -D, -D>, R }
cylinder { < 1, -1, 1>, < 1, -1, -1>, R } cylinder { < D, -D, D>, < D, -D, -D>, R }
/* en haut */ /* en haut */
cylinder { < 1, 1, 1>, <-1, 1, 1>, R } cylinder { < D, D, D>, <-D, D, D>, R }
cylinder { < 1, 1, -1>, <-1, 1, -1>, R } cylinder { < D, D, -D>, <-D, D, -D>, R }
cylinder { <-1, 1, 1>, <-1, 1, -1>, R } cylinder { <-D, D, D>, <-D, D, -D>, R }
cylinder { < 1, 1, 1>, < 1, 1, -1>, R } cylinder { < D, D, D>, < D, D, -D>, R }
#undef R
texture { Soft_Silver scale 6.50 } texture { Soft_Silver scale 6.50 }
} }
} #end
// ======================================================= // =======================================================
/* /*
* first written macro for testing the generation of * first written macro for testing the generation of

View File

@ -11,7 +11,7 @@ global_settings {
#include "stones.inc" #include "stones.inc"
#include "woods.inc" #include "woods.inc"
#declare Rng1 = seed(999); #declare Rng1 = seed(51);
#declare foo = rand(Rng1); #declare foo = rand(Rng1);
#declare Rng2 = seed(now*24*60*60); #declare Rng2 = seed(now*24*60*60);
#declare bar = rand(Rng2); #declare bar = rand(Rng2);
@ -83,7 +83,7 @@ finish { roughness 1.00 }
#declare T_Beton_2 = texture #declare T_Beton_2 = texture
{ {
pigment { color <0.7, 0.6, 0.5> } pigment { color <0.7, 0.6, 0.4> }
normal { dents 0.25 scale 3 } normal { dents 0.25 scale 3 }
finish { roughness 1.00 } finish { roughness 1.00 }
} }
@ -100,7 +100,17 @@ finish { roughness 1.00 }
#declare tPlasticGreen = texture #declare tPlasticGreen = texture
{ {
pigment{rgb <0.50, 2.000, 0.0>} pigment{rgb <0.20, 1.600, 0.0>}
finish {
ambient 0.1
diffuse 0.6
specular 0.3
}
}
#declare tPlasticBlue = texture
{
pigment{rgb <0.50, 0, 2.0>}
finish { finish {
ambient 0.1 ambient 0.1
diffuse 0.6 diffuse 0.6

View File

@ -45,7 +45,7 @@ texture { T_Beton_2 }
#local Texte = str(clock, 3, 0); #local Texte = str(clock, 3, 0);
#debug concat("Texte du compteur ", Texte, "\n\n") #debug concat("Texte du compteur ", Texte, "\n\n")
text { text {
ttf "datas/ComicMono.ttf" Texte 0.1, 0 ttf "datas/ComicMono-Bold.ttf" Texte 0.1, 0
texture { T_WIP_alert } texture { T_WIP_alert }
} }
} }

View File

@ -28,7 +28,8 @@ object { Le_Decor }
camera { camera {
location Loc_cam location Loc_cam
look_at Pos_RedB_1 + <0.02, 1.16, 0> #local H = 1.16 + (NormClock*0.20);
look_at Pos_RedB_1 + <0.02, H, 0>
// focal_point <0.37, 0.90, 0> // focal_point <0.37, 0.90, 0>
// aperture 0.046 // aperture 0.046
// blur_samples 30 // blur_samples 30

View File

@ -30,7 +30,7 @@ union {
texture { T_Wood32 rotate 37 scale 1.30 } texture { T_Wood32 rotate 37 scale 1.30 }
// texture { WIP_color } // texture { WIP_color }
#else #else
texture { T_Wood23 rotate x*87 scale 1.23 } texture { T_Wood23 rotate x*87 scale 1.33 }
// texture { T_WIP_alert } // texture { T_WIP_alert }
#end #end
// rotate -z*foo // rotate -z*foo
@ -69,7 +69,7 @@ difference {
cylinder { -y, y, 0.05 translate <Tx, 0, Tz> } cylinder { -y, y, 0.05 translate <Tx, 0, Tz> }
#end #end
translate y*0.10 translate y*0.10
texture { T_Wood17 scale 0.82 } texture { T_Wood17 rotate <10, 20, 30> scale 0.82 }
} }
#end #end
@ -104,6 +104,12 @@ union {
} }
} }
#declare HW_Anneau0 = object
{
torus { Hc_rad*0.30, 0.03 scale <1, 1.45, 1>
texture { tPlasticBlue } translate y*0.32 }
}
#declare HexaWood = object #declare HexaWood = object
{ {
union { union {
@ -113,6 +119,7 @@ union {
light_source { 0.20*y rgb <0, 0.20, 0.95> } light_source { 0.20*y rgb <0, 0.20, 0.95> }
#end #end
object { HW_Cones () translate y*0.15 } object { HW_Cones () translate y*0.15 }
object { HW_Anneau0 }
} }
} }

View File

@ -24,7 +24,7 @@ object { Le_Decor }
#declare P1 = <-25, 0.4, (SzSol/2)+4>; #declare P1 = <-25, 0.4, (SzSol/2)+4>;
#declare Pos = Interpolate(P1, P_hexawood, 0.95); #declare Pos = Interpolate(P1, NormClock, 0.95);
#declare Pos2 = <Pos.x, 0.9, Pos.z>; #declare Pos2 = <Pos.x, 0.9, Pos.z>;
// object { Repere translate Pos } // object { Repere translate Pos }

View File

@ -18,12 +18,12 @@
#include "dynamic.inc" #include "dynamic.inc"
#declare PosX = 3.95; #declare PosX = 3.95;
#declare PosY = 2.80 + (NormClock*0.28); #declare PosY = 3.80 + (NormClock*0.299);
#declare PosZ = (NormClock-0.5) * 44.27; #declare PosZ = (NormClock-0.5) * 44.27;
object { HexaCone () translate <PosX, PosY, PosZ> } object { HexaCone () translate <PosX, PosY, PosZ> }
object { HexaCone () translate <PosX+2.96, PosY+1.92, PosZ-15.5> } object { HexaCone () translate <PosX+2.96, PosY+3.22, PosZ-19.5> }
object { HexaBenz () translate <PosX-1.96, PosY+2.42, PosZ-17.5> } object { HexaBenz () translate <PosX-1.96, PosY+2.82, PosZ-17.5> }
object { Le_Decor } object { Le_Decor }

View File

@ -25,7 +25,7 @@ object { Le_Decor }
#declare CamX = Dcam * cos(radians(CK)); #declare CamX = Dcam * cos(radians(CK));
#declare CamZ = Dcam * 1.20 * sin(radians(CK)); #declare CamZ = Dcam * 1.20 * sin(radians(CK));
#declare LatZ = 2.45 + (0.8 * Cos_010(NormClock)); #declare LatZ = 2.45 + (0.9 * Cos_010(NormClock));
camera { camera {
location <CamX, 1.97, CamZ> location <CamX, 1.97, CamZ>

View File

@ -87,7 +87,7 @@ union {
// ======================================================= // =======================================================
#declare Flag = (mod(clock+33,120) < 40); #declare Flag = (mod(clock,120) < 40);
#if ( Flag ) #if ( Flag )
object { AllTheSpline scale 10 translate y*2 } object { AllTheSpline scale 10 translate y*2 }

View File

@ -19,13 +19,13 @@
object { Le_Decor } object { Le_Decor }
// object { Repere scale 2 translate y*2 } object { Repere scale 2 translate y*2 }
// ======================================================= // =======================================================
#declare Debut = <-3, 87, 161> ; #declare Debut = <-3, 89, 181> ;
#declare Fin = < 2, 91, 21> ; #declare Fin = < 2, 91, -10> ;
#declare Pos = Cos_01(NormClock); #declare Pos = sqrt(NormClock+0.04);
#declare PosCam = Interpolate(Debut, Fin, Pos); #declare PosCam = Interpolate(Debut, Fin, Pos);
#declare LatCam = PosCam + <-1, -20, -(3+(NormClock+11))>; #declare LatCam = PosCam + <-1, -20, -(3+(NormClock+11))>;

View File

@ -9,29 +9,30 @@ object {
/* le corps */ /* le corps */
merge { merge {
#local L2 = Longueur / 2; #local L2 = Longueur / 2;
#local R = 0.55; #local R = 0.25;
cylinder { <L2, 0, 0>, <-L2, 0, 0>, R } cylinder { <L2, 0, 0>, <-L2, 0, 0>, R }
sphere { <0, 0, 0>, R sphere { <0, 0, 0>, R
scale <3, 1, 1> scale <3, 1, 1>
translate x*L2 translate x*L2
} }
sphere { <-L2, 0, 0>, R }
/* le kiosque (est-ce un sous-marin ?) */ /* le kiosque (est-ce un sous-marin ?) */
sphere { <-L2, 0, 0>, R }
merge { merge {
cylinder { <0, 0, 0>, <0, L2, 0>, R/4 } #local H2 = L2 * 0.60;
cylinder { <0, 0, 0>, <0, H2, 0>, R/4 }
sphere { <0, 0, 0>, R/4 sphere { <0, 0, 0>, R/4
scale <1, 0.4, 1> translate y*L2 scale <1, 0.5, 1> translate y*H2
} }
scale <2, 1, 1> translate x*L2*0.70 scale <2.5, 1, 1> translate x*L2*0.75
} }
#local R = rand(Rng1); #local R = rand(Rng1);
#if (R < 0.333) #if (R < 0.333)
texture { WIP_color } texture { Soft_Silver }
#elseif (R < 0.666) #elseif (R < 0.666)
texture { GoldDark } texture { GoldDark }
#else #else
texture { Flashy scale 17 } texture { Lightning1 rotate z*90 scale 0.11 }
#end #end
} }
} }
@ -43,12 +44,12 @@ object {
*/ */
#macro Une_Arche (Val) #macro Une_Arche (Val)
object { object {
#debug concat(" Arche, val = ", str(Val, 6, 4), "\n") // #debug concat(" Arche, val = ", str(Val, 6, 4), "\n")
merge { merge {
#local Ha = 2; #local Ha = 2;
// mettre une base de la colonne // mettre une base de la colonne
cylinder { <-1, 0, 0>, <-1, 0.20, 0> Val*1.29 } cylinder { <-1, 0, 0>, <-1, 0.20, 0> Val*1.49 }
cylinder { < 1, 0, 0>, < 1, 0.20, 0> Val*1.27 } cylinder { < 1, 0, 0>, < 1, 0.20, 0> Val*1.41 }
cylinder { <-1, 0, 0>, <-1, Ha, 0>, Val } cylinder { <-1, 0, 0>, <-1, Ha, 0>, Val }
cylinder { < 1, 0, 0>, < 1, Ha, 0>, Val } cylinder { < 1, 0, 0>, < 1, Ha, 0>, Val }
@ -72,16 +73,15 @@ merge {
#elseif (R < 0.75) #elseif (R < 0.75)
texture { T_Stone32 scale 5+rand(Rng1) } texture { T_Stone32 scale 5+rand(Rng1) }
#else #else
texture { T_Stone36 scale 6+rand(Rng1) } texture { T_Stone36 scale 3+rand(Rng1) }
#end #end
} }
} }
#end #end
#declare Les_Arches = object #macro Les_Arches (EK)
{
union { union {
#local E = 1.333 + (rand(Rng1) * 0.50); #local E = EK + (rand(Rng1) * 0.50);
object { Une_Arche (0.20) } object { Une_Arche (0.20) }
object { Une_Arche (0.16) translate -z*E } object { Une_Arche (0.16) translate -z*E }
object { Une_Arche (0.16) translate z*E } object { Une_Arche (0.16) translate z*E }
@ -90,7 +90,7 @@ union {
object { Une_Arche (0.08) translate -z*E*3 } object { Une_Arche (0.08) translate -z*E*3 }
object { Une_Arche (0.08) translate z*E*3 } object { Une_Arche (0.08) translate z*E*3 }
} }
} #end // macro
// ============================================================== // ==============================================================
/* /*
@ -111,7 +111,7 @@ union {
difference { difference {
#local KX = 0.60; #local KX = 0.60;
#local KH = 1.80 + rand(Rng1) ; #local KH = 1.80 + rand(Rng1) ;
#debug concat(" Cahute_0, KH = ", str(KH, 6, 4), "\n") // #debug concat(" Cahute_0, KH = ", str(KH, 6, 4), "\n")
#local KZ = KX + (0.24*rand(Rng1)); #local KZ = KX + (0.24*rand(Rng1));
box { <-KX, 0, -KZ>, <KX, KH, KZ> } box { <-KX, 0, -KZ>, <KX, KH, KZ> }