|
![](/i/fill.gif) |
This little piece of script creates a matrix style intro with characters
flowing down the screen to create a title, this frame is the last of 100
// Persistence of Vision Ray Tracer Scene Description File
// File: Matrix.pov
// Vers: 3.5
// Desc: Matrix Entry Code
// Date: 24/02/05
// Auth: James Scandrett
//
#version 3.5;
#include "colors.inc"
global_settings {
assumed_gamma 1.0
}
// ----------------------------------------
camera {
location <0, 0, -60 + clock * 40>
direction 1.5*z
right x*image_width/image_height
look_at <0, 0, 0>
}
// ----------------------------------------
#declare alphabet = array[54] {
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j",
"k", "l", "m", "n", "o", "p", "q", "r", "s", "t",
"u", "v", "v", "w", "x", "y", "z", "0", "1", "2",
"3", "4", "5", "6", "7", "8", "9", "!", "@", "#",
"$", "%", "^", "&", "*", "(", ")", "~", " ", "<",
">", "[", "]", "?" }
#declare wordlen = 16;
#declare slogan = array[wordlen] {
"E", "N", "T", "E",
"R", " ", "T", "E",
"X", "T", " ", "H",
"E", "R", "E", "!"}
#declare R1 = seed(54);
#declare R2 = seed(50);
#declare textrow = 0;
#declare rows = 40;
#declare textcol = 0;
#declare cols = 53;
#declare textlevel = 0;
#declare levels = 3;
#declare letters = 20;
#declare baseamb = 0.15;
#while (textcol<cols + 1)
#declare starthei = 50 * rand(R2) + 25;
#while (textrow<rows + 1)
#declare height = clock * 100;
#declare brightpos = starthei - height;
#declare xpos = -cols/2 + textcol;
#declare ypos = -rows/2 + textrow;
#if (brightpos > ypos)
#if ( (brightpos - ypos) < letters )
#declare ambval = ((brightpos - ypos) / letters) +
baseamb;
#else
#declare ambval = baseamb;
#end
#else
#declare ambval = baseamb;
#end
#declare fcount = 0;
#while (clock*250>=fcount)
#declare letter1 = 54 * rand(R1);
#declare fcount = fcount + 1;
#end
#if (ypos = 0)
#if (xpos > -wordlen/2)
#if (xpos <= wordlen/2)
#if (brightpos < ypos)
text {ttf "Linedraw.ttf", slogan[xpos +
wordlen/2],
0.1, 0 pigment {rgb <1,1,0>} translate
<xpos, ypos, 0> finish {ambient 5}}
#else
text {ttf "Linedraw.ttf", alphabet[letter1],
0.1, 0
pigment {rgb <1,1,0>} translate <xpos, ypos,
0>
finish {ambient ambval}}
#end
#else
text {ttf "Linedraw.ttf", alphabet[letter1], 0.1,
0 pigment {rgb <1,1,0>} translate <xpos, ypos,
0>
finish {ambient ambval}}
#end
#else
text {ttf "Linedraw.ttf", alphabet[letter1], 0.1,
0 pigment {rgb <1,1,0>} translate <xpos, ypos, 0>
finish {ambient ambval}}
#end
#else
text {ttf "Linedraw.ttf", alphabet[letter1], 0.1, 0
pigment {rgb <1,1,0>} translate <xpos, ypos, 0>
finish {ambient ambval}}
#end
#declare textrow = textrow + 1;
#end
#declare textcol = textcol + 1;
#declare textrow = 0;
#end
Post a reply to this message
Attachments:
Download 'matrix intro.jpg' (81 KB)
Preview of image 'matrix intro.jpg'
![matrix intro.jpg](/povray.binaries.images/attachment/%3Cweb.421efe9e6fddcaeb127a3fdf0%40news.povray.org%3E/matrix%20intro.jpg?ttop=441697&toff=5550&preview=1)
|
![](/i/fill.gif) |