This post will test whether you can make use of my future POV-ray code.

Following is a POV-ray scene description file you can have for free. It produces a comic book style flash effect. First download and install POV-ray, then experiment with it. After you get the hang of it then simply copy and paste my scene description file into your POV-ray editor, give it a title, and run it.

Further explanation will be provided after the scene file.


// Scene description file for Persistence Of Vision Raytracer

// Created by Norman Doering on 12/14/18

// This file demonstrates the use of POV ray for one simple comic book effect.


// IMPORTANT! -- Size of picture is determined by the .ini file.

// Consult my documentation.

// ==================

#version 3.7; global_settings {assumed_gamma 1.0}

// ==================== Safe zone =========================

#declare Rnd_1 = seed (363); // plug in any number you like


#declare flash_radius = 12; // roughly circular area that's white

#declare jitter_radius = 5; // maximum random variation

#declare slash_length = 96; // length of line

#declare slash_base = 0.78; // thick end of line

#declare slash_point = 0.05; // pointy end of line

#declare iCounter = 1.7; // loop counter // replace later

#declare howManyLines = 20; // number of lines drawn

#declare arcStart = 0; // You don't have to do a full circle

#declare arcEnd = 360; // 0 to 360 degrees is a full circle


#declare camx=0; // camera placement

#declare camz=0; // limitations designed to keep camera perpendicular to Y plane

#declare camDist = 90;
#declare camang = 65;

//=================== safe zone ends here ===================

camera { orthographic location right x*image_width/image_height look_at angle camang }

sky_sphere {pigment {rgb < 1,1,1 >}}

#declare SlshRadix = slash_length+flash_radius;

#declare arcL = (arcEnd - arcStart); #declare rotCounter = arcL/howManyLines; #declare roter=arcStart;

#declare I=arcStart;

#while (I<arcEnd)

#declare slshend=slash_base+(rand(Rnd_1)/2); #declare mover=-((rand(Rnd_1)*jitter_radius)+SlshRadix); #declare rotit=roter+(rand(Rnd_1)*1.5);

union { cone { , slshend, slash_point pigment {rgb } } sphere { , slshend pigment {rgb } } translate rotate


#declare roter=roter+rotCounter; #declare I=I+iCounter;



The first item to note in the POV-ray scene description above is the comment section. When you use the double slashes ("//") it tells POV-ray that text that follows is a comment.

In the comment section is a note that tells you that the size of picture is determined by the .ini file. The "ini" stands for "initiation file". In order to use a different .ini file and get a larger picture you need to click on the icon called Ini. When you do you'll get a message box called "render settings". If you click on "Browse" you can see a selection to chose from, but you can also make your own initiation file. In order to be useful for publishable work you'll need to make your own very large pictures, larger than the ones provided by POV-ray.

Ignore the version number and assumed gamma lines for now. I'll talk about them in future posts when it useful to do so. Just know that you may need them.

Next you'll come to what I've called the "Safe zone". These are all the variables you can safely change to get a variety of different flash effects. For now all I'll say is that you can experiment with changing them to what the effect is.

Also, for now, ignore everything below the safe zone. I'll explain how it works in future posts and teach you how to write your own scene description files to do things like create cities, spaceships, and more that look like black and white pen and ink drawings.

This is just a brief introduction to the kinds of things that will be possible using POV-ray.