Compare commits

...

3 Commits

Author SHA1 Message Date
Tonton Th
0285a14e02 multiple tweakings... 2025-01-02 01:30:37 +01:00
Tonton Th
cf95106744 add orbital view 2025-01-02 01:27:23 +01:00
Tonton Th
cdc0fb6780 brotching the build system 2025-01-02 01:23:49 +01:00
11 changed files with 170 additions and 62 deletions

View File

@ -28,17 +28,38 @@ union {
object { HexaBalls object { HexaBalls
texture { Lightning1 scale 0.33 } texture { Lightning1 scale 0.33 }
rotate <clock/3, clock/6, clock/9> rotate <clock/3, clock/6, clock/9>
translate <3, -1+1.11*Cos_010(NormClock), 5> translate <3, -1.6+1.01*Cos_010(NormClock), 5>
} }
object { HexaBalls object { HexaBalls
texture { Lightning2 scale 0.56 } texture { Lightning2 scale 0.56 }
// rotate <-clock, clock*0.62, clock> // rotate <-clock, clock*0.62, clock>
translate <5, -1+0.92*Cos_010(NormClock), -4> translate <5, -1+0.42*Cos_010(NormClock), -4>
} }
} }
} }
/* ------------------------------------------------------------ */ /* ------------------------------------------------------------ */
#declare RHBlo = 0.24;
#declare RHBlo2 = RHBlo * 0.56;
#declare HexaBlob = object
{
blob {
// threshold 0.01 + NormClock
threshold 0.01
sphere { <0, 0, 0>, RHBlo, 1 }
#local E = RHBlo * 1.210;
#local W = 0.1;
sphere { <-E, 0, 0>, RHBlo2, W }
sphere { < E, 0, 0>, RHBlo2, W }
sphere { < 0, -E, 0>, RHBlo2, W }
sphere { < 0, E, 0>, RHBlo2, W }
sphere { < 0, 0, -E>, RHBlo2, W }
sphere { < 0, 0, E>, RHBlo2, W }
}
}
// =======================================================
#declare Le_Sol = object #declare Le_Sol = object
{ {
@ -107,6 +128,7 @@ sky_sphere {
pigment { pigment {
gradient y gradient y
color_map { color_map {
[ 0.2 color Gray10 ]
[ 0.5 color Orange*0.7 ] [ 0.5 color Orange*0.7 ]
[ 1.0 color Yellow*0.5 ] [ 1.0 color Yellow*0.5 ]
} }

View File

@ -38,7 +38,7 @@ union {
#local xR = (rand(Rng2)-0.5000) * kR; #local xR = (rand(Rng2)-0.5000) * kR;
#local yR = (rand(Rng2)-0.5000) * kR; #local yR = (rand(Rng2)-0.5000) * kR;
#local zR = (rand(Rng2)-0.5000) * kR; #local zR = (rand(Rng2)-0.5000) * kR;
#local Value = sin(NormClock * 25.536); #local Value = sin(NormClock * 26.536);
#if (Value < 0) #if (Value < 0)
#local Couleur = rgb <abs(Value), 0, 0>; #local Couleur = rgb <abs(Value), 0, 0>;
#else #else

View File

@ -18,43 +18,23 @@
// ======================================================= // =======================================================
#declare RHBlo = 0.25;
#declare RHBlo2 = RHBlo * 0.55;
#declare HexaBlob = object
{
blob {
// threshold 0.01 + NormClock
threshold 0.01
sphere { <0, 0, 0>, RHBlo, 1 }
#local E = RHBlo * 1.210;
#local W = 0.1;
sphere { <-E, 0, 0>, RHBlo2, W }
sphere { < E, 0, 0>, RHBlo2, W }
sphere { < 0, -E, 0>, RHBlo2, W }
sphere { < 0, E, 0>, RHBlo2, W }
sphere { < 0, 0, -E>, RHBlo2, W }
sphere { < 0, 0, E>, RHBlo2, W }
}
}
// =======================================================
object { object {
HexaBlob HexaBlob
#local SC = 1.111 + abs(sin(NormClock * 4 * 3.14159)); #local SC = 1.71 + 0.5 * abs(sin(NormClock * 3 * 3.14159));
texture { T_Stone26 texture { T_Stone26
scale SC scale SC
translate 2*y*NormClock translate 3*y*NormClock
} }
translate < 0, 1, 0> translate < 0, 1, 0>
} }
object { Repere } // object { Le_Decor }
// object { Repere }
#if (0) #if (0)
object { HexaBalls object { HexaBalls
#local SC = 0.10 + abs(sin(NormClock * 4 * 3.14159)); #local SC = 0.18 + abs(sin(NormClock * 4 * 3.14159));
texture { Lightning2 scale SC } texture { Lightning2 scale SC }
translate <-0.80, 1, 0> } translate <-0.80, 1, 0> }
#end #end
@ -67,7 +47,7 @@ light_source { <-8, 7, -9>, rgb <0.81, 0.65, NormClock> }
light_source { < 11, 7, 4>, rgb <1-NormClock, 0.28, 0.80> } light_source { < 11, 7, 4>, rgb <1-NormClock, 0.28, 0.80> }
camera { camera {
location <-0.7+NormClock, 1.81, 2.59> location <-0.7+NormClock, 1.81, 2.09>
look_at <0.0, 1.0, 0> look_at <0.0, 1.0, 0>
angle 64 angle 54
} }

View File

@ -6,10 +6,13 @@ ralentisseur ()
{ {
temps=$1 temps=$1
echo "#+++ ralentisseur $temps +++#" | tee -a WS/log load=$(awk '{print int($1)}' < /proc/loadavg)
# echo " load is $load" | tee -a WS/log
sleep $temps if [ $load -gt 10 ] ; then
attente=$(( $temps + ($RANDOM % 90) ))
echo "ralentir $0 $SEQNAME $attente" | tee -a WS/log
sleep $attente
fi
} }
# -------------------------------------------------------------- # --------------------------------------------------------------

View File

@ -22,7 +22,7 @@ linkfarm ()
SRC="frames/$1" SRC="frames/$1"
echo "linkfarm $SRC" | tee -a WS/log echo "linkfarm $SRC" | tee -a WS/log
local NBRE=36 local NBRE=30
for foo in $(seq 0 $NBRE) for foo in $(seq 0 $NBRE)
do do
addfile "$SRC/00000.png" addfile "$SRC/00000.png"
@ -45,7 +45,7 @@ faire_le_titre ()
{ {
echo "faire le titre" echo "faire le titre"
local NBRE=80 local NBRE=90
for foo in $(seq 0 $NBRE) for foo in $(seq 0 $NBRE)
do do
addfile "datas/cover.png" addfile "datas/cover.png"
@ -54,7 +54,7 @@ done
# ------------------------------------------------------- # -------------------------------------------------------
faire_la_fin () faire_la_fin ()
{ {
local NBRE=80 local NBRE=90
for foo in $(seq 0 $NBRE) for foo in $(seq 0 $NBRE)
do do
addfile "datas/back.png" addfile "datas/back.png"
@ -72,6 +72,8 @@ linkfarm passage
linkfarm scene linkfarm scene
linkfarm essai linkfarm essai
faire_la_fin
ff_encodage Spool full.mp4 ff_encodage Spool full.mp4

View File

@ -15,39 +15,43 @@ esac
echo "Running $0 $TYPE $SEQNAME" >> WS/log echo "Running $0 $TYPE $SEQNAME" >> WS/log
POVOPT="+q9 +a0.02 -d ${DIMS} -WT6" POVOPT="+q9 +a0.01 -d ${DIMS} -WT6"
echo $POVOPT ; echo ; sleep 2 echo $POVOPT ; echo ; sleep 2
TMPIMG=/dev/shm/${SEQNAME}-tmp.png TMPIMG=/dev/shm/${SEQNAME}-tmp.png
for frame in $(seq 0 $((NBFRAMES-1))) for frame in $(seq 0 $((NBFRAMES-1)))
do do
figlet -k $frame # figlet -k $frame ; sleep 1
img=$(printf "frames/%s/%05d.png" $SEQNAME $frame)
ralentisseur 25
img=$(printf "frames/%s/%05d.png" $SEQNAME $frame)
debut=$(date +%s) debut=$(date +%s)
set +e set +e
povray ${POVOPT} +K${frame} -i${SEQNAME}.pov -o${TMPIMG} povray ${POVOPT} +K${frame} -i${SEQNAME}.pov -o${TMPIMG}
err=$? err=$?
if [ $err != 0 ] ; then if [ $err != 0 ] ; then
echo "$SEQNAME fail $frame" >> WS/log echo "$SEQNAME fail $frame" >> WS/log
mogrify -colorspace gray $img
sleep 6 sleep 6
continue continue
fi fi
set -e set -e
txt=$(printf "%s %03d" ${SEQNAME} $frame) txt=$(printf "%s %03d" ${SEQNAME} $frame)
echo $frame $img $txt # echo $frame $img $txt
convert ${TMPIMG} \ convert ${TMPIMG} \
-font Courier \ -font Courier-Bold \
-pointsize 14 \ -pointsize 16 \
-fill orange \ -fill turquoise \
-gravity south \ -gravity south \
-annotate +0+0 "$txt" \ -annotate +0+5 "$txt" \
${img} ${img}
fin=$(date +%s) fin=$(date +%s)
echo echo ; sleep 1
echo $frame $(( fin - debut )) | tee -a WS/${TYPE}.timing echo ${SEQNAME} $frame $(( fin - debut )) | \
echo tee -a WS/mp4.timing
echo ; sleep 1
done done
echo echo
@ -57,3 +61,6 @@ case $TYPE in
-colors 102 frames/* foo.gif ;; -colors 102 frames/* foo.gif ;;
"mp4") ff_encodage $SEQNAME wip-${SEQNAME}.mp4 ;; "mp4") ff_encodage $SEQNAME wip-${SEQNAME}.mp4 ;;
esac esac
echo "+------- build of $SEQNAME done"

View File

@ -0,0 +1,76 @@
/*
* H E X A C O N E - O R B I T E
*/
#version 3.7;
#include "globals.inc"
#include "colors.inc"
#include "metals.inc"
#include "textures.inc"
#include "stones.inc"
#include "contexte.inc"
#include "elements.inc"
// =======================================================
#declare R_planete = 2.1;
#declare Croute = object
{
#local R1 = R_planete * 1.05;
#local R2 = R_planete * 1.03;
#local HC = R_planete * 0.11;
#local BN = R_planete * 3;
difference {
sphere { 0, R1 }
sphere { 0, R2 }
box { <-HC, -BN, -BN>, <HC, BN, BN> }
box { <-BN, -HC, -BN>, <BN, HC, BN> }
box { <-BN, -BN, -HC>, <BN, BN, HC> }
}
texture {
pigment { color Gray10 }
}
}
#declare Boule = object
{
sphere { 0, R_planete }
texture {
pigment { color Gray80 }
finish { reflection 0.500 }
}
}
#declare Planete = object
{
union {
object { Croute }
object { Boule }
}
}
// =======================================================
#local RO = 4.10;
#local CK = NormClock * 7.87;
#declare PosX = RO * sin(CK);
#declare PosY = 0;
#declare PosZ = RO * cos(CK);
object { HexaCone
rotate -y*CK translate <PosX, PosY, PosZ>
}
object { Planete rotate (-clock*0.21)*y }
light_source { <19, 7, 14>, rgb <0.77, 0.79, 0.80> }
camera {
location <3, 2.01, 7.59>
look_at <0.0, 0.0, 0>
angle 58
}

View File

@ -16,21 +16,36 @@
// --------------------------------------- // ---------------------------------------
object { Le_Decor }
#declare PosX = 0.333; #declare PosX = 0.333;
#declare PosY = 1.20 + (NormClock*0.22); #declare PosY = 1.20 + (NormClock*0.22);
#declare PosZ = (NormClock-0.5) * 29.22; #declare PosZ = (NormClock-0.5) * 34.22;
object { HexaCone translate <PosX, PosY, PosZ> } object { HexaCone translate <PosX, PosY, PosZ> }
#if ( clock > 130 )
#if ( (clock < 111) )
light_source { light_source {
<2, 0.30, -2> color Red <3, 0.30, -8> color Blue
spotlight spotlight
radius .044 radius .044
falloff 2 falloff 2
tightness 10 tightness 3
point_at <PosX, PosY, PosZ> point_at <PosX, PosY, PosZ>
} }
#end #end
#if ( (clock > 230) )
light_source {
<2, 0.30, -2> color White
spotlight
radius .044
falloff 2
tightness 3
point_at <PosX, PosY, PosZ>
}
#end
camera { camera {
location <-1.56, 1.03, 9.76> location <-1.56, 1.03, 9.76>
look_at <PosX, PosY, PosZ> look_at <PosX, PosY, PosZ>

View File

@ -14,7 +14,7 @@ BEGIN { \
} \ } \
} }
\ \
$1=="orbite" { \ $1=="passage" { \
accu[$2] += $3; \ accu[$2] += $3; \
count[$2]++; \ count[$2]++; \
if (mini[$2] > $3) mini[$2] = $3; \ if (mini[$2] > $3) mini[$2] = $3; \

View File

@ -15,12 +15,13 @@
#include "contexte.inc" #include "contexte.inc"
#include "elements.inc" #include "elements.inc"
object { Le_Decor }
object { HexaCone object { HexaCone
rotate < 3, 0, -4> rotate < 3, 0, -4>
rotate y*17 translate y*1.11 } rotate y*17 translate y*1.11 }
#declare CK = 56 + (clock * 1); #declare CK = 56 + (clock * 1);
#declare Dcam = 2.04; #declare Dcam = 2.14;
#declare CamX = Dcam * sin(radians(CK)); #declare CamX = Dcam * sin(radians(CK));
#declare CamZ = Dcam * 1.20 * cos(radians(CK)); #declare CamZ = Dcam * 1.20 * cos(radians(CK));
#declare CamZ = CamZ - 0.11; #declare CamZ = CamZ - 0.11;

View File

@ -14,19 +14,21 @@
#include "contexte.inc" #include "contexte.inc"
#include "elements.inc" #include "elements.inc"
object { Le_Decor }
light_source { <-16, 17, -24>, rgb <0.51, 0.65, 0.40> } light_source { <-16, 17, -24>, rgb <0.51, 0.65, 0.40> }
#declare TrX = 1.4 * sqrt(NormClock); #declare TrX = 1.34 * sqrt(NormClock);
#declare TrY = 0.90 + (3.5 * sqrt(NormClock)); #declare TrY = 0.90 + (3.5 * Cos_01(NormClock));
#declare TrZ = 9.9 * sqrt(NormClock); #declare TrZ = 9.999 * sqrt(NormClock);
#declare TrH = <TrX, TrY, TrZ>; #declare TrH = <TrX, TrY, TrZ>;
#declare RrY = 57 * sqrt(NormClock); #declare RrY = 57 * sqrt(NormClock);
object { HexaCone rotate y*RrY translate TrH } object { HexaCone rotate y*RrY translate TrH }
// object { Repere scale 2 } // object { Repere scale 2 }
#declare CamY = 19 - (5*NormClock); #declare CamY = 19 - (4.5*NormClock);
#declare LatY = -4 + NormClock; #declare LatY = -3 + NormClock;
camera { camera {
location <-3.60, CamY, 21.09> location <-3.60, CamY, 21.09>
@ -34,5 +36,5 @@ camera {
// focal_point <0, 1, 0> // focal_point <0, 1, 0>
// aperture 0.046 // aperture 0.046
// blur_samples 30 // blur_samples 30
angle 47 angle 45
} }