diff --git a/Makefile b/Makefile index fb95f78..6c32d6b 100644 --- a/Makefile +++ b/Makefile @@ -3,7 +3,8 @@ DIMS = -W1600 -H1200 # POVOPT = +q9 +a0.02 -d POVOPT = +q9 +A -d POVDEP = contexte.inc elements.inc hexabenz.inc \ - globals.inc hexawood.inc datas/hf.png + globals.inc hexawood.inc datas/hf.png \ + dynamic.inc trident.inc CK=230 @@ -11,7 +12,7 @@ CK=230 PNG: essai.png scene.png topview.png passage.png \ orbite.png hexabenz.png escadrille.png \ hexacone.png remote.png survol.png cutoff.png - echo "PNG ck=$(CK) done" >> WS/log + echo "make PNG ck=$(CK) done" >> WS/log topview.png: topview.pov Makefile $(POVDEP) diff --git a/contexte.inc b/contexte.inc index 8ee0884..7c58d09 100644 --- a/contexte.inc +++ b/contexte.inc @@ -11,22 +11,6 @@ * une cabane pour faire riche. */ -/* - * deux textures - */ -#declare T_Beton_1 = texture -{ -pigment { color <0.9, 0.8, 0.8> } -normal { dents 0.75 scale 0.3 } -finish { roughness 1.00 } -} - -#declare T_Beton_2 = texture -{ -pigment { color <0.7, 0.6, 0.6> } -normal { dents 0.25 scale 2 } -finish { roughness 1.00 } -} /* * une seule forme de cabane pour le moment @@ -38,7 +22,7 @@ difference { box { <-0.90, 0, 0>, <0.90, Hc, 0.80> } box { <-0.89, 0.01, -1> <0.89, Hc-0.01, 0.79> } #local Hc = Hc * 0.75; - cylinder { <-1, Hc, -0.23>, <1, Hc, 0.23>, 0.09 } + cylinder { <-1, Hc, -0.29>, <1, Hc, 0.29>, 0.09 } #undef Hc } } @@ -85,7 +69,7 @@ union { #undef Dx #undef Dz } -texture { T_Stone2 rotate 49 scale 0.22 } +texture { T_Grnt7 rotate 49 scale 0.22 } } #declare GroundBase_b = object @@ -98,7 +82,7 @@ union { object { GroudBase_coin translate <-Sz, 0, Sz> } object { GroudBase_coin translate < Sz, 0, Sz> } } -texture { T_Stone6 rotate 9 scale 0.32 } +texture { T_Grnt27 rotate 9 scale 0.32 } #undef Sz } @@ -124,7 +108,7 @@ union { intersection { sphere { 0, R_gyro scale <1, 1.414, 1> } box { <-1, 0, -1>, <1, 1, 1> } - translate y*(H_gyro+H_gylampe+0.01) + translate y*(H_gyro+H_gylampe+0.02) } #if (rand(Rng1) < 0.5) texture { T_Stone25 scale 1+rand(Rng1) } @@ -137,17 +121,18 @@ union { #macro GyroPhare_lampe () union { difference { - cylinder { 0, y*0.20, R_gyro } - cylinder { y*0.01, y*0.19, R_gyro*0.97 } + cylinder { 0, y*H_gylampe, R_gyro } + cylinder { y*0.01, y*(H_gylampe-0.01), R_gyro*0.97 } #local WB = 0.015; - box { <-1, 0.03, -WB>, <1, 0.18, WB> } - box { <-WB, 0.03, -1>, } + box { <-1, 0.03, -WB>, <1, (H_gylampe-0.03), WB> } + box { <-WB, 0.03, -1>, } #undef WB pigment { color Gray90 } - #local Ro = 0.5-rand(Rng1); - #if (abs(Ro) < 0.01) + #local Ro = 5.89*(0.5-rand(Rng1)); + #if (abs(Ro) < 0.06) #local Ro = Ro * 10; #end + #undef Ro rotate y*(0.5-rand(Rng1)) * clock } light_source { y*0.10 @@ -169,7 +154,7 @@ union { #macro Les_GyroPhares () union { - #local E = SzSol * 0.485; + #local E = SzSol * 0.488; object { GyroPhare () translate <-E, 0, -E> } object { GyroPhare () translate < E, 0, -E> } object { GyroPhare () translate <-E, 0, E> } @@ -207,13 +192,13 @@ union { object { HexaBalls texture { Lightning1 scale 0.33 } rotate - translate <5, -1.1+1.01*Cos_010(NormClock), 7> + translate <2, -1.1+1.01*Cos_010(NormClock), 4> } object { HexaBalls texture { Lightning2 scale 0.56 } - // rotate <-clock, clock*0.33333, clock> - translate <7, -1+0.92*Cos_010(NormClock), -6> + rotate <-clock, clock*0.33333, clock> + translate <5, -1+0.92*Cos_010(NormClock), -3> } } } @@ -246,14 +231,14 @@ height_field { png "datas/hf.png" smooth translate <-.5, 0, -.5> - scale + scale texture { pigment { // color DarkGreen - image_map { png "datas/noise.png" } + image_map { png "datas/cmap.png" } rotate x*90 translate <-.5, 0, -.5> - scale + scale } // normal { bumps 0.035 scale 0.186 } finish { phong 0.105 } @@ -261,14 +246,28 @@ height_field { } } +/* ======================================================= */ + #declare Underground = object { -plane { y, -1.75 } +difference { + // plane { y, 0 } + #local Big = 300; + box { <-Big, -0.01, -Big>, < Big, 0.01, Big> } + #undef Big + #local W = SzSol * 1.204; + cylinder { <-W, -1, -W>, <-W, 1, -W>, 5 } + cylinder { <-W, -1, W>, <-W, 1, W>, 7 } + cylinder { < W, -1, W>, < W, 1, W>, 9 } + #undef W + } texture { pigment { color Gray20 } - normal { bumps 0.38 scale 4 } + normal { bumps 0.38 scale 3 } finish { phong 0.125 } } +rotate y*35 +translate -y*2.55 } /* ======================================================= */ @@ -311,6 +310,34 @@ union { } } +/* ======================================================= */ +/* + * nouvel éclairage du 10 février 2025 + */ +#declare Quad_lampe = object +{ +light_source { + 0 + color White + fade_distance SzSol * 0.40 + fade_power 1.20 + } +} + +#declare QuadriLight = object +{ +#local T = E_QuadriLight; +#local H = H_QuadriLight; +// #local H = 5; + +union { + object { Quad_lampe translate <-T, H, -T> } + object { Quad_lampe translate < T, H, -T> } + object { Quad_lampe translate <-T, H, T> } + object { Quad_lampe translate < T, H, T> } + } +rotate -12 * y +} /* ======================================================= */ #declare Les_Lumieres = object @@ -358,14 +385,14 @@ sky_sphere { pigment { gradient y color_map { - [ 0.2 color Gray10 ] - [ 0.4 color Gray60 ] - [ 0.7 color Black ] - [ 0.8 color White ] - [ 1.0 color Gray10 ] + [ 0.2 color Gray10 ] + [ 0.4 color rgb <.4, .3, .8> ] + [ 0.7 color Gray20 ] + [ 0.8 color rgb <.95, .7, .6> ] + [ 1.0 color Gray10 ] } turbulence 3.14159 + 0.74 * Cos_010(NormClock) - scale 1.804 + scale 1.620 // translate -1 } #local Kem = 0.09; @@ -374,6 +401,15 @@ sky_sphere { // } /* ======================================================= */ + + /* XXX XXX */ + light_source { + <-4, 54, -17> + colour Gray40 + parallel + point_at 0 + } + /* * Et on rassemble tous les éléments... */ @@ -384,7 +420,8 @@ union { object { Underground } object { La_GroundBase } // object { Les_Bibelots } - object { Les_Lumieres } + // object { Les_Lumieres } + object { QuadriLight } object { Les_GyroPhares () } } } diff --git a/cutoff.pov b/cutoff.pov index 85b9d69..d13959b 100644 --- a/cutoff.pov +++ b/cutoff.pov @@ -15,17 +15,17 @@ // #debug concat("------ cutoff clock = ", str(clock,5,0),"\n") + #declare Kbox = (2.03*NormClock); - -/* this one is for debugging */ -// object { OpenBox translate <0, 1.5, Kbox> } - difference { object { HexaCone () } box { -1, 1 translate z*Kbox } translate y*1.5 } +/* this one is for debugging */ +// object { OpenBox translate <0, 1.5, Kbox> } + // ======================================================= object { Le_Decor } @@ -35,8 +35,9 @@ object { Le_Decor } #local CamX = -2.7 + (1.4*Cos_01(NormClock)); #local CamY = 2.58 + (0.034*sqrt(NormClock)); +#local CamZ = 5.35; camera { - location + location look_at <0, 1.6, 0> angle 39 - 5*Cos_01(NormClock) } diff --git a/dynamic.inc b/dynamic.inc new file mode 100644 index 0000000..8949e63 --- /dev/null +++ b/dynamic.inc @@ -0,0 +1,30 @@ + +object { Les_Bibelots rotate y*clock translate <28, -1, -32> } + + + +#declare HC_A = <0.03, 1.18, 0.17>; +#declare HC_B = <2.0, 5.0, 9.0>; +#declare HC_P = Interpolate(HC_A, HC_B, Cos_01(NormClock)); +#declare RX = -9+(NormClock*11); +#declare RY = 122 * (exp(NormClock) - 1.0); +object { HexaCone () + rotate + translate HC_P + } + +#declare HB_A = <-4.0, 7.0, 5.0>; +#declare HB_B = <0.03, 1.22, 0.17>; +#declare HB_P = Interpolate(HB_A, HB_B, Cos_01(NormClock)); +#declare RY = -75 * (exp(NormClock*2) - 1.0); +#declare RZ = -7+(7*NormClock); +object { HexaBenz () + rotate <6, RY, RZ> translate HB_P } + +/* + * nouveau 11 fevrier 2025 + */ +#declare A = <-21, -1.9, (SzSol/2)+8>; +#declare B = < 24, -2.4, (SzSol/2)+5>; +#declare P = Interpolate(A, B, NormClock); +object { HexaWood translate P } diff --git a/elements.inc b/elements.inc index 7f46e29..8ee3854 100644 --- a/elements.inc +++ b/elements.inc @@ -40,7 +40,8 @@ union { #local xR = (rand(Rng2)-0.5000) * kR; #local yR = (rand(Rng2)-0.5000) * kR; #local zR = (rand(Rng2)-0.5000) * kR; - #local Value = sin( (NormClock * 26.536) + (3.14*rand(Rng1)) ); + #local Value = sin( (NormClock * 26.536) + + (3.14*rand(Rng1)) ); #if (Value < 0) #local Couleur = rgb ; #else @@ -56,6 +57,8 @@ union { texture { New_Penny } // } #end + +// --------------------------------------------------------- /* * */ @@ -117,7 +120,7 @@ texture { T_Brass_1C scale 6.50 } { difference { merge { - sphere { 0, 0.0137 scale <1, 1, 4.70> + sphere { 0, 0.0141 scale <1, 1, 4.70> translate <0, 0.26, -0.17> } cone { <0, -0.1, 0>, 0.114, <0, 0.26, -0.17>, 0.0096 scale <0.15, 1, 1> } @@ -135,11 +138,14 @@ union { } } +// --------------------------------------------------------- + #declare DTa = 0.278; #declare DTb = 0.030; -#declare HexaCone_head = object -{ +// XXX #declare HexaCone_head = object +// XXX { +#macro HexaCone_head () merge { difference { torus { DTa, DTb } @@ -148,13 +154,14 @@ merge { } sphere { 0, DTb*1.65 translate -DTa*x } sphere { 0, DTb*1.65 translate DTa*x } + #if (rand(Rng1) < 0.8) + texture { Orange_Glass } + #else + texture { Dark_Green_Glass } + #end } -#if (rand(Rng1) < 0.8) - texture { Orange_Glass } -#else - texture { Dark_Green_Glass } -#end -} +#end // macro +// XXX } /* ------------------------------------------ * new Sat Dec 21 11:17:36 PM UTC 2024 @@ -253,7 +260,7 @@ rotate -y*90 union { object { HexaCone_Body () } #local T = 0.55; - object { HexaCone_head translate <0, 0, T+DTa> } + object { HexaCone_head () translate <0, 0, T+DTa> } #if ( (rand(Rng1) > 0.27) ) object { HexaCone_radar_A translate <0, T+0.18, 0> } #else diff --git a/escadrille.pov b/escadrille.pov index 35fb71a..b72de1e 100644 --- a/escadrille.pov +++ b/escadrille.pov @@ -14,22 +14,22 @@ // ======================================================= -#for (idX, 0, 4) - #for (idZ, 0, 4) +#for (idX, 0, 5) + #for (idZ, 0, 5) - #local posX = (idX * 4.56) - 9.5 + (rand(Rng1)-0.5); - #local posY = 2.9 + (1.2*(rand(Rng1)-0.5)); - #local posZ = (idZ * 4.24) - 7.9; + #local posX = (idX * 4.72) - 11.6 + (rand(Rng1)-0.5); + #local posY = 3.1 + (1.2*(rand(Rng1)-0.5)); + #local posZ = (idZ * 4.37) - 7.9; #local Rx = (rand(Rng1) - 0.5) * 8; #local Ry = (rand(Rng1) - 0.5) * 14; #local Rz = (rand(Rng1) - 0.5) * 11; #if (rand(Rng1) < 0.515) object { HexaCone () - rotate <0, Ry, Rz> + rotate translate } #else object { HexaBenz () - rotate <0, Ry, Rz> + rotate translate } #end #end @@ -41,12 +41,12 @@ object { Le_Decor } // object { Repere scale 5 translate y } -#local CamX = -8.7+(6.6*NormClock); -#local CamY = 2.1+(13.37*Cos_01(NormClock)); -#local CamZ = 15.86+(12.9*Cos_01(NormClock)); +#local CamX = -8.7 + (6.6*Cos_01(NormClock)); +#local CamY = 2.95 + (18.64*Cos_01(NormClock)); +#local CamZ = 16.86 + (12.9*Cos_01(NormClock)); camera { location - look_at <0.0, 0.5, 0> + look_at <0.0, -NormClock, 0> angle 60 - (3.97 * NormClock) } diff --git a/essai.pov b/essai.pov index 62b5fcb..3a6febd 100644 --- a/essai.pov +++ b/essai.pov @@ -15,59 +15,41 @@ // ======================================================= +#include "dynamic.inc" -// ======================================================= -/* - * nouvel éclairage du 10 février 2025 - */ -#declare Quad_lampe = object -{ -light_source { - 0 - color Gray90 - fade_distance SzSol / 2 - fade_power 1.5 - } -} - -#declare QuadriLight = object -{ -#local T = E_QuadriLight; -#local H = H_QuadriLight * 2; -// #local H = 5; - -union { - object { Quad_lampe translate <-T, H, -T> } - object { Quad_lampe translate < T, H, -T> } - object { Quad_lampe translate <-T, H, T> } - object { Quad_lampe translate < T, H, T> } - } -} // ======================================================= // object { OpenBox translate y*1.30 } +#if (0) #local RX = -11 + (10*sin(NormClock*9.81) + 3*sin(NormClock*23)); -#local RZ = 26 - (14*Cos_010(NormClock)); -object { HexaWood rotate translate y*0.777 } -// object { QuadriPole translate <-3, 0, 2> } +#local RZ = 26 - (14*Cos_010(NormClock)); +object { HexaWood rotate translate <9, 2.777, -11> } +#end -object { QuadriLight } -// object { Le_Decor } - object { Le_Sol } - object { Underground } - // object { La_GroundBase } - object { Les_GyroPhares () } +/* +#declare A = <-21, -0.9, SzSol+9>; +#declare B = < 33, -0.7, SzSol+7>; +#declare P = Interpolate(A, B, NormClock); +object { HexaWood translate P } +*/ -// object { Repere translate y*2 } +object { Repere scale 10 translate y*6 } +object { Le_Decor } // ======================================================= -#local CamX = -2.7 + (3.8*Cos_010(NormClock)); -#local CamY = 0.81 + (4*sqrt(NormClock)); -#local CamZ = 6.9 - (0.8*Cos_010(NormClock)); +#local CamX = -2.7 + (2.8*Cos_010(NormClock)); +#local CamY = 0.81 + (3*exp(NormClock)); +#local CamZ = 7.777 - (0.8*Cos_010(NormClock)); + +#local K = 8; +#local CamX = CamX * K; +#local CamY = CamY * K * 2; +#local CamZ = CamZ * K; + camera { location - look_at <0, 0.92, 0> - angle 32 + 4*Cos_01(NormClock) + look_at <0, 0.98, 0> + angle 32 - 5*Cos_01(NormClock) } diff --git a/globals.inc b/globals.inc index 925de4a..50e5ce8 100644 --- a/globals.inc +++ b/globals.inc @@ -11,7 +11,7 @@ global_settings { #include "stones.inc" #include "woods.inc" -#declare Rng1 = seed(1337); +#declare Rng1 = seed(1664); #declare foo = rand(Rng1); #declare Rng2 = seed(now*24*60*60); #declare bar = rand(Rng2); @@ -24,6 +24,7 @@ global_settings { */ #declare SzSol = 34; + #declare SzBase = 2.85; #declare H_base = 0.10; @@ -32,10 +33,10 @@ global_settings { #declare R_gyro = 0.09; #declare H_gyro = 1.20; -#declare H_gylampe = 0.20; +#declare H_gylampe = 0.25; -#declare H_QuadriLight = 20; -#declare E_QuadriLight = SzSol * 0.85; +#declare H_QuadriLight = 36; +#declare E_QuadriLight = SzSol * 1.35; /* ------------------------------------------------------------ */ /* @@ -66,6 +67,23 @@ pigment { rgb <0.40, 0.50, 0.70> } finish { metallic 0.50 reflection 0.55 } } +/* + * deux textures + */ +#declare T_Beton_1 = texture +{ +pigment { color <0.9, 0.8, 0.8> } +normal { dents 0.75 scale 0.3 } +finish { roughness 1.00 } +} + +#declare T_Beton_2 = texture +{ +pigment { color <0.7, 0.6, 0.6> } +normal { dents 0.25 scale 2 } +finish { roughness 1.00 } +} + /* ------------------------------------------------------------ */ /* * Usefull macros diff --git a/hexabenz.inc b/hexabenz.inc index 0aa5450..4e52d0f 100644 --- a/hexabenz.inc +++ b/hexabenz.inc @@ -9,7 +9,7 @@ union { #local RA = R_basecone; #local RB = 0.001; cone { 0, RA, y*0.89, 0.0001 } - sphere { 0, RA*1.098 scale <1, 0.62, 3.03> translate -0.02*y } + sphere { 0, RA*1.098 scale <1, 0.58, 3.03> translate -0.02*y } } // } #end @@ -18,7 +18,7 @@ union { // { union { #for (foo, 0, 360, 60) - #local E = 0.35; + #local E = 0.31; #local Tx = E * sin(radians(foo)); #local Ty = E * cos(radians(foo)); object { @@ -46,14 +46,14 @@ union { // ------------------------------------------------------ -#declare R_Tube = 0.20; +#declare R_Tube = 0.18; #local L_Tube = 0.54; #macro Benz_Tubules () merge { #local E = R_Tube * 0.75; - #local R = 0.01; - #for (foo, 0, 360, 20) + #local R = 0.009; + #for (foo, 0, 360, 30) #local Tx = E * sin(radians(foo)); #local Ty = E * cos(radians(foo)); #local Dza = z * 0.20; @@ -62,7 +62,7 @@ merge { sphere { -Dza, R*1.8 translate } sphere { Dzb, R*1.8 translate } #end - #if ( rand(Rng1) < 0.333) + #if ( rand(Rng1) < 0.360) texture { Orange_Glass } #else texture { Yellow_Glass } @@ -70,8 +70,9 @@ merge { } #end -#declare Benz_Fuseau = object -{ +// XXX #declare Benz_Fuseau = object +// XXX { +#macro Benz_Fuseau () difference { sphere { 0, R_Tube*0.39 } sphere { 0, R_Tube*0.37 } @@ -79,13 +80,19 @@ difference { cylinder { < 1, 0, -1>, <-1, 0, 1>, R_Tube*0.21 } } scale <1, 1, 4.4> -texture { Shadow_Clouds scale 0.56 } -} +#if ( rand(Rng1) < 0.360) + texture { Shadow_Clouds scale 0.56 } +#else + texture { WIP_color } +#end + +#end // end macro +// XXX } #declare Benz_Fuseau_Flash = object { union { - object { Benz_Fuseau } + object { Benz_Fuseau () } light_source { 0, rgb fade_distance 0.96 @@ -93,14 +100,20 @@ union { } } -rotate -z*clock*6 +rotate -z*clock*8 } #declare Benz_Cylindre = object { difference { union { - cylinder { z*L_Tube*1.5, -z*L_Tube, R_Tube } + cylinder { z*L_Tube*1.6, -z*L_Tube, R_Tube } + /* les deux bouts du cylindre creux */ + torus { R_Tube, 0.012 + rotate x*90 translate z*L_Tube*1.6 } + torus { R_Tube, 0.012 + rotate x*90 translate -z*L_Tube } + /* cette sphere devrait devenir un vrai cockpit ? */ sphere { z*L_Tube*1.18, R_Tube*0.72 @@ -129,7 +142,7 @@ union { // #declare HexaBenz = object // { union { - #local Rk = (rand(Rng1)-0.5) * 1024; + #local Rk = (rand(Rng1)-0.5) * 1312; object { Benz_Cones () rotate z*NormClock*Rk} object { Benz_Tube () } } diff --git a/hexabenz.pov b/hexabenz.pov index a7da8c7..41bb912 100644 --- a/hexabenz.pov +++ b/hexabenz.pov @@ -24,14 +24,12 @@ object { HexaBenz () translate < K, 1.67, 0> } object { Le_Decor } -// light_source { <19, 7, 14>, rgb <0.77, 0.79, 0.80> } -// light_source { <19, 9, -14>, rgb <0.87, 0.79, 0.70> } // object { Repere scale 2 } camera { - location <-1.9+(8*NormClock), 0.90, 7.59-NormClock> - look_at <0.37, 1.37, 0> + location <-3.9+(11*NormClock), 1.90, 7.59-NormClock> + look_at <0.17, 1.47, 0> // focal_point <0.37, 0.0, 0> // aperture 0.046 // blur_samples 30 diff --git a/hexacone.pov b/hexacone.pov index c3927d7..abda359 100644 --- a/hexacone.pov +++ b/hexacone.pov @@ -10,33 +10,26 @@ #include "elements.inc" #include "hexabenz.inc" -#declare Cone_Repere = object -{ -union { - object { HexaCone () } - // object { Repere translate <-0.4, -0.2, -0.5> } - } -} - #local K = 1.48; -object { Cone_Repere rotate y*90 translate <-K, 1.7, 1> } -object { Cone_Repere translate < K, 1.6, 1> } +object { HexaCone () rotate y*90 translate <-K, 1.7, 1> } +object { HexaCone () translate < K, 1.6, 1> } object { Le_Decor } // ======================================================= -light_source { <19, 7, 14>, rgb <0.77, 0.79, 0.80> } -light_source { <19, 9, -14>, rgb <0.87, 0.79, 0.70> } +// light_source { <19, 7, 14>, rgb <0.77, 0.79, 0.80> } +// light_source { <19, 9, -14>, rgb <0.87, 0.79, 0.70> } // object { Repere scale 2 } camera { - location <-1.9+(8*NormClock), 0.70, 7.59-NormClock> - look_at <0.37, 1.25, 0> + location + <-1.9+(8*NormClock), 0.70+NormClock, 7.59-NormClock> + look_at <0.07, 1.55, 0> // focal_point <0.37, 0.90, 0> // aperture 0.046 // blur_samples 30 - angle 55 - 28 * Cos_01(NormClock) + angle 55 - 26 * Cos_01(NormClock) } diff --git a/passage.pov b/passage.pov index 200340e..caa838a 100644 --- a/passage.pov +++ b/passage.pov @@ -7,25 +7,25 @@ #include "globals.inc" -#include "colors.inc" -#include "metals.inc" -#include "textures.inc" - #include "contexte.inc" #include "elements.inc" #include "hexabenz.inc" +#include "hexawood.inc" // --------------------------------------- +#include "dynamic.inc" + +#declare PosX = 2.95; +#declare PosY = 2.60 + (NormClock*0.28); +#declare PosZ = (NormClock-0.5) * 53.27; +object { HexaCone () translate } + +object { HexaCone () translate } +object { HexaBenz () translate } + object { Le_Decor } -#declare PosX = 1.55; -#declare PosY = 2.20 + (NormClock*0.28); -#declare PosZ = (NormClock-0.5) * 53.27; - -object { HexaBenz () translate } -object { HexaCone () translate } -object { HexaCone () translate } #if ( (clock < 141) ) light_source { @@ -50,7 +50,7 @@ light_source { #end camera { - location <-1.76, 1.03, 9.76> + location <-2.76, 1.03, 9.76> look_at // focal_point <0, 1, 0> // aperture 0.046 diff --git a/remote.pov b/remote.pov index 1bb30ed..f1b7080 100644 --- a/remote.pov +++ b/remote.pov @@ -7,40 +7,35 @@ #include "globals.inc" -#include "colors.inc" -#include "metals.inc" -#include "textures.inc" - #include "contexte.inc" #include "elements.inc" #include "hexabenz.inc" #include "hexawood.inc" -object { Le_Decor } - #declare A = <-SzSol, 16, -8>; #declare B = ; #declare P = Interpolate(A, B, NormClock); object { HexaCone () rotate y*((6*NormClock)+80) translate P } -// object { HexaCone () rotate z*9.1 translate <5, 3, -8> } -object { HexaBenz () rotate y*(clock/9) translate <-4, 2, -5> } +#include "dynamic.inc" + +object { HexaBenz () rotate y*(clock/9) translate <-9, 3, 7> } // --------------------------------------------------------- -#declare A = <-21, -0.9, SzSol+9>; -#declare B = < 33, -0.7, SzSol+7>; +#declare A = <-15, -1.9, SzSol>; +#declare B = < 23, -0.7, SzSol>; #declare P = Interpolate(A, B, NormClock); object { HexaWood translate P } -// cylinder { A, B, 0.10 pigment { color Cyan } } - // --------------------------------------------------------- -// object { Repere scale 3 translate y } +object { Le_Decor } + +// object { Repere scale 3 translate } #local DistCam = 239; -#local CK = 0.70 * NormClock; +#local CK = 0.56 + (0.72 * NormClock); #declare CamX = DistCam * sin(CK); #declare CamY = 28; #declare CamZ = DistCam * cos(CK); diff --git a/scene.pov b/scene.pov index c944fee..e74e251 100644 --- a/scene.pov +++ b/scene.pov @@ -10,20 +10,18 @@ #include "contexte.inc" #include "elements.inc" #include "hexabenz.inc" +#include "hexawood.inc" + +#include "dynamic.inc" + +// --------------------------------------------------------- object { Le_Decor } -object { HexaCone () - rotate < 3, 0, -4> rotate y*17 translate y*1.41 } - -object { HexaBenz () - rotate <6, 40, -7> translate <-8, 3, 7> } - -#declare CK = 96 + (clock * 1); -#declare Dcam = 2.42; +#declare CK = 96 + (clock * 0.36); +#declare Dcam = 3.55; #declare CamX = Dcam * sin(radians(CK)); #declare CamZ = Dcam * 1.20 * cos(radians(CK)); -#declare CamZ = CamZ - 0.11; // why ? #declare Lat = <0.03, 1.18, 0.17>; camera { @@ -35,7 +33,3 @@ camera { angle 70 } -/** -light_source { , - rgb <0.47, 0.65, 0.49> } -**/ diff --git a/survol.pov b/survol.pov index 111dc9c..5faaa00 100644 --- a/survol.pov +++ b/survol.pov @@ -17,19 +17,14 @@ /* * on fait passer un hexatruc */ -#declare A = <-SzSol, 16, 8>; -#declare B = < SzSol+4, 18, 7>; +#declare A = <-SzSol, 16, 9>; +#declare B = < SzSol+4, 18, 11>; #declare P = Interpolate(A, B, NormClock); object { HexaCone () rotate y*((12*NormClock)+80) translate P } -/* - * nouveau 11 fevrier 2025 - */ -#declare A = <-21, -0.9, (SzSol/2)+1>; -#declare B = < 24, 0.7, (SzSol/2)+9>; -#declare P = Interpolate(B, A, NormClock); -object { HexaWood translate P } +#include "dynamic.inc" + object { Le_Decor } @@ -38,8 +33,8 @@ object { Le_Decor } // ======================================================= -#declare Debut = <-3, 47, 47> ; -#declare Fin = < 2, 43, 7> ; +#declare Debut = <-3, 57, 47> ; +#declare Fin = < 2, 53, 7> ; #declare Pos = Cos_01(NormClock); #declare PosCam = Interpolate(Debut, Fin, Pos); diff --git a/topview.pov b/topview.pov index f753581..6eac9c6 100644 --- a/topview.pov +++ b/topview.pov @@ -12,17 +12,20 @@ #include "hexabenz.inc" #include "hexawood.inc" -object { Le_Decor } +/* XXX #declare TrX = 1.84 * sqrt(NormClock); #declare TrY = 0.90 + (3.5 * Cos_01(NormClock)); #declare TrZ = 9.999 * sqrt(NormClock); #declare TrH = ; #declare RrY = 97 * sqrt(NormClock); object { HexaCone () rotate y*RrY translate TrH } +*/ -object { HexaCone () rotate z*9.1 translate <5, 3, -8> } -object { HexaBenz () translate <-4, 2, -6> } +#include "dynamic.inc" + +object { HexaCone () rotate z*9.1 translate <7, 3, -8> } +object { HexaBenz () translate <-9+NormClock, 2, -6> } /* * nouveau 11 fevrier 2025 @@ -32,11 +35,12 @@ object { HexaBenz () translate <-4, 2, -6> } #declare P = Interpolate(A, B, NormClock); object { HexaWood translate P } -// light_source { <-16, 17, -24>, rgb <0.51, 0.65, 0.40> } // object { Repere scale 2 } +object { Le_Decor } + #declare CamY = 31 + (13.37*Cos_01(NormClock)); -#declare LatY = -3 + NormClock; +#declare LatY = -3 + (1.12*NormClock); camera { location <-3.60, CamY, 21.09> diff --git a/trident.inc b/trident.inc new file mode 100644 index 0000000..5be4f73 --- /dev/null +++ b/trident.inc @@ -0,0 +1,12 @@ + + + +/* ------------------------------------------------------ + * + */ + + + + + +