Skip to content
Jim Orcheson edited this page Feb 6, 2019 · 4 revisions

ChaosExplorer

ChaosExplorer is a program that uses OpenGL to build and display images of various chaotic systems. Specifically, the displays are generated using GLSL on the GPU rather than generating the displays on the CPU. See my web articles (listed in the section, below) for more information about chaotic systems in general and the specific chaotic systems that are studied in this program. Many images and videos of the chaotic systems are displays in those posts.

Building ChaosExplorer With Visual Studio 2017
Mandelbrot and Multibrot Sets

System Requirements and Program Modifications

  • Windows 8.1 or Windows 10 desktop.
  • Fast GPU that supports OpenGL 3.3.0 or later (see comments in subsection, below, for program changes required if the animations are jittery [i.e. do not run smoothly]).
  • Monitor with minimum resolution of 900 by 900 pixels (see comments in subsection, below, for program changes required if the resolution of your monitor is less than that).
  • Microsoft Visual Studio 2017 (any version). See also the Building ChaosExplorer With Visual Studio 2017 wiki page.

Program Modifications to Get Around System Limitations

Animations Are Jittery

The private access section of the MultibrotPanel class in MultibrotPanel.h contains four static const int values that control the rate at which new images are displayed. The values are in milliseconds per image, so to change the rate at which the images are generated, modify these values. It should be obvious which value controls which iteration. Because the size of the MultibrotPanels determines the number of pixels that are generated, making the panels smaller will also speed up the rate at which the images can be generated. See the next subsection.

Changing the Size of the Main Window

The size of the main window is controlled by the size of the MultibrotPanels. The size of these panels is set to 800 by 800 pixels in the ChaosExplorerWindow constructor, so change the size there. In order to maintain the proper proportions in the images, the horizontal and vertical dimensions of the panel must be the same.

Related Articles