frctlart_v2.0.0
Major release 2.0.0
Main changes and notes
Fused with pyogl
project, originally planned to test porting Shadertoy assets to Python, using Hollistic3D's tutorials on said port.
Now saves cmap in .frctl
files and loads them along with ordertxt
, allowing for one-to-one recreation on load in the browser.
New frctlexplorer.exe
file uses a GLSL shader to render a given frctl
file with peak precision, computed directly from the function array using fancy Newton Binomial tricks on the series expansions. The file also conserves cmap and order, baked into the fragment shader on load.
New features
The app allows you to click anywhere and display current complex position as a tuple in the console. This is handy to know if a point is in a certain Fatou component, for example.
The template fragment shader comes with added cmaps that can be switched using the mouse's middle click (sorry laptop users, might change one day), and custom constant c
with some recommended values.
One of these values is the following :
c = vec2(((iMouse.x/iResolution.x)*2.-1.)*2*zoom_amount*(iResolution.x/(2.*iResolution.y))-center.x, ((-(iMouse.y/iResolution.y)+1.)*2.-1.)*zoom_amount)-center.y;
Using this value and adding + c.x
to z
's x component and + c.y
to z
's y component will generally gives very interesting results, that change relative to mouse position on screen (aspect ratio accounted for).
You can then use the click feature to find interesting c
s and reuse them as fixed constants on later instances of the program.
You can use arrow keys : left to go backwards in time (by default, time is binded to iteration count), right to speed up. P
pauses, but mouse-dependant functions still vary with mouse movement, which allows you to explore a parametric space at a fixed iteration timestamp.
You can also use LeftCtrl
to slow time down, if ever things get too fast to see what's going on properly.
You can zoom in by scrolling the mouse. It centers the zoom where your cursor is when you zoom, and scales by 2.
Finally, you can use F11
to go fullscreen and F12
to take a screenshot (in fullscreen or not), which will save to a dump
folder.
Of course, all features mentionned here are hardcoded in, but many of them depend on the shader itself, so if you feel like editing the shader to get different results, you absolutely can, so long as the application is run standalone as to not regenerate the fragment shader.
Recommendation
Prior to this release, the recommended application to run frctl
files was obviosly the only one, browser.exe
. Now, I'd recommend using frctlexplorer.exe
, and sticking to browser.exe
only to find new interesting candidates for beautiful sets.