Skocz do zawartości

Scena 3D: Buckminsterfulleren C60


Rekomendowane odpowiedzi

Najczystsza odmiana węgla C60 widziana pod skaningowym mikroskopem elektronowym. Przy okazji wyjasnię, że jest to niemożliwe na obecnym stanie wiedzy.

Render bez polygonów Pov-ray 3.61 Czas 3min18s na Athlonie 4800+X2.

Kolizje cząsteczek możliwe ze względu na przypadkowe ułożenie w przestrzeni.

Fulleren.jpg

  • Like 1
Odnośnik do komentarza
Udostępnij na innych stronach

  • Odpowiedzi 11
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

ladnei zrobione, ale samo zalozenie bez sensu.... pojedyncze atomy w najlepszym wypadku widac by bylo jako pola sil... a tu sa wkleslosci pomiedzy podwojnymi wiazaniami... a zreszta, tego sie po prostu nei da "zobaczyc" wiec nei am o czym dyskutowac, ladnie wyszlo...

Odnośnik do komentarza
Udostępnij na innych stronach

Dziekuję za komentarze.

@vv3k70r faktycznie nie da się tego zobaczyć więc nie można tego traktować nawet jako przybliżenie.

@Thunder tutka nie ma sensu robić. Czytaj dalej.

@Master Kiełbaster już piszę jak to zrobiłem.

 

Pomysł zrodził się bardzo dawno temu kiedy pisałem magisterkę z fullerenów. Najtrudnieszy element to współrzędne atomów węgla. Z tego co pamiętam pomógł mi w nich program HyperChem. Najgorsze jest wklepywanie 60 razy x y z. Poniżej jest cała scena gotowa więc zaoszczędzę Wam czasu gdyby ktoś chciał podłubać. Te 60 sfer tworzy bloba. W wersji pierwotnej materiałem był chrom (!) i taki też fulleren trafił do pracy doktorskiej kolegi. Skromny żart.

Teraz najważniejsze: jest kilka sposobów na efekt mikroskopu elektronowego ale ten jest najbardziej elegancki. Materiał musi mieć ambient ustawiony na co najmniej 1 (jest 2). Światło punktowe dokładnie w miejscu kamery. Wartość światła UJEMNA co powoduje "wypalenie" ciemnych miejsc. Dodatkowo dodany fog w celu zgaszenia światła wraz z odległością.

Oto cała scena. Życzę udanej zabawy. Eksperymenty z kolorowym fogiem, polożeniem kulek, bumpem itp. oczywiście doswolone. Najciekawsze jest to, że POV-Ray "łyka" taką ilość obiektów bez zastanowienia.

 

#version 3.6;

global_settings {

assumed_gamma 1.0

}

// ----- Camera, etc. -----

camera {

location

direction 1.5*z

right x*image_width/image_height

look_at

 

}

 

background { color * 0 }

fog {

fog_type 1

distance 40

color

}

 

#local Surface = texture {

pigment { color rgb }

normal { agate scale .1 }

finish { ambient 2. diffuse 1 }

}

light_source {

// polozenie takie jak kamery,

color rgb -2.5 // wartosc ujemna do tworzenia ciemnych miejsc

shadowless

}

 

 

 

// ------ Parts ------

#local Fulleren = blob{ // Blob001

threshold 1.0

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

sphere { , 1.50823, 1.0 }

}

// ------ Placing the parts -------

 

#local Distance = 12;

union {

#local rx = seed (1.11);

#local ry = seed (1.22);

#local rz = seed (1.33);

#local rr = seed (1.44);

#local i_z = 25;

#while (i_z > 0)

#local i_y = 6;

#while (i_y > 0)

#local i_x = 8;

#while (i_x > 0)

object { Fulleren

rotate x * 360 * rand (rr)

translate

8 * Distance / 2 - i_x * (Distance - 0.5 * Distance * rand(rx)),

6 * Distance / 2 - i_y * (Distance - 0.5 * Distance * rand(ry)),

Distance / 2 + i_z * (Distance - 0.5 * Distance * rand(rz))

>

}

#local i_x = i_x - 1;

#end

#local i_y = i_y - 1;

#end

#local i_z = i_z - 1;

#end

texture { Surface }

}

// ------- the end --------

Odnośnik do komentarza
Udostępnij na innych stronach

Render nie jest czarno-biały. Skopiuj sobie scenę do Pov-ray'a i zapuść render. Potem zmień kolor teksturki z na i będziesz mieć mniej więcej B&W. Kolor możesz sobie zmieniać bawiąc się RGB a na dodatek możesz zmieniać kolor mgły (fog). Przy okazji wyjasnię, że render wygląda lepiej na monitorze CRT niż LCD (15 cali Nec) szczególnie w ciemnych oddalonych miejscach. Tandetny monitor LCD ma chyba kiepską rozpietość tonalną.

Odnośnik do komentarza
Udostępnij na innych stronach




×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności