FragM 2.5.0 update

  • 20 Replies
  • 288 Views

0 Members and 1 Guest are viewing this topic.

Offline 3DickUlus

  • *
  • 3c
  • ***
  • Posts: 820
    • Digilantism
« on: December 03, 2018, 01:54:41 AM »
Applied a few fixes to texture handling and internal shader initialization, hopefully will handle shader fails and warns nicer.
Also added #include MathUtils.frag and made a few small adjustments in the Examples collection (most will probably have done these things already)
FragM 2.0.5-181202 winex package and linux deb + rpm
Attached results of automated test run...
Resistance is fertile... you will be illuminated!

https://en.wikibooks.org/wiki/Fractals/fragmentarium

Offline Sabine62

  • *
  • Fractal Fluff
  • *****
  • Posts: 379
  • It's just a jump to the left...
    • sabine62.deviantart.com
« Reply #1 on: December 03, 2018, 09:15:09 AM »
:clapping: Thank you, Dick, as always!  :thumbs:

Downloaded your source, will compile asap.

Great idea, that contact sheet! I often use IrfanView for them, never thought of using this feature for FragM...
So nice to see at a glance what a formula will look like initially!

To thine own self be true

Offline timemit

  • *
  • Fractal Friar
  • *
  • Posts: 126
    • timemit@DeiantArt
« Reply #2 on: December 03, 2018, 05:15:00 PM »
Very much appreciated, the winex works fine  :thumbs:

Offline 3DickUlus

  • *
  • 3c
  • ***
  • Posts: 820
    • Digilantism
« Reply #3 on: December 03, 2018, 09:09:58 PM »
 :joy: :beer:

Offline batjorge

  • *
  • Fractal Freshman
  • *
  • Posts: 7
  • Fractal Crusader
« Reply #4 on: December 04, 2018, 01:00:39 AM »
Finally I could be able to compile it from source on Antergos (Arch Linux). There's is an old version (1.0) at AUR repositories but too old, imho.
You provide .deb and .rpm packages wich won't work on other distros. Here are the steps I followed to compile:
git-clone https://github.com/3Dickulus/FragM.git
cd FragM
cd Fragmentarium-Source
qmake Fragmentarium.pro

If ColorUtils.h is missing copy code from here https://github.com/Syntopia/Fragmentarium/blob/master/Fragmentarium-Source/SyntopiaCore/Misc/ColorUtils.cpp;
save it at Fragmentarium-Source with ColorUtils.h with mousepad, gedit etc. and run qmake Fragmentarium.pro again.

make

in terminal, type ./Fragmentarium-2.5.0

Offline 3DickUlus

  • *
  • 3c
  • ***
  • Posts: 820
    • Digilantism
« Reply #5 on: December 04, 2018, 02:11:36 AM »
you can remove ColorUtils.h from the Fragmentarium.pro file it's not used by FragM

I'm not familiar with the Arch Linux distro and the .pro file is not being maintained on a regular basis

to compile I recommend... (should be good for any linux system)
  • install Qt + dev package
  • install OpenEXR + dev package
  • install CMake and ExtraCMakeModules
  • git-clone https://github.com/3Dickulus/FragM.git
  • cd FragM/Fragmentarium-Source
  • mkdir build
  • cd build
  • cmake ..     <- don't forget the dotdot
  • sudo make install   <- this will put the executable and distribution files in /usr/local/Fragmentarium folder, all the right stuff in the right places
...but QtCreator works too, not sure if it will do the install part unless it can use the CMakeLists.txt file

in the preferences dialog you can add paths to search other folders for frags to include, currently it looks for ./Examples/Include ./Include ../Include ../../Include and then gives up if not found

if your linux box already has a development environment setup the only thing that might need installing is ExtraCMakeModules (used for  automagically finding OpenEXR includes)

