Mandelbulber 2 – 2.12 veröffentlicht Free

Mandelbulber GPU Version Win64, OSX und Sorce Code fĂĽr Linux

Am 16. N0vember wurde die Neue Version auf GitHub und Sourceforge Net frei gegeben, nachd dem Buddhi das im Fractalforum bekanntgegeben hatte.

Wie immer habe ich einige Screenshots erstellt, um sich einen ersten Eindruck zu verschaffen. Das es bei Mandelbulb 2 – 2.12 um eine GPU Version handelt, spricht alleine schon fĂĽr sich, um immense Rechenzeiten zu vermeiden, was sich insbesondere bei Animationen deutlich bemerkbar machen dĂĽrfte.

 

 

  • Mandelbulber Arbeitsfläche
    Mandelbulber Arbeitsfläche

Wenn ihr mit dem Mauszeiger über die Schrift geht, bekommt ihr von Mandelbulder 2 Tipps angezeigt, was sich hinter den einzelnen Regler, und Schieber verbirgt, und zu was sie gut, oder schlecht sind. Das schöne ist, das gibt es auf deutsch, was die Sache doch erleichtern kann.

 

Sämtliche Neuerungen findet ihr weiter unten im Artikel.

Neuerungen in Mandelbulb 2 – 2.12

Neues in 2.12: (Google Ăśbersetzung)

– OpenCL: Auflistung der verfĂĽgbaren OpenCL-Plattformen und Geräte
hinzugefĂĽgt – OpenCL: Abfragen
von OpenCL-Plattformen und Geräteeigenschaften hinzugefĂĽgt – OpenCL: Auswahl der OpenCL-Plattform und des Geräts im Dialogfeld Einstellungen
hinzugefĂĽgt – OpenCL: PopulateOpenCL.php hinzugefĂĽgt, um einige OpenCL automatisch zu generieren header-Dateien
– OpenCL: populateUiInformation.php generiert automatisch OpenCL-Fraktal-Formelcode auf der Basis von C ++
– OpenCL: Konvertiert alle Fraktalformeln in OpenCL-Code. Formeln werden im formula / opencl-Ordner gespeichert
– OpenCL: Ausgewählte
Fraktalformeln werden als separate Dateien geladen – OpenCL: Angewendete Hybridsequenz an ComputeFractal ()
– OpenCL: Zusätzliche Entfernungsschätzfunktionen (logarithmisch, linear, pseudoKleinian)
– OpenCL: Delta-Distanzschätzalgorithmus hinzugefĂĽgt
– OpenCL: Zum Aufruf hinzugefĂĽgte Makros alle Fraktalformeln in Iterationsschleife nach Hybridsequenz
– OpenCL: Julia-Modus hinzugefĂĽgt
– OpenCL: Implementiert detailLevel, iterThreshMode, interiorMode, Glätte
– OpenCL: Rendering-Engines hinzugefĂĽgt:
* schnell – sehr einfacher und schneller Shader. Keine Effekte
* begrenzt – die meisten Effekte, auĂźer Reflexionen und Refraktionen
* voll – mit verzweigtem Raymarsch – alle Effekte
– OpenCL: Implementierte Verwendung von Material # 1
– OpenCL: Shadow fĂĽr den Einfallswinkel von Lichtern
hinzugefĂĽgt – OpenCL: Soft Shadows fĂĽr Hauptlichtquellen
hinzugefĂĽgt – OpenCL: Spiegelreflexionen hinzugefĂĽgt
– OpenCL: Alle
Farbfunktionen hinzugefĂĽgt – OpenCL: Hintergrundshader hinzugefĂĽgt (ohne strukturierten Hintergrund)
– OpenCL: Added “ Fast Ambient Occlusion „shader
– OpenCL: Ambient Occlusion mit“ multiple rays with light map “
hinzugefĂĽgt – OpenCL:“ langsame „Berechnung von Normalenvektoren
hinzugefĂĽgt – OpenCL: Screen Space Ambient Occulsion (SSAO)
hinzugefĂĽgt – OpenCL: Shader fĂĽr Hilfslichtquellen hinzugefĂĽgt und zufällige Lichter
– OpenCL: „Glut“ -Effekt
hinzugefĂĽgt – OpenCL: Effekt „sichtbares Licht“
hinzugefĂĽgt – OpenCL: Effekt „volumetrische Lichter“ hinzugefĂĽgt
– OpenCL: „Iterationsnebel“ -Effekt
hinzugefĂĽgt – OpenCL: Alle Perspektive-Typen zu Opencl-Code hinzugefĂĽgt (Dreipunkt, Equirectangular, Fish-Eye, Fulldome)
– OpenCL: Monte-Carlo-DOF-Effekt mit statistischer Rauschkontrolle
hinzugefĂĽgt – OpenCL: Benutzerdefinierter DE-Schritt hinzugefĂĽgt Multiplikator fĂĽr volumetrische Effekte
– OpenCL: DOF-Post-Effekt basierend auf Z-Buffer
hinzugefĂĽgt – OpenCL: Sweet-Spot-Rotation hinzugefĂĽgt (zB fĂĽr
Volldome benötigt) – OpenCL: Alpha-Kanal
hinzugefĂĽgt – OpenCL: Box und Sphärisches Folding zum OpenCL-Code hinzugefĂĽgt ( Kompatibilität mit Mandelbulber 1.21)
– OpenCL: Selektion der gerenderten Kacheln basierend auf der aufsteigenden Zentrumsdistanz. Dies macht das Rendering das Bild von der Mitte nach auĂźen so reibungslos wie möglich offenbaren
– OpenCL: Kernels werden nur bei dynamischem Code neu kompiliert
– OpenCL: Behandlung der meisten OpenCL-Fehler
hinzugefĂĽgt – OpenCL: Untergrenze fĂĽr Distanzschwelle (1.0e-6) hinzugefĂĽgt, um signifikante numerische Fehler zu vermeiden
– OpenCL: Mutex-Mechanismus zum Schutz hinzugefĂĽgt gegen Concurrent Rendering mit OpenCL durch viele Rendering-Threads (Bild, Vorschaubilder, Thumbnails)
– OpenCL: Marker fĂĽr aktuelle Pending-Kachel hinzugefĂĽgt
– OpenCL: CLI-Modus fĂĽr Rendering mit OpenCL vorbereitet
– OpenCL: OpenCL: OpenCL-Header-Dateien auf verschiedenen OpenCL-Plattformen laden (nVidia, AMD, Intel …)
– OpenCL: ĂśberprĂĽfung der GPU-Speicherressourcen hinzugefĂĽgt und Vergleich mit der Mem-Limit-Einstellung im Voreinstellungsdialog. Wenn nicht genĂĽgend Speicher vorhanden ist, werden die Effekte mit der CPU gerendert.
– OpenCL: BAT-Skript hinzugefĂĽgt, um TDR im Grafiktreiber zu deaktivieren (Timeout-Schutz)
– OpenCL: CL_DEVICE_TYPE_ACCELERATOR wird fĂĽr k1om unterstĂĽtzt (x100 Xeon PHI Co-Prozessor)

