---
name: "substrate"
section: "6x"
platform: "linux"
package: "xscreensaver-data-extra"
version: "6.09+dfsg1-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/substrate/6x"
---

# substrate(6x)

Grow crystal-like lines on a computational substrate

## NAME

substrate - Grow crystal-like lines on a computational substrate

## SYNOPSIS

**substrate** \[--display *host:display.screen*\] \[--visual *visual*\] \[--window\] \[--root\] \[--window-id *number*\] \[--foreground *color*\] \[--background *color*\] \[--wireframe\] \[--max-cycles *cyclecount*\] \[--growth-delay *delayms*\] \[--initial-cracks *numinitial*\] \[--max-cracks *nummax*\] \[--sand-grains *numgrains*\] \[--circle-percent *circlepercent*\] \[--fps\]

## DESCRIPTION

Lines like crystals grow on a computational substrate.  A simple perpendicular growth rule creates intricate city-like structures.  Optionally, cracks may also be circular, producing a cityscape more familiar to places for which city planning is a distant, theoretical concern.

## OPTIONS

*substrate* accepts the following options:

- **--wireframe (Default: *False*)**

  Don't draw sand-painting colored effects, only make a wireframe.

- **--max-cycles *cyclecount* (Default: *10000*)**

  Maximum number of growth cycles before restarting.  The higher this is, the more complex the art.

- **--growth-delay *delayms* (Default: *18000*)**

  Delay in ms between growth cycles.  More delay, slower (but smoother and less CPU intensive) art.

- **--initial-cracks *numinitial* (Default: *3*)**

  Initial number of cracks in the substrate

- **--max-cracks *nummax* (Default: *100*)**

  Maximum number of cracks in the substrate at a single time

- **--sand-grains *numgrains* (Default: *64*)**

  Number of sand grains dropped during coloring.  More grains cause  a denser colour but use more cpu power.

- **--circle-percent *circlepercent* (Default: *0*)**

  The percentage of the cracks will be circular.

- **--fps**

  Display the current frame rate and CPU load.

- **--visual *visual***

  Specify which visual to use.  Legal values are the name of a visual class, or the id number (decimal or hex) of a specific visual.

- **--window**

  Draw on a newly-created window.  This is the default.

- **--root**

  Draw on the root window.

- **--window-id *number***

  Draw on the specified window.

## ENVIRONMENT

- **DISPLAY**

  to get the default host and display number.

- **XENVIRONMENT**

  to get the name of a resource file that overrides the global resources stored in the RESOURCE\_MANAGER property.

- **XSCREENSAVER\_WINDOW**

  The window ID to use with *--root*.

## SEE ALSO

**X**(1), [**xscreensaver**(1)](/xscreensaver/1.md)

## COPYRIGHT

Copyright © 2003 by J. Tarbell \<complex@complexification.net\>.\
 XScreenSaver port: Mike Kershaw \<dragorn@kismetwireless.net\>

## AUTHOR

J. Tarbell \<complex@complexification.net\>, Jun 2003.\
 Mike Kershaw \<dragorn@kismetwireless.net\>, Oct 2004.