I will test and update the .pro file at next github push (I wouldn't have noticed it tnx batjorge :thumbs: )

does Arch Linux use tgz packages?

Offline Sabine62

  • *
  • Fractal Fluff
  • *****
  • Posts: 379
  • It's just a jump to the left...
    • sabine62.deviantart.com
« Reply #6 on: December 04, 2018, 01:59:03 PM »
@3dickulus re compiling with qt creator: it moans about all the imps  :D it cannot find and will only compile in there when I edit out all those lines. Attached the compile output in case it might be helpful (had to zip it as txt is not allowed;) )

@batjorge Good to see you!  :-* And so nice to read you're using FragM again  :thumbs:

Offline batjorge

  • *
  • Fractal Freshman
  • *
  • Posts: 7
  • Fractal Crusader
« Reply #7 on: December 05, 2018, 04:49:01 AM »
Thank you very much for your help!
I've followed the indications and it compiled without issues. I was just missing the ExtraCMakeModules and included the missing paths. Being on Xfce4, the interface can be "adjusted" with qt5ct plugin for a better integration
Seems to work smooth, despite some flickering when transforms are applied but very happy to see it working finally  :D

PD, AUR uses tar.xz
I attach a first attempt with menger, done in some seconds.

Offline 3DickUlus

  • *
  • 3c
  • ***
  • Posts: 820
    • Digilantism
« Reply #8 on: December 05, 2018, 04:57:00 AM »
lovely :clapping: I'm glad you haven't been attacked by the latest bug (raaaaarrrrrr!!!)

:fp: okokok made a a really dumb booboo :fp:

conflict between GUI and GL thread caused random (and incredibly annoying) crashes where FragM would just quit after rendering, animating, editing just fine, and the backtrace made no sense... until now , sorry I didn't see it sooner :-X
my humblest apologies to the brave souls that dare to run my coding on their precious machines  :-\

freshened the binary packages and sources on git, seems to be more stable now  >:D :))

Offline 3DickUlus

  • *
  • 3c
  • ***
  • Posts: 820
    • Digilantism
