Fractals/fraktaler-3
< Fractals
Fraktaler 3 is a
- cross-platform (Linux, Windows, Android, Web)
- fractal program by Claude Heiland-Allen
- for fast deep zooming of hybrid escape-time 2D fractals.
It has a graphical explorer using SDL2, OpenGLES and Dear ImGUI, and a batch mode for high resolution images and zoom sequences, with optional export of raw data in EXR format compatible with Kalles Fraktaler 2 + and zoomasm.
dependencies
edit- SDL2
- OpenGLES
- Dear ImGUI
- OpenCl
git clone https://github.com/ocornut/imgui.git git clone https://github.com/AirGuanZ/imgui-filebrowser.git git clone https://github.com/ToruNiina/toml11.git git clone https://code.mathr.co.uk/fraktaler-3.git
sudo apt install \ build-essential \ git \ libglm-dev \ libmpfr-dev \ libmpfrc++-dev \ libopenexr-dev \ libsdl2-dev \ ocl-icd-opencl-dev \ opencl-headers \ p7zip \ pkg-config \ pocl-opencl-icd \ xxd
run
edit./fraktaler-3.gcc
fraktaler-3-2 -P -b zoom-out-sequence.toml loaded wisdom /home/claude/.local/share/uk.co.mathr/fraktaler-3/wisdom.toml Frame[100%] Ref[100%] BLA[100%] Tile[100%] $ ls fraktaler-3.00000000.exr fraktaler-3.00000006.exr fraktaler-3.00000012.exr fraktaler-3.00000001.exr fraktaler-3.00000007.exr fraktaler-3.00000013.exr fraktaler-3.00000002.exr fraktaler-3.00000008.exr fraktaler-3.00000014.exr fraktaler-3.00000003.exr fraktaler-3.00000009.exr fraktaler-3.00000015.exr fraktaler-3.00000004.exr fraktaler-3.00000010.exr zoom-out-sequence.toml fraktaler-3.00000005.exr fraktaler-3.00000011.exr $ exrheader fraktaler-3.00000000.exr ... dataWindow (type box2i): (0 0) - (12287 1359) ... $ display *.exr (images are all white, because they are 100% exterior due to starting at default zoom 1e0) $
help
editOutput of fraktaler-3 --help:
usage:
fraktaler-3 [mode] [flags ...] [inputfile [inputfile ...]]
modes of operation:
-h, --help print this message and exit -V, --version print version information and exit -i, --interactive interactive graphical user interface -b, --batch command line batch processing -W, --generate-wisdom generate initial hardware configuration -B, --benchmark-wisdom benchmark hardware for optimal efficiency -S, --export-source export this program's source code
flags:
-v, --verbose increase verbosity -q, --quiet decrease verbosity -p, --persistence file path to persist state -P, --no-persistence don't persist state -w, --wisdom file path to wisdom
input files are merged in command line order The help text will list the default locations for persistence and wisdom files on your system, as well as the file name for the --export-source option.
Multiple parameter files may be specified on the command line. After persistence is loaded, they are merged in order (later files override earlier files). This allows you to keep different aspects of parameters in different files.
transformations
edit- The exponential map feature is not so useful in the graphical program, but can be used in the command line version for rendering a zoom out sequence for later assembly into a video using zoomasm
Links
editfiles
edit- parameter file text (suggested extension .f3.toml) - TOML format
- images (EXR format, extension .exr) - OpenEXR
exrheader fraktaler-3.00000037.exr
file fraktaler-3.00000037.exr: file format version: 2, flags 0x0 Fraktaler3 (type string): "program = "fraktaler-3" version = "0-414-g61fa84a" location.real = "-1.748764520194788535" location.imag = "3e-13" location.zoom = "1.0000000e15" bailout.iterations = 262144 bailout.maximum_reference_iterations = 262144 bailout.maximum_perturb_iterations = 4096 bailout.inscape_radius = 0.000976562 image.width = 601 image.height = 67 image.subframes = 64 transform.reflect = true transform.exponential_map = true render.zoom_out_sequence = true opencl.tile_width = 601 opencl.tile_height = 67 " channels (type chlist): B, 32-bit floating-point, sampling 1 1 G, 32-bit floating-point, sampling 1 1 R, 32-bit floating-point, sampling 1 1 compression (type compression): zip, multi-scanline blocks dataWindow (type box2i): (0 0) - (600 66) displayWindow (type box2i): (0 0) - (600 66) lineOrder (type lineOrder): increasing y pixelAspectRatio (type float): 1 screenWindowCenter (type v2f): (0 0) screenWindowWidth (type float): 1 type (type string): "scanlineimage"
location.real = "-1.941564847210618381782745533146630687852577330811479185328717110626315465313888984406570091271861776378826092790143826203994152325590923147877133022224438450505595392332442169268786604880239682848013406897983579432062702292199644932564206420775763033730026410960393034024379448558313295127784426381592278080925192198166506414945985414913745366605657655610477078243223433128650561902149109766955341541448889252090006440504495875324697439205551007663522598546938799920069758806395662880415099380114727803945598174113344976815709788824810872243858870025811047073266393172169520770249454031205263249410283959479169565468406337528155043698920579273678870784676542455819793013621475835287373620100519033551698084870044144096525907756214603649878765768441725598786715107648812695912688272348358202539017931213566557756771117546689787437119363273090858225103068635520748447418748363430805526175228812153552404870337873296242637654897774106552491179507233830264867055720154027738114532472834129907542036414627198070205428671288600626717940810743065719692081657257083298414914079629307719877169697203460540630000679002070296933515367765096894637520233387261677527116574909499106836689943282145414983901962836972429294354792030773990246030933771660915959463839410311609001092258001208772024174367234004812961533343197123692106177497640839672883719696626288402363726247440183295029163880397919214040826126900073973638637566578208702814548391703168474392383593212772787731464838088077224699638406743366046222299920539039887163949934166963836811009496709145476491269052150307331295997696598642224921758611196703647774310100824454754453378692238473281876068395860361747421509077890568367923248938440919450666764746563667104471327430234809386514744994479578918258139825168762910680781831023955275492781814592422214938019500942282403152718152583429320091988757597326162896044423940280436579379250758238150181677659582319810124929896915790686630777656868121991116553823614967588334809071895616642606935606074858069732264297184172026997781642831813555710815432177033080251973441185057582367440091110843860622138414561875643370900646057697961216473136674094515585359492045093031169458552950861210067868990069649613018250078461502572888267902093886429413235954091998533512387698508224032840007461108905888878936712481329924920758423963101423671524810383755418536530931147569126085854905997546750284390836145218644767026524860219389612672917184135093515351440137017875343267106105093234535923345453588257553484550210988965614138849027483452997361327494579395325872160214974105239331592524594369150188797359380002999428260744648273685801485062771062283341261252665204132897101670705129030433332038916860978021784527372660253641186001797960631162225700735543442809212529421959800859631684925688086957903450031876903213378895363984669656174378394848828662491287275427562355094329881843892371905891363815917013435735261628338481776645199230206051992093463701679670012828167982422504379893524492879191497084894922576575660921357705998236585956378644035589226542323286665436731208546815423007982122742733894034678760552296794329535587849467738317885329863463242761164667692358223018142882123247539116527159532753920850365440722610461795764889919310185260171054544985137369235154554304940059632171722414684286138383501773415057939488043213172235441555106648355044355391233758480556732598344113015309927936212966784974691525847156004581824315522927394900768552759061458508079647172411453020446899544906575567336056418575049261413172131851152494947470184383652557573651992514409529812895846029166547850176356488097864860289314225499677990887360532931687650438535765399000166232522594559391892684925740039704185368242880536277639758993317174680558415652951942514607673069357919857260486354"
location.imag = "2.348911956401652748611382363072520535146733491918842206389055226478822558334356028474458306453568269131543696797365302213154106976514279082244760267169482925324526783567612979671556935057632055950984996909780142673870494806718441563468971222881465156907737846885411815804623686136775248121351602452938196791632141551203544924477065181043689768585002934501366247348894440025575034790977798556673982209118819387316634056673728437905475480824207093789985152660660796470895526541440245169605192293780704054201356420547490025338952432606049964709328857846861417513600552731799643681595245395686988951646887256885954913669780792964184025852007185490455600079530313065015412120431544281411000883436175700100755643502134003127400266634841554627987192002123927402658620084127543742083778598017547508760673625017745837047226871893523527022399890081945911197605364730161342705278848485124574682491279788530067609533079049478398986047847983972001764819156565755354326002905542507480820059290426742712804028817087523369562937215212612904336088048132302802862775437161150812264724605689069081436863515240452173801300714588231927754167001145055783695030502517679091867645972152131281950436820800642430650719709799248997373662802383522383728708100167105045934741758120563240619508429409263325664232101394865918891717788286392682273910844038755619719694482789478765835921982258456504697071599084602547626988072659073902294817850999295146301151819189581096894966914306782148725101047973857971183966368556392489984001268762215576350231765055323286514244799060484573201272893610318786886204290069662111659708122739712189774743739800965469849720836828331398655933538341163498137309170029696829049759241035466935137380840598501596696433658234571517949705876880775966141832184491036484520614953456138004895628751874368118806676048052933590152010351393305876747506539949321504627614276077826614282883826502801546997144217149427591454981918422414700754950892289586365073462657884225261119072856209897972217681362290126057381673109065004859492884983392588329325943196101413715919534526662966518996029715522705281433766162245585921066836784151039282692733266581776821803392615463278063762569154398096421583781961425272467224400238786777787057691570645817689820989087807507202607204424924302873613904218059784818247676395238645472434259554102514159552240730691322340413842241268213834149709528706514553724664567801903402240125384283406177463810865382078416066041162205457202040097571654039068900436565607579688861751386273437147633837175759423123782121059992340843638976542491619616721240707699182762901902457881956252753755542525046656795781387399414211410058657062996651489499230059912393101353702379101252993636688212173092017002441988691600905387288953613012271760014041471507305899461467237026040155865673294436686288489064573310042362571214740808656550235500893082338024464752705630639598923599812755067568406644418410908656796336604324227361637640201957166044187263630622072489236137199511921096807717330636805940632361331614384427249172810219683522407075518367730649165243792872682230339286009707120948066977912801945301971489666691152738504000234264492829861082007755878186353657391575969037890793507812419299941828403592000286654117164037545076892235511998963155488596897447316433466284271702397024720026567764282966538060228938320243333174656442494289469553689264266824656421054000462281567678086050788756644012025683226050038399480067529754327429973435343599699135593109676352382173193844221842544770748622726551353163716194488271418173093929303360824571352118582549565180371595453272352097817496528144543662534792783260636316303412950338514389922496456633319004613765453940022755497086172440543892771156330673123788549821094421341129110235193999814306839803150313852972941e-4"
location.zoom = "4e2804"
reference.period = 1137764
bailout.iterations = 10100100
transform.rotate = 31.274666258278437