3 Likes
#cgi
I never knew of all of this early CGI work at NYIT before. It is incredible work for the late-1970s/early-1980s. (h/t @Roger ) #ComputerHistory #CGI #GraphicsArts
This Lost Movie Revolutionized Computer Animation
2 Likes
7 Comments
And with this final section at last restored, I pronounce my website back to full functionality. Probably more than 99% of the original content is now accessible again. I also cleaned up the main page and replaced the navigation widgets with more useful conventional links to all the sub-pages in each section. No doubt there are still one or two broken links but there won't be many. There's still some behind-the-scenes stuff that needs tidying up, but nothing that should affect the actual site.
Anyway, this particular section covers all of my #art projects, back from the days when I had time to do such things : Orion-drive nuclear spaceships, various #scifi projects, #space themed illustrations and charts, and various other stuff.
5 Likes
2 Comments
2 Likes
#Butterfly #3D #animation - #computer: #Amiga 4000 (1992), software: Real 3D - Remi's #Classic #Computers
A short looping #raytraced 3D animation ( #CGI) of a butterfly.
Created by me using a #Commodore #Amiga4000 computer from 1992.
#Software: #Real3D v3.5 (Realsoft)
352x566i (PAL lo-res interlaced), #HAM8 (262,144 colors)
https://www.youtube.com/watch?v=gZkjKNRhOIE
4 Likes
1 Shares
5 Likes
1 Shares
3 Likes
1 Comments
1 Shares
I knew (or figured out) the high level details of how they did the special effects in the original Superman (1978) but there are a lot of interesting nuances to these techniques I never heard of. Very innovative in a time before digital effects. #scifi #cgi https://youtu.be/07H0CWyZ3vY
2 Likes
1 Shares
#cgi #povray
[fr] Chose promise, chose due.
...
==== [Parsing...] ==========================================================
datetime seconds = 1664614401
Environment map: "povray/Images/Maps/Environment/nature/glass_passage_4k.exr"
Radiosity_Final in use
----------------------------------------------------------------------------
Parser Statistics
----------------------------------------------------------------------------
Finite Objects: 122
Infinite Objects: 0
Light Sources: 2
Total: 124
----------------------------------------------------------------------------
Parser Time
Parse Time: 0 hours 1 minutes 17 seconds (77.196 seconds)
using 1 thread(s) with 48.081 CPU-seconds total
Bounding Time: 0 hours 0 minutes 0 seconds (0.001 seconds)
using 1 thread(s) with 0.000 CPU-seconds total
----------------------------------------------------------------------------
Render Options
Quality: 9
Bounding boxes.......On Bounding threshold: 3
Antialiasing.........On (Method 2, Threshold 0.012, Depth 3, Jitter 1.00, Gamma 2.50)
==== [Rendering...] ========================================================
----------------------------------------------------------------------------
Render Statistics
Image Resolution 1920 x 1080
----------------------------------------------------------------------------
Pixels: 2214937 Samples: 26749784 Smpls/Pxl: 12.08
Rays: 3340116737 Saved: 294197720 Max Level: 5/5
----------------------------------------------------------------------------
Ray->Shape Intersection Tests Succeeded Percentage
----------------------------------------------------------------------------
Blob 26438658124 10106821219 38.23
Blob Component 311082761349 81567902646 26.22
Blob Bound 3629569968762 1143450081922 31.50
Box 57040815425 5625816864 9.86
Cone/Cylinder 159201252025 35930185139 22.57
CSG Intersection 94529078086 5762937110 6.10
CSG Merge 35526930485 883451592 2.49
Isosurface 9748725220 2588756394 26.55
Isosurface Container 13981715447 9748748487 69.72
Isosurface Cache 339834072 55907966 16.45
Plane 34747526078 15454333049 44.48
Sphere 32780040255 11868542227 36.21
Torus 779404407 7706024 0.99
Torus Bound 779404407 8728409 1.12
True Type Font 193961 28005 14.44
Bounding Box 357570940119 179114851597 50.09
----------------------------------------------------------------------------
Isosurface roots: 9721850965
Function VM calls: 299090261476
----------------------------------------------------------------------------
Roots tested: 14495201962 eliminated: 2745152602
Shadow Ray Tests: 27188375636 Succeeded: 12303693126
Shadow Cache Hits: 3311733325
Reflected Rays: 1322488035 Total Internal: 205017101
Refracted Rays: 1631900360
Transmitted Rays: 14782021
----------------------------------------------------------------------------
Radiosity samples calculated: 427477 (0.34 %)
discarded due to low quality: 14015
retained for re-use: 413462
Radiosity samples reused: 125272118
Radiosity sample rays shot: 341981600
Radiosity octree nodes: 65102
Radiosity octree samples/node: 6.35
Radiosity blocks examined: 149468616451
Radiosity blocks passed test 0: 149468616451 (100.00 %)
Radiosity blocks passed test 1: 51645328591 (34.55 %)
Radiosity blocks passed test 2: 33436489295 (22.37 %)
Radiosity blocks passed test 3: 3244799462 (2.17 %)
Radiosity blocks passed test 4: 2189966892 (1.47 %)
Radiosity blocks passed test 5: 2079234507 (1.39 %)
Radiosity blocks rejected: 147389381944 (98.61 %)
----------------------------------------------------------------------------
Radiosity Depth 0 calculated: 427477 (0.34 %)
Radiosity Depth 0 reused: 125272118
Radiosity Depth 0 rays shot: 341981600
----------------------------------------------------------------------------
Radiosity (final) calculated: 350330 (0.28 %)
Radiosity (final) reused: 125164141
Radiosity (final) rays shot: 280264000
----------------------------------------------------------------------------
Pass Depth 0 Total
----------------------------------------------------------------------------
1 82 82
2 377 377
3 2590 2590
4 9815 9815
5+ 64283 64283
Final 350330 350330
----------------------------------------------------------------------------
Total 427477 427477
Weight 0.115
----------------------------------------------------------------------------
----------------------------------------------------------------------------
Render Time:
Photon Time: No photons
Radiosity Time: 2 hours 12 minutes 24 seconds (7944.230 seconds)
using 8 thread(s) with 53926.107 CPU-seconds total
Trace Time: 186 hours 17 minutes 42 seconds (670662.832 seconds)
4 Likes
10 Comments
#cgi #povray
ping @tTh, @Nunuche Follette, @inco gnito, ... :)
Bois et Résine Epoxyde dans povray
Après avoir un peu fait joujou avec mon dé, à lui essayer tout plein de textures diverses et variées... j'ai repensé à ces vidéos, postées par @Nunuche Follette, sur des objets en bois flotté noyé dans de la résine époxyde.
J'ai donc tout naturellement voulu faire un dé de la sorte.
Créer un objet qui sera inséré, comme un bout de bois, à l'aide d'une isosurface {}
et une fonction f_granite
comme générateur de forme, ce n'est pas le plus compliqué :
```povray
/*
** Gros dé en bois et résine époxyde
*/
#version 3.7;
#include "colors.inc"
#include "consts.inc"
#include "functions.inc"
#include "transforms.inc"
#include "isocsg/iso_csg.inc" // ISO_CSG, voir http://imagico.de/pov/ic/index.php
#declare EPSILON = 1e-4; // toute petite valeur, pour les marges
#ifndef (ASPECT_RATIO)
#declare ASPECT_RATIO = image_width / image_height;
#end
#declare AMBIENT_LIGHT = rgb 1/3;
#default {
finish { ambient AMBIENT_LIGHT }
}
global_settings {
charset utf8
assumed_gamma srgb
ambient_light AMBIENT_LIGHT
}
#declare SEED = seed(639663322);
#macro V3Rand()
< rand(SEED), rand(SEED), rand(SEED) >
#end
#macro V3SRand()
(V3Rand() * 2 - 1)
#end
#declare Size = 5; // taille du dé : 5 cms
#declare Size2 = Size / 2;
#declare Size2E = Size2 + EPSILON;
#local f1 = IC_Transform(f_granite,
transform {
scale Size * pi
translate V3SRand() * 100
rotate V3SRand() * 180
}
)
isosurface {
function { f1(x,y,z) * 0.4 - 0.075 }
contained_by { box { -Size2E, Size2E } }
accuracy 0.001
evaluate 1.1*0.6, sqrt(1/0.6), 0.7
pigment { White }
translate y * Size2E
}
// ground
plane { y, 0 pigment { Gray } }
camera {
location -z * 10
look_at o
direction z * 10
sky y
right x * ASPECT_RATIO
up y
translate -z * 100
rotate x * 30
rotate y * -60
translate y * Size2
}
// light intensity factor
// a: light distance (from object : light pos - object pos)
// b: light fade distance
// c: light fade power
#declare f_LightIntensityFactor = function(a,b,c) { pow(a/b + 1, c) / 2 }
#local Pos = vtransform(< -1, 2, -1 > * 100, transform { rotate y * -60 });
#local Int = f_LightIntensityFactor(vlength(Pos), 200, 1.5);
light_source {
Pos
color White * 1/3 * Int
fade_distance 200
fade_power 1.5
}
#local Pos = vtransform(< -1, 1, -1 > * 100, transform { rotate y * -150 });
#local Int = f_LightIntensityFactor(vlength(Pos), 100, 1.5);
light_source {
Pos
color White * 2/3 * Int
fade_distance 100
fade_power 1.5
}
```
Délimité par un cube.
Sauf que mon conteneur, ce n'est pas juste un simple cube (contained_by { box { -Size2E, Size2E } }
), mais un dé, fait de l'intersection d'une sphère et d'un cube à laquelle on a enlevé des sphères écrasées pour y numéroter les faces de 1 à 6.
On a alors simplement l'idée d'utiliser le dé, fait en CSG classique, que l'on va intersecter (je ne sais pas si ça se dit) avec le morceau de bois précédemment créé en isosurface :
/*
** Gros dé en bois et résine époxyde
*/
#version 3.7;
#include "colors.inc"
#include "consts.inc"
#include "functions.inc"
#include "transforms.inc"
#include "isocsg/iso_csg.inc" // ISO_CSG, voir http://imagico.de/pov/ic/index.php
#include "ftz_dice.inc"
#declare EPSILON = 1e-4; // toute petite valeur, pour les marges
#ifndef (ASPECT_RATIO)
#declare ASPECT_RATIO = image_width / image_height;
#end
#declare AMBIENT_LIGHT = rgb 1/3;
#default {
finish { ambient AMBIENT_LIGHT }
}
global_settings {
charset utf8
assumed_gamma srgb
ambient_light AMBIENT_LIGHT
}
#declare SEED = seed(639663322);
#macro V3Rand()
< rand(SEED), rand(SEED), rand(SEED) >
#end
#macro V3SRand()
(V3Rand() * 2 - 1)
#end
#declare Size = 5; // taille du dé : 5 cms
#declare Size2 = Size / 2;
#declare Size2E = Size2 + EPSILON;
#local f1 = IC_Transform(f_granite,
transform {
scale Size * pi
translate V3SRand() * 100
rotate V3SRand() * 180
}
)
intersection {
isosurface {
function { f1(x,y,z) * 0.4 - 0.075 }
contained_by { box { -Size2E, Size2E } }
accuracy 0.001
evaluate 1.1*0.6, sqrt(1/0.6), 0.7
}
FTZ_Dice(
Size,
material {},
material {}
)
pigment { White }
translate y * Size2E
}
// ground
plane { y, 0 pigment { Gray } }
camera {
location -z * 10
look_at o
direction z * 10
sky y
right x * ASPECT_RATIO
up y
translate -z * 100
rotate x * 30
rotate y * -60
translate y * Size2
}
// light intensity factor
// a: light distance (from object : light pos - object pos)
// b: light fade distance
// c: light fade power
#declare f_LightIntensityFactor = function(a,b,c) { pow(a/b + 1, c) / 2 }
#local Pos = vtransform(< -1, 2, -1 > * 100, transform { rotate y * -60 });
#local Int = f_LightIntensityFactor(vlength(Pos), 200, 1.5);
light_source {
Pos
color White * 1/3 * Int
fade_distance 200
fade_power 1.5
}
#local Pos = vtransform(< -1, 1, -1 > * 100, transform { rotate y * -150 });
#local Int = f_LightIntensityFactor(vlength(Pos), 100, 1.5);
light_source {
Pos
color White * 2/3 * Int
fade_distance 100
fade_power 1.5
}
Voilà, c'est déjà mieux. Mon morceau de bois ne dépassera pas du dé conteneur.
Reste plus qu'à utiliser une jolie texture bois pour cette partie... disons T_Wood13 (de woods.inc
fourni avec povray) :
/*
** Gros dé en bois et résine époxyde
*/
#version 3.7;
#include "colors.inc"
#include "consts.inc"
#include "functions.inc"
#include "transforms.inc"
#include "woods.inc"
#include "isocsg/iso_csg.inc" // ISO_CSG, voir http://imagico.de/pov/ic/index.php
#include "ftz_dice.inc"
#declare EPSILON = 1e-4; // toute petite valeur, pour les marges
#ifndef (ASPECT_RATIO)
#declare ASPECT_RATIO = image_width / image_height;
#end
#declare AMBIENT_LIGHT = rgb 1/3;
#default {
finish { ambient AMBIENT_LIGHT }
}
global_settings {
charset utf8
assumed_gamma srgb
ambient_light AMBIENT_LIGHT
}
#declare SEED = seed(639663322); // changez ce nombre, et toute la chaîne de nombres aléatoires appelés sera différente
#macro V3Rand()
< rand(SEED), rand(SEED), rand(SEED) >
#end
#macro V3SRand()
(V3Rand() * 2 - 1)
#end
#declare Size = 5; // taille du dé : 5 cms
#declare Size2 = Size / 2;
#declare Size2E = Size2 + EPSILON;
#local f1 = IC_Transform(f_granite,
transform {
scale Size * pi
translate V3SRand() * 100
rotate V3SRand() * 180
}
)
intersection {
isosurface {
function { f1(x,y,z) * 0.4 - 0.075 }
contained_by { box { -Size2E, Size2E } }
accuracy 0.001
evaluate 1.1*0.6, sqrt(1/0.6), 0.7
}
FTZ_Dice(
Size,
material {},
material {}
)
texture {
T_Wood13
translate V3SRand() * 1e4
rotate V3SRand() * 180
}
translate y * Size2E
}
// ground
plane { y, 0 pigment { Gray } }
camera {
location -z * 10
look_at o
direction z * 10
sky y
right x * ASPECT_RATIO
up y
translate -z * 100
rotate x * 30
rotate y * -60
translate y * Size2
}
// light intensity factor
// a: light distance (from object : light pos - object pos)
// b: light fade distance
// c: light fade power
#declare f_LightIntensityFactor = function(a,b,c) { pow(a/b + 1, c) / 2 }
#local Pos = vtransform(< -1, 2, -1 > * 100, transform { rotate y * -60 });
#local Int = f_LightIntensityFactor(vlength(Pos), 200, 1.5);
light_source {
Pos
color White * 1/3 * Int
fade_distance 200
fade_power 1.5
}
#local Pos = vtransform(< -1, 1, -1 > * 100, transform { rotate y * -150 });
#local Int = f_LightIntensityFactor(vlength(Pos), 100, 1.5);
light_source {
Pos
color White * 2/3 * Int
fade_distance 100
fade_power 1.5
}
Il ne reste plus qu'à ajouter le dé en résine époxyde :
/*
** Gros dé en bois et résine époxyde
*/
#version 3.7;
#include "colors.inc"
#include "consts.inc"
#include "finish.inc"
#include "functions.inc"
#include "transforms.inc"
#include "woods.inc"
#include "isocsg/iso_csg.inc" // ISO_CSG, voir http://imagico.de/pov/ic/index.php
#include "ftz_dice.inc"
#declare EPSILON = 1e-4; // toute petite valeur, pour les marges
#ifndef (ASPECT_RATIO)
#declare ASPECT_RATIO = image_width / image_height;
#end
#declare AMBIENT_LIGHT = rgb 1/3;
#default {
finish { ambient AMBIENT_LIGHT }
}
global_settings {
charset utf8
assumed_gamma srgb
ambient_light AMBIENT_LIGHT
}
#declare SEED = seed(639663322);
#macro V3Rand()
< rand(SEED), rand(SEED), rand(SEED) >
#end
#macro V3SRand()
(V3Rand() * 2 - 1)
#end
#declare Size = 5; // taille du dé : 5 cms
#declare Size2 = Size / 2;
#declare Size2E = Size2 + EPSILON;
#local f1 = IC_Transform(f_granite,
transform {
scale Size * pi
translate V3SRand() * 100
rotate V3SRand() * 180
}
)
#local o_Wood = intersection {
isosurface {
function { f1(x,y,z) * 0.4 - 0.075 }
contained_by { box { -Size2E, Size2E } }
accuracy 0.001
evaluate 1.1*0.6, sqrt(1/0.6), 0.7
}
FTZ_Dice(
Size,
material {},
material {}
)
texture {
T_Wood13
translate V3SRand() * 1e4
rotate V3SRand() * 180
}
}
#local o_Dice = FTZ_Dice(Size,
// résine époxyde légèrement bleue
material {
#local C1 = < 186, 229, 255 > / 255;
#local C2 = < 117, 157, 181 > / 255;
#local T = 0.995; // transparence totale (filtrage compris)
#local F = 0.2; // filtrage seul
texture {
pigment { color C1 filter F transmit (T - F) }
finish {
diffuse 0.15
specular 0.8
roughness 0.001
reflection {
C1/17
fresnel on
}
}
}
interior {
ior 1.5
//dispersion 1.0125 // très long à rendre, avec de la dispersion
fade_color C2
fade_distance Size * 0.85
fade_power 1001
}
},
// matériau pour les nombres
material {
texture {
pigment { color White * 0.995 }
finish { Dull }
}
}
);
union {
object { o_Wood }
object { o_Dice }
translate y * Size2E
}
// ground
plane { y, 0 pigment { Gray } }
camera {
location -z * 10
look_at o
direction z * 10
sky y
right x * ASPECT_RATIO
up y
translate -z * 100
rotate x * 30
rotate y * -60
translate y * Size2
}
// light intensity factor
// a: light distance (from object : light pos - object pos)
// b: light fade distance
// c: light fade power
#declare f_LightIntensityFactor = function(a,b,c) { pow(a/b + 1, c) / 2 }
#local Pos = vtransform(< -1, 2, -1 > * 100, transform { rotate y * -60 });
#local Int = f_LightIntensityFactor(vlength(Pos), 200, 1.5);
light_source {
Pos
color White * 1/3 * Int
fade_distance 200
fade_power 1.5
}
#local Pos = vtransform(< -1, 1, -1 > * 100, transform { rotate y * -150 });
#local Int = f_LightIntensityFactor(vlength(Pos), 100, 1.5);
light_source {
Pos
color White * 2/3 * Int
fade_distance 100
fade_power 1.5
}
Et voilà.
6 Likes
3 Comments
1 Shares
#cgi #povray
[en] An include file to build a nice dice, using two material {}
of your choice. One for the plain dice, another one for the numbers. Usage :
[fr] Un fichier include pour modéliser un joli dé, utilisant deux material {}
de votre choix. Un pour le dé lui-même, un autre pour les nombres. Utilisation :
FTZ_Dice(Size, BaseMaterial, DotsMaterial)
3 Likes
5 Comments
8 Likes
7 Comments
#cgi #povray #gimp
[fr] Modélisation et rendu : povray 3.7. Montage final : gimp.
J'ai volontairement fait de très courtes vis et mis un éclairage ponctuel simple, pour accélérer le temps de rendu.
La colonne de gauche représente des pas de vis à droite (sens par défaut). Les deux autres colonnes représentent des pas de vis à gauche. Au centre, marquage classique. À droite, marquage alternatif.
5 Likes
5 Comments
7 Likes
11 Comments
5 Likes
12 Comments
#povray #cgi
[fr] J'ai encore ajouté 2 types de têtes de vis : fendue fraisée plate et fendue fraisée bombée.
Une petite image qui va bien. Avec un mapping d'environnement, ça a tout de suite un peu plus de réalimse. ;)
Ça se devine pas sur l'image, mais les pas de vis sont de vrais pas de vis, réalisés avec la fonction f_helix1()
.
5 Likes
#povray #cgi
[fr] Petit ajout, une nouvelle tête : fraisée 6 pans creux.
Dans ce GIF, j'ai ajouté les conteneurs (clip, bound) en cyan, ainsi que les axes de référence en bleu.
On peut voir que la tête fraisée 6 pans creux est en dessous du plan de référence, du fait que cette tête est entièrement noyée lors de l'assemblage. Ce qui n'est pas du tout le cas des 5 autres types de tête de vis.
5 Likes
6 Comments
4 Likes
3 Comments
Some CGI entertainment for you
https://i.imgur.com/IwOzNUH.mp4
20 sec video sound
https://scontent-lga3-1.cdninstagram.com/v/t50.16885-16/279451633_955078038512080_5719882640003816595_n.mp4?_nc_ht=scontent-lga3-1.cdninstagram.com&_nc_cat=104&_nc_ohc=zuaAhozOyjMAX9hZonp&edm=ADECaisBAAAA&ccb=7-4&oe=627A2439&oh=00_AT8JtGTiz0prbTEaUwJSA7zzzOxBcWPcmbwIt2LlzDVg8A&_nc_sid=ca78b6
22 sec video sound
#art #cgi #video by Mohsen #Moradi
https://www.instagram.com/mohsen_moradi.cg/
9 Likes
6 Comments