– Neue   Fraktalformeln   hinzugefĂĽgt :
* Jos-Kleinian
* mandelbulbQuat
* mandelbulbJuliabulb
* aboxMod12
* quaternionCubic4d
* boxFoldBulbPow2V2
* boxFoldBulbPow2V3
* aboxMod13
* boxFoldQuat
* transfScaleVaryMulti
* transfBoxFold4dTglad
* transfSphericalFoldCuboid
* transfSphericalFoldXYZBias

– Aktualisiert Fractalformeln
eine Aufzeichnung von Aktualisierungen und Änderungen Formeln können in fractal_list.hpp zu sehen ist
eine kurze Zusammenfassung:
* Bei einigen Formeln wurde die Funktion vary_scale hinzugefügt, geändert oder geändert,
* aboxMod2 hatte größere Korrekturen,
* aux.color wurde in mehr Transformationen implementiert.

– Fraktale: Alle Fraktalformeln wurden in 4-dimensionale Vektoren konvertiert. RĂĽckwärtskompatibilität wurde beibehalten
– Fraktale: Standardisierte Schnittstelle fĂĽr alle Fraktalformelfunktionen
– Fraktale: Verwendete Funktionszeiger zum Aufruf von Funktionen fĂĽr fraktale Formeln. Dadurch wurde die Komplexität von ComputeFractal () reduziert. Die Zuordnung von Fraktalfunktionen erfolgt in fractal_list.cpp
– Shader: Korrigierte Berechnung der Shader bei Erreichen der „Mindestansichtsdistanz“.
– Shader: FĂĽr Zusatzscheinwerfer wurden weiche Schatten hinzugefĂĽgt
– Shader: Parameter zur Definition der Farbe von „falschen Lichtquellen“ (Lichter basierend auf Orbit Traps)
– Shader: Korrigierter Algorithmus fĂĽr Orbit Trap Lights (Oberflächen Shader)
– Shader: RayRecursion Algorithmus teilweise konvertiert von rekursiv nach iterativ – kompatibel mit OpenCL
– Shader: Optimierte Mehrstrahl-Okklusion im Monte-Carlo-Modus.
– Shader: Der Parameter „DOF_max_radius“ wurde hinzugefĂĽgt, um den maximalen Weichzeichnungsradius zu begrenzen.
– Animation: aktualisierter Code fĂĽr die Verwendung von OpenCL-Rendering
– Animation: erhöhter Animationsrahmenbereich. Das alte Limit war 99999, also weniger als eine Stunde mit 30 fps Frames. Das neue Limit ist 9999999, also etwas mehr als 24 Stunden eines 100 fps Videos.
– Animation: Fixbilder löschen von Keyframes / Flug
– AnimBySound: Audiodateien können direkt aus dem Internet geladen werden (wenn der angegebene Pfad von http: // startet)
– UI: Parameter fĂĽr die automatische Aktualisierung im Voreinstellungsdialog hinzugefĂĽgt
– UI: png, tiff und exr speichern mit Fortschrittsanzeige auf jedem Kanal
– UI: fix png16 und png16alpha mit doppelter .png Erweiterung speichern
– UI: Formel ui änderte die meisten Iterationen max von 250 zu 999
– UI: standardisierte Farbauswahl fĂĽr alle OS
– UI: Fehler behoben: EinfĂĽgen von Julia – Werten abgestĂĽrzt mandelbulber
– UI: Changed Startsequenz. Jetzt werden Symbolleistensymbole nach allen anderen Initialisierungen des Programms aktualisiert.
– UI: Neue Farbthemen fĂĽr das Hauptfenster hinzugefĂĽgt
– Warteschlange: Problem mit ignorierten Einstellungen der maximalen Anzahl von Threads und der Threadpriorität behoben, wenn die Warteschlange gerendert wurde
– Gamepad: Korrigierte Gamepad-Auswahl, wenn viele Geräte verbunden sind
– NetRender: Anzeigen des Servernamens im Client bei Verbindung
– Voxel-Export: Korrigierte Grenzen (Bounding Box) fĂĽr Mesh Export (es wurde x und y getauscht)
– Voxel Export: Korrigierter Mesh Export. Die Voxelgröße in jeder Achse muss vereinheitlicht werden, um korrekte Flächen und Normalenvektoren zu berechnen. Jetzt gibt es nur noch den Parameter „Auflösung“, der die Auflösung in der längsten Achse angibt (hängt von den Grenzwerten ab)
– CLI: Beispielpfad zum Benchmark hinzugefĂĽgt. Jetzt kann der Benchmark die Renderings der Beispiel-Renderings optional in einen Ordner legen, wenn dieser Ordner mit der Option -o / – cli angegeben wurde.
– CLI: Optionen fĂĽr OpenCL-Konfiguration hinzugefĂĽgt
– CLI: Benchmark rendert alle 300+ Beispiele
– CLI: Benchmark aktiviert fĂĽr OpenCL mit 24 Stunden Test Timeout.
– CLI: Benchmark generiert eine detaillierte Protokollausgabe fĂĽr jedes gerenderte Beispiel.
– Einstellungen: enumerative Felder werden als Namen gespeichert
– Kompilierung: UI-Dateien fĂĽr fraktale Formeln in den Formelordner
verschoben – Kompilierung: * .pro-Dateien in qmake-Ordner
verschoben
– Kompilierung: mandelbulber- opencl.pro-Datei hinzugefĂĽgt – Kompilierung: MSVC-Lösung fĂĽr OpenCL aktualisiert
– Kompilierung: MSVC-Lösung enthält OpenCL ICD-Loader-Binärdateien fĂĽr Systemkompatibilität
– Kompilierung: MSVC-Lösung ist voll funktionsfähig und kompatibel mit Visual Studio 2017
– Kompilierung: MSVC-Build ist jetzt Standard fĂĽr Windows-Version
– Kompilierung: In MSVC umverteilbar im Build-Paket
– Kompilierung: neuer Windows-Installer (Install Jammer wurde nicht mehr unterstĂĽtzt)
– Kompilierung: CLEW fĂĽr mingw-Builds implementiert
– Kompilierung: SHARED_DIR_IS_APP_DIR fĂĽr AppImage hinzugefĂĽgt. Erlaubt freigegebene Daten am gleichen Ort wie die Anwendung, wenn zur Kompilierzeit definiert, kann dies fĂĽr das AppImage-
Paket verwendet werden – Kompilierung: updated prepare_for _ *. Sh-Skripte
– Kompilierung: Dokumentationsdateien verschoben nach / usr / share / doc / mandelbulber
– Kompilierung : CMAKE-Build wurde umgestaltet und aktualisiert.
– Performance: viele von CoverityScan
dokumentierte Probleme behoben – Dokumentation: Kapitel ĂĽber OpenCL hinzugefĂĽgt

 

Download Mandelbulb 2 – 2.12 auf Soureforge Net

Download Mandelbulb 2 – 2.12 auf GitHub

 

Hier noch die komplette Liste in engliusch.

New in 2.12:

– OpenCL: Added listing of available OpenCL platforms and devices
– OpenCL: Added querying of OpenCL platforms and devices properties
– OpenCL: Added selection of OpenCL platform and device in Preferences dialog
– OpenCL: Added populateOpenCL.php to autogenerate some OpenCL header files
– OpenCL: populateUiInformation.php autogenerate OpenCL fractal formula code based on C++ code
– OpenCL: Converted all fractal formulas to OpenCL code. Formulas are stored in formula/opencl folder
– OpenCL: Fractal formulas chosen are loaded as separate files
– OpenCL: Applied hybrid sequence to ComputeFractal()
– OpenCL: Added distance estimation functions (logarithmic, linear, pseudoKleinian)
– OpenCL: Added deltaDE distance estimation algorithm
– OpenCL: Added macros to call all fractal formulas in iteration loop according to hybrid sequence
– OpenCL: Added Julia mode
– OpenCL: Implemented detailLevel, iterThreshMode, interiorMode, smoothness
– OpenCL: Added rendering engines:
* fast – very simple and fast shader. No effects.
* limited – most of effects, except reflections and refractions
* full – with branched ray marching – all effects
– OpenCL: Implemented usage of material #1
– OpenCL: Added shader for angle of incidence of lights
– OpenCL: Added soft shadows for main light source
– OpenCL: Added specular reflections
– OpenCL: Added all coloring functions
– OpenCL: Added background shader (excluding textured background)
– OpenCL: Added „Fast Ambient Occlusion“ shader
– OpenCL: Added ambient occlusion with „multiple rays with light map“
– OpenCL: Added „slow“ calculation of normal vectors
– OpenCL: Added Screen Space Ambient Occulsion (SSAO)
– OpenCL: Added shaders for auxiliary light sources and random lights
– OpenCL: Added „glow“ effect
– OpenCL: Added „visible lights“ effect
– OpenCL: Added „volumetric lights“ effect
– OpenCL: Added „iteration fog“ effect
– OpenCL: Added all perspective types to opencl code (three point, equirectangular, fish-eye, fulldome)
– OpenCL: Added Monte Carlo DOF effect with statistical noise control
– OpenCL: Added custom DE step multiplier for volumetric effects
– OpenCL: Added DOF post effect based on Z-Buffer
– OpenCL: Added sweet spot rotation (e.g. needed for full dome)
– OpenCL: Added processing of alpha channel
– OpenCL: Added Box and Spherical folding to OpenCL code (compatibility with Mandelbulber 1.21)
– OpenCL: Rendered tile selection based on center distance ascending. This makes the rendering reveal the image from the center outwards as smoothly as possible
– OpenCL: Kernels are recompiled only when dynamic code is changed
– OpenCL: Added handling of most of OpenCL errors
– OpenCL: Added low limit for distance threshold (1.0e-6) to avoid significant numeric errors
– OpenCL: Added mutex mechanism to protect against concurent rendering using OpenCL by many rendering threads (image, previews, thumbnails)
– OpenCL: Added marker for current pending tile
– OpenCL: CLI mode prepared for rendering with OpenCL
– OpenCL: designed a way to load OpenCL header files on different OpenCL platforms (nVidia, AMD, Intel…)
– OpenCL: Added checking of GPU memory resources and compare with mem limit setting in preferences dialog. If there is not enough memory, effects are rendered using CPU.
– OpenCL: Added BAT script to disable TDR in graphics driver (timeout protection)
– OpenCL: CL_DEVICE_TYPE_ACCELERATOR supported for k1om (x100 Xeon PHI Co-processor)

– Added new fractal formulas:
* Jos-Kleinian
* mandelbulbQuat
* mandelbulbJuliabulb
* aboxMod12
* quaternionCubic4d
* boxFoldBulbPow2V2
* boxFoldBulbPow2V3
* aboxMod13
* boxFoldQuat
* transfScaleVaryMulti
* transfBoxFold4dTglad
* transfSphericalFoldCuboid
* transfSphericalFoldXYZBias

– Updated fractal formulas
a record of updates and changes to formulas can be seen in fractal_list.hpp
a brief summary:
* with some formulas the vary_scale function has been added, modified or changed,
* aboxMod2 had major corrections,
* aux.color has been implemented in more transforms

– Fractals: All fractal formulas converted to 4 dimensional vectors. Backward compatibility has been maintained
– Fractals: Standardized interface for all fractal formula functions
– Fractals: Used function pointers to call functions for fractal formulas. This reduced the complexity of ComputeFractal(). Assignment of fractal functions are made in fractal_list.cpp
– Shaders: Corrected calculation of shaders when „minimum view distance“ is reached.
– Shaders: Added soft shadows for auxiliary lights
– Shaders: Added parameter to define color of „fake light sources“ (lights based on orbit traps)
– Shaders: Corrected algorithm for orbit trap lights (surface shader)
– Shaders: RayRecursion algorithm partially converted from recursive to iterative – compatible with OpenCL
– Shaders: Optimized multi-ray ambient occlusion in Monte Carlo mode.
– Shaders: Added „DOF_max_radius“ parameter to limit maximum blur radius.
– Animation: updated code to use OpenCL rendering
– Animation: increased animation frame range. The old limit was 99999, which is less than an hour of 30 fps frames. The new limit is 9999999, which is just more than 24 hours of an 100 fps video.
– Animation: fixed images deletion of keyframes / flight
– AnimBySound: sound files can be loaded directly from Internet (if specified path starts from http://)
– UI: Added auto-refresh period parameter in preferences dialog
– UI: png, tiff and exr save with progress bar on each channel
– UI: fix png16 and png16alpha save with double .png extension
– UI: formula ui changed most of iteration max from 250 to 999
– UI: standardized color picker for all OS
– UI: Fixed bug: pasting Julia values crashed mandelbulber
– UI: Changed sequence of startup. Now toolbar icons are refreshed after all other initializations of the program.
– UI: Added new color themes for main window
– Queue: Fixed problem with ignored settings of maximum number of threads and thread priority when queue was rendered
– Gamepad: corrected gamepad selection when many devices are connected
– NetRender: display server name in client on connection
– Voxel export: corrected limits (bounding box) for Mesh Export (there was swapped x and y)
– Voxel export: Corrected Mesh Export. Voxel size in each axis has to be unified to calculate correct faces and normal vectors. Now there is only „resolution“ parameter which specifies resolution in the longest axis (depends on limits)
– CLI: Added example output path to benchmark. Now the benchmark can optionally put the renders of the example renders into a folder, when this folder has been specified with the -o/–output cli option.
– CLI: Added options for OpenCL configuration
– CLI: Benchmark renders all 300+ examples
– CLI: Benchmark enabled with for OpenCL with 24 hour test timeout.
– CLI: Benchmark generates detailed log output for each rendered example.
– Settings: enumerative fields are saved as names
– Compilation: UI files for fractal formulas moved to formula folder
– Compilation: *.pro files moved to qmake folder
– Compilation: Added mandelbulber-opencl.pro file
– Compilation: MSVC solution updated for OpenCL
– Compilation: MSVC solution includes OpenCL ICD Loader binaries for system compatibility
– Compilation: MSVC solution is fully functional and compatible with Visual Studio 2017
– Compilation: MSVC build is now default for Windows version
– Compilation: Included MSVC redistributable in Build Package
– Compilation: new windows installer (Install Jammer was no longer supported)
– Compilation: Implemented CLEW for mingw builds
– Compilation: added SHARED_DIR_IS_APP_DIR for AppImage. Allows shared data at the same location as the application, when defined at compile time, this can be used for AppImage packaging
– Compilation: updated prepare_for_*.sh scripts
– Compilation: documentation files moved to /usr/share/doc/mandelbulber
– Compilation: CMAKE build refactored and updated.
– Performance: fixed many issues showed by CoverityScan
– Documentation: Added chapter about OpenCL

 

Happy Mandelbulbing!!


Comments are closed.