« Reply #9 on: December 05, 2018, 05:20:43 AM »
A suggestion (request) for anyone that wants to help with this, a definitive test suite using scripting to render all of the default examples and basic things like file, parameters, texture/image  loading and saving. The FQS script is basically JavaScript. This is the linux shell script (requires conversion to bat file if on windows) I used to render all of the thumbnails, the lines that are commented out are frags that don't render from script control and required an actual click on Build or some other intervention to make them work ??? ...
Code: [Select]
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/BurningShip.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/DomainDistortion2.frag
# ./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/Droste.frag # works but not via script control
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/DrosteGrid.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/Ducks.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/Game\ of\ Life.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/GraphPlotter.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/Kali.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/Mandelbrot-AverageColoring.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/Mandelbrot-DE.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/Mandelbrot.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/MandelbrotCheckers.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/MandelbrotOrbitTrap.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/Metabrot.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/Metaship1.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/PenroseTiles.frag
# ./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/Reaction-Diffusion.frag # works but not via script control
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/Thorn.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/mandel_mobius.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/2D\ Systems/mandelexOptimised.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/BenesiPineFoldDE.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/Mandelbulb_with_Feedback.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/MengerSmooth.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/MengerSmoothforWeb.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/MengerWorkOnHeightmap.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/MengerWorkOnStella.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/Menger_with_Feedback_and_Multisample_beta.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/MengersmoothPolyhedra.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/MengersmoothnoDE.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/PineV322.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/mengermultisampleKN2.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/pinewithgoodcolor.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/pinewithoptionsDE.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Benesi/pinewithoptionsoriginalBruteRaytracer.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/DarkBeam/BioCube.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/DarkBeam/FoldcutToy.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/3DMandel.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/3Dickulus.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/BenesiFoldedMandelbulb.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/BurningShirp.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/DoubleTest.frag
# ./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/IFS.frag  # works but not via script control
# ./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/Knot.frag # works but not via script control
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/LiftedDomainColoring.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/LiftedDomainColoring3D.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/LogisticBulb.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/MMM.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/Mandelbrot-Progressive.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/Mixed.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/Mobius.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/Moebiusbulb.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/Noise.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/OctahedronOT.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/PseudoKleinian-Progressive-DOF.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/QuaternionMandelbrot4D.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/Raytracingtestfrag.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/SphereSponge.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/Spudsville2.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/Stereographic4DJulia.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/StereographicQuaternionJulia.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/Terrain.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/Tetrahedron-Alternative.frag
# ./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/TextureTest.frag # works but not via script control
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/TriPlanarTexturing.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Experimental/iqPath4fragmentarium.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Historical\ 3D\ Fractals/Mandelbox.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Historical\ 3D\ Fractals/Mandelbulb.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Historical\ 3D\ Fractals/QuaternionJulia.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kaleidoscopic\ IFS/Dodecahedron.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kaleidoscopic\ IFS/Icosahedron.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kaleidoscopic\ IFS/Menger.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kaleidoscopic\ IFS/NewMenger.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kaleidoscopic\ IFS/Octahedron.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kaleidoscopic\ IFS/Tetrahedron.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Baird-Delta.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Doyle-Spirals.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Fold\ and\ Cut\ Polyhedra\ -\ Original.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Fold\ and\ Cut\ Polyhedra.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Fold_and_cut_polyhedra_examples/Icosahedral_polyhedra02.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Fold_and_cut_polyhedra_examples/Icosahedral_polyhedra_iterated_10.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Fold_and_cut_polyhedra_examples/Icosahedral_polyhedra_iterated_11.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Fold_and_cut_polyhedra_examples/Icosahedral_polyhedra_iterated_20.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Fold_and_cut_polyhedra_examples/menger_iterated_20.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Fold_and_cut_polyhedra_examples/octahedral_polyhedra02.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Hyperbolic-tesselations-named/hyperbolic-tesselation-3-5-3-colored-named-00.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Hyperbolic-tesselations-named/hyperbolic-tesselation-5-3-n-colored-named-00.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Hyperbolic-tesselations-named/hyperbolic-tesselation-bifurcating-5-3-3-colored-named-00.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Hyperbolic-tesselations-named/hyperbolic-tesselation-cyclic-m-3-n-3-colored-named-00.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Icosahedral_polyhedra_iterated_11.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Icosahedral_polyhedra_iterated_20.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Knot.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Koch01.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Mandalabeth-generic-with-jacobian/Mandalabeth-M3-jacobian.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Mandalabeth-generic-with-jacobian/Mandalabeth-M4-jacobian.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Mandalabeth-generic-with-jacobian/Mandalabeth-M5-jacobian.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/MandalayBox.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/MandelbrotHeightfield.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Menger_Sphere.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Menger_iterated_20.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/NewtonHeightfield.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Pseudo-MandalayBox.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/PseudoKleinian.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/PseudoKleinianMenger.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/PseudoKleinian_4D_Quaternion_Julia.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Quadray/quadray01-07.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Quadray/quadray01-jacobian-02.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/Quadray/quadray04-03forV0.8.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/algebraic07.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/hyperbolic-tesselation-2Din3D-colored-02.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/mdifs.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/my_2D.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/poincare-disc30-circle_limit_6.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/polychora-special.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/polychora-special02.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/polychora03.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/polychora06.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Knighty\ Collection/triangle-tess-ess-01.frag
# ./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Theory/Convolution.frag # works but not via script control
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Theory/Mandelbox\ -\ Dual\ Numbers\ DE\ -\ Slicer.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Theory/Mandelbox\ -\ Dual\ Numbers\ DE.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Theory/Mandelbrot\ -\ Emulated\ Doubles.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Theory/Mandelbulb-Slicer.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/00\ -\ Simple\ 2D\ system.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/01\ -\ Simple\ 2D\ Escape\ Time\ Fractal.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/02\ -\ User\ Variables\ and\ Presets.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/03\ -\ Dynamic\ Systems.frag
# ./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/04\ -\ Textures.frag # works but not via script control
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/10\ -\ Simple\ Distance\ Estimated\ 3D\ system.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/11\ -\ Simple\ Distance\ Estimated\ 3D\ fractal.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/12\ -\ Faster\ raytracing\ of\ 3D\ fractals.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/20\ -\ Progressive\ 2D.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/21\ -\ Progressive\ 2D\ Escape\ Time\ Fractal.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/22\ -\ Progressive\ 3D\ Rendering.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/23\ -\ Working\ with\ the\ back\ buffer.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/24\ -\ Pure\ 3D.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/25\ -\ Image\ Based\ Lighting.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/26\ -\ 3D\ fractals\ without\ a\ DE.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/30\ -\ Simple\ Keyframe\ Animation.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/31\ -\ Simple\ Focal\ Plane\ Tracking\ Target.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/32\ -\ Simple\ Multi-Parameter\ Easing\ Animation.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Tutorials/33\ -\ Simple\ Skybox.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/eiffieGI2/AnimatedModVinz_EiffieGi2.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/eiffieGI2/Eiffies-SoC-DE.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/eiffieGI2/Kisocahedron\ -\ EiffieGi2.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/eiffieGI2/MagGlass.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/eiffieGI2/eiffieGI.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/eiffieGI2/iqPath4fragmentarium.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/eiffieGI2/testSoC.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kali\'s\ Creations/Kalibox.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kali\'s\ Creations/KboxExpSmooth.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kali\'s\ Creations/LivingKIFS.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kali\'s\ Creations/RotJulia.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kali\'s\ Creations/Treebroccoli.frag
./Fragmentarium-2.5.0 --script fqScript/testFrag.fqs Examples/Kali\'s\ Creations/Xray_skifs.frag

and this is the FragM QScript fqScript/testFrag.fqs ...
Code: [Select]
// Fragmentarium qscript
// testing Examples render
// 3Dickulus 180101
// requires ./test/ folder

// used to calculate range frames and/or total frames
app.setFps(25);
// this number should be => EasingCurve max frame / fps
app.setAnimationLength( 10 );

// not saving frag files
app.setAutoSave(false);
// not using unique ID in file name
app.setUniqueID(false);

// false = save images
// true = open a preview window for EACH image (be careful)
app.setPreview(false);

// false = no control from frag
// true = control from frag
app.setAnimation(false);

// begin
app.setFrame(0);
app.setStartFrame(0);
app.setEndFrame(0);

// set the tile buffer size
app.setTileWidth(640);
app.setTileHeight(360);
// set tile multiplier
app.setTileMax(1);
// how many frames to accumulate
app.setSubFrames(10);

fragname = app.currentFragmentName();
// we need a filename
fragname = "./test/" + fragname + ".png";

app.setOutputBaseFileName( fragname );

// render an image
app.tileBasedRender();

app.scriptExitProgram();
...you can find some info on available script commands in the help menus.

Offline Sabine62

  • *
  • Fractal Fluff
  • *****
  • Posts: 379
  • It's just a jump to the left...
    • sabine62.deviantart.com
« Reply #10 on: December 05, 2018, 08:41:19 AM »
That looks like a job for me ;)

That is if someone else doesn't beat me to it as am slightly under the weather after jaw operation with complications which turns my brain into mush for the moment  :))
So if anyone wants to give this a go right away, go ahead, might be some days before I can tackle this ;)

A nice opportunity to have a go at scripting :)

Offline Sabine62

  • *
  • Fractal Fluff
  • *****
  • Posts: 379
  • It's just a jump to the left...
    • sabine62.deviantart.com
« Reply #11 on: December 05, 2018, 05:41:05 PM »
@3Dickulus Sorry, maybe I misunderstand what it is you are after! Do you need some sort of 'generic' script that looks into the Examples-folder, finds all files that are 'renderable' and then renders them to a certain folder?

