Skip to content

Screenshots

Eric Kerfoot edited this page Feb 16, 2017 · 7 revisions

Eidolon provides the facility for generating screenshots from the main window, secondary windows, or the whole UI as single shots or as time series. The menu item File -> Take Screenshot(s) prompts the user to choose a filename (which is an initial template name for time series) and then presents this window:

Path

This give the chose filename to export the screenshot(s) to, and can be changed here or selected again through the dialog with the Choose... button. Acceptable file formats include png, jpg, tiff, bmp, and tga.

Source

The dropdown list allows the user to choose which rendering component the screenshots are sourced from. The default is the main 3D view but other options include 2D views and the whole UI window (although how well this renders varies by platform).

If Transparent Background is selected then the output images will be rendered with the background colour replaced by transparent values if the selected file format permits transparency (eg. 32-bit png).

Resolution

This allows the user to specify the size of the output screenshot images. By default this is set the current size of the selected source. Changing the aspect ratio of the output will cause the renderer to adjust the window size of the internal camera it renders from, therefore this will not affect the aspect ratio of the drawn objects.

Timestep(s)

If time-dependent data is being rendered, Eidolon can render multiple images at set time intervals. With Single Timestep selected (which is the default), the current timestep is rendered into the file specified in Path.

If Multiple Timesteps is selected, images are rendered from the Start time to the End time and stored in files numbered based on the filename specified in Path. The Frames/s state how many frames should be rendered per second, and Timesteps/s states how many data timesteps there are per second (ie. assuming timesteps are milliseconds, a value of 500 produces a half time playback). The total number of images will be stated given these parameters.

Making Animated Gif Files

Screenshots captured over time can be put together into an animated gif file using various tools. In GIMP the first image can be opened with the following frames imported as layers, a gif can then be exported where the user will be prompted to set the animation speed. On the command line ImageMagick can also be used to do the same thing, and PIL in Python scripts can also be used. The results for these strategies aren't always optimal because gif files are paletted and typically default or suboptimal palettes are chosen by the export libraries.

A more consistently agreeable result can be made using ffmpeg, first to calculate a palette then encode a gif using it. Assuming your input files are named out0000.png, out0001.png, etc. and the output file is to be out.gif, the following shell script will invoke ffmpeg to perform this operation:

in=out%04d.png
out=out.gif

palette="./palette.png"

filters="fps=25,scale=-1:-1:flags=lanczos"

ffmpeg -v warning  -i $in -vf "$filters,palettegen" -y $palette
ffmpeg -v warning -framerate 10 -i $in -i $palette -lavfi "$filters [x]; [x][1:v] paletteuse" -y $out

ffmpeg also supports other formats including mpg, avi, mp4, and webm if desired. Simply change the extension of the output filename.

Clone this wiki locally