Or do you just want all frags that are in there now rendered for a contact sheet?
The latter is ready...

update: the more I look at your message the more I am convinced I am not getting it  :)) :embarrass: Brain really IS mush atm... ;D

« Last Edit: December 05, 2018, 08:07:00 PM by Sabine62 »

Offline 3DickUlus

  • *
  • 3c
  • ***
  • Posts: 820
    • Digilantism
« Reply #12 on: December 06, 2018, 02:32:04 AM »
take it easy Sabine, get your rest, this is just something to play with ;)

Ideally it would be nice to...

run a single fqscript that renders all of the frags that are in the distribution (that are renderable via script control), call them the default examples
for the animation tutorials, 10 second lores animations, say 640x360 or something (complete to a playable mpeg file <<< might have to add some commands for this to work, test for mplayer?)
along with, perhaps at the beginning, a tilesize benchmark and use that tilesize for the rest of the tests
maybe write a parameter file and read it back for comparison, if == then OK, sort of thing

and of course time the entire run, it should start from cmdline and go through all steps with no intervention, there is a script command to close tabs, app.closeTab(int id); so that FragM doesn't have to do a start->run->exit cycle for every frag just app.closeTab(0); before calling app.loadFragFile(fileName);

a well rounded fitness test is the idea, if you need "getter" functions in the fqScript just add them to MainWindow.h public slots section like a function that returns the animation length would be...
Code: [Select]
      int getAnimationLength() {
        return timeMaxSpinBox->value();
      };
...and it would get used in fqScript as animlength = app.getAnimationLength(); you can also return values from the QSettings object this way for checking #include paths and tool paths etc. for reporting EXR command availability and ffmpeg/mplayer status etc. etc. etc.



Offline Sabine62

  • *
  • Fractal Fluff
  • *****
  • Posts: 379
  • It's just a jump to the left...
    • sabine62.deviantart.com
« Reply #13 on: December 07, 2018, 09:28:50 AM »
Quote
take it easy Sabine, get your rest
That's definitely the best advice I've had these past few days!  :yes:
Such a shame to have all the time in the world for a week or so and then a brain that's off to the Bahama's or somewhere (not quite sure where, didn't leave a note...)

But, to take your scripting idea a bit further: it would be nice to be also able to let the script read all .frag-files in the Examples folder, check if they have a line #donotrun, else put the filneames into a list/index/array-thingy and then render them with smart filenames. Full automation is the thing we need ;}

Oh well, you will maybe have to remind me of this, once I have completed the logtofile-lesson ;)
But: had good fun getting the scripting going, I only had taken a look at that ages ago, so was great to edit the script to get this working in general on my win-machine. BTW: All files did just render an image here(?!), except three by Matt Benesi which seem to have problems with DE-Raytracer (menger-ones)

Offline 3DickUlus

  • *
  • 3c
  • ***
  • Posts: 820
    • Digilantism
« Reply #14 on: December 07, 2018, 05:21:30 PM »
Some of MBs files are raytracer experiments and are meant to be included by renderable frags.

A test script for the default frags an functions is what I would like. Rendering ALL frags would be an exorcise for the user ;)


xx
FragM 2.5.0

Started by 3DickUlus on Fragmentarium

35 Replies
576 Views
Last post October 28, 2018, 06:12:45 AM
by 3DickUlus
clip
Video processing in FragM

Started by 3DickUlus on Fragmentarium

1 Replies
311 Views
Last post September 15, 2018, 11:54:03 PM
by utak3r
clip
FragM thumbnail test

Started by 3DickUlus on Fragmentarium

6 Replies
318 Views
Last post October 06, 2017, 05:29:47 AM
by 3DickUlus
xx
Knighty Menger Sponge basic setup for FragM

Started by mclarekin on Fragmentarium

2 Replies
57 Views
Last post November 18, 2018, 11:27:00 AM
by timemit