Title: Mandelbulber 1.21 Post by: Buddhi on February 02, 2014, 02:35:00 PM Mandelbulber 1.21
Open source program (GNU GPL) for rendering photo-realistic 3D fractals Free download (executables and source): http://sourceforge.net/projects/mandelbulber/ Website: http://www.mandelbulber.com/ User manual: http://wiki.mandelbulber.com/index.php?title=User_Manual New features in version 1.21: - Added color palette editor - Added function to convert flight path into keyframes - improved water algorithm - less visible pattern - added setting for water animation speed - in flight path recording function added switching between using gamma rotation or not (use "Rotate without using gamma angle"). In other words it switches between flight simulator and 2-axis camera rotation. - in flight path recording function added switching between constant flight speed and based on estimated distance (use "Absolute distance mode") - added arrows in HUD for flight path recording - Added low quality SSAO effect during progressive rendering (better looking fast preview) - optimized binary searching algorithm in RayMarching() function - OpenCL - added rendering of Screen Space Ambient Occlusion (SSAO) with GPU. - OpenCL - added rendering of Depth Of Field (DOF) effect with GPU. There is possible to switch between Monte-Carlo DOF (very slow, but realistic) and post-effect DOF (fast) - OpenCL - improved quality of "fake lights" based on orbit traps (looks better with higher "DE factor") - OpenCL - implemented textured background - OpenCL - added alpha channel in "Full" kernel (possible to save image as PNG-16 + Alpha) - fixed bug: flight path rendering didn't worked properly when rendering was continued from the middle - fixed bug: eliminated memory leaks in OpenCL rendering functions - fixed bug: corrected calculation of viewVector and z value for 3-point perspective - fixed bug: sometimes 3D cursor was jerky. Added temporary disabling for event handler during rendering of cursor SVN repository: http://mandelbulber.googlecode.com/svn/trunk/ This repository is available from Google Code: http://code.google.com/p/mandelbulber/ Title: Re: Mandelbulber 1.21 Post by: taurus on February 02, 2014, 08:37:56 PM Fantastic! Thanks Buddhi, that's the one I'm waiting for.
One little thing, I'd like to suggest for the future. Although the "save all layers" button was very useful for creative manipulations, its loss is acceptable. But I really miss the zbuffer for precise seperation of image parts in post production. The alpha channel is no substitute there, as it only seperates fractal from background. Not very useful in my interior shots. Mabe you can bring back this layer sometime in the future... Title: Re: Mandelbulber 1.21 Post by: quaz0r on February 02, 2014, 09:22:23 PM :beer:
Title: Re: Mandelbulber 1.21 Post by: Buddhi on February 03, 2014, 07:10:11 AM I have got information about problems with SSAO OpenCL kernel with nVidia. It can't be compiled. I will try to fix it as fast as it is possible.
Title: Re: Mandelbulber 1.21 Post by: lukesleftleg on February 03, 2014, 05:26:46 PM Unfortunately, I'm on an nvidia GPU so I'll have to wait, but I just wanted to say...
I was going to choose a couple of the new features, and say that I particularly liked the look of them, but actually, every single one of these updates is very welcome. Anyway, I'm between animations right now so I can wait, but I just wanted to thank you once again for all your hard work. :) Title: Re: Mandelbulber 1.21 Post by: stereoman on February 03, 2014, 06:56:06 PM As a great fan of this wonderful software, I can only say, many thanks!
Title: Re: Mandelbulber 1.21 Post by: ellarien on February 03, 2014, 09:04:10 PM Thank you for a great program, which has kept me enthralled for many hours.
Do you have any idea why the installer terrifies both Windows (8.1) and Norton Internet Security? I've used plenty of other OS programs that didn't ring the alarm bells, and I was initially a bit nervous about installing something that both Norton and Windows were trying to block and delete. (Also, there seems to be a tiny issue with the display of the background gradient when using a settings file from 1.20 in 1.21 -- one corner of my sky was coming out pink. But tweaking the settings made that go away, so no big deal.) Title: Re: Mandelbulber 1.21 Post by: mclarekin on February 05, 2014, 08:52:53 AM Glad to have alpha channel in Full :beer: :beer: :beer:
Interesting the fragmanterium post about GPU timeout of 2 seconds for windows, I think that explains why sometimes my driver was resetting when trying to use volumetric light. thanks for the new version, I look forward to trying it. :) :) :) Title: Re: Mandelbulber 1.21 Post by: Buddhi on February 05, 2014, 09:47:41 PM Mandelbulber 1.21-1 is released
http://sourceforge.net/projects/mandelbulber/files/? changes: - fixed bug: OpenCL - SSAO kernel generated compiler errors on nVidia - fixed bug: OpenCL - there was error -54 during rendering of SSAO and DOF (caused by not matched localWorkSize with GlobalWorkSize). Problem more visible on nVidia where there is bigger CL_DEVICE_MAX_WORK_GROUP_SIZE Many thanks to quaz0r for help in debugging OpenCL code and testing on nVidia. Thanks also for Win64 version. Title: Re: Mandelbulber 1.21 Post by: mclarekin on February 06, 2014, 12:15:53 AM Possible bug 1.21-1 64bit? When enabling openCL I get this, however seems to make no difference to my render
Code: OpenCL Build log: "C:\Users\DellG\AppData\Local\Temp\OCL14A6.tmp.cl", line 12: error: identifier Title: Re: Mandelbulber 1.21 Post by: lycium on February 06, 2014, 03:46:22 AM mclarekin you should update your display drivers if possible; float3 vectors are introduced with opencl 1.1 or 1.2, for which there should be newer drivers available.
Title: Re: Mandelbulber 1.21 Post by: Syntopia on February 06, 2014, 07:40:19 PM Hi, I tried to download latest version (1.21-1) and got the following error:
Code: OpenCL Build log: :45:46: error: cannot increment value of type 'float' Also, it seems if I am running OpenGL software when starting Mandelbulber, it cannot create an OpenCL context and crashes (an error -2, I think). Title: Re: Mandelbulber 1.21 Post by: quaz0r on February 06, 2014, 07:48:29 PM Hi, I tried to download latest version (1.21-1) and got the following error: Code: OpenCL Build log: :45:46: error: cannot increment value of type 'float' That change to cl_SSAO.cl was supposed to be included in 1.21-1. Either your install failed to update that file or buddhi failed to include it in the installer. Title: Re: Mandelbulber 1.21 Post by: Syntopia on February 06, 2014, 08:02:51 PM That change to cl_SSAO.cl was supposed to be included in 1.21-1. Either your install failed to update that file or buddhi failed to include it in the installer. Just deleted and reinstalled 1.21-1. It still fails to compile (exe/dlls are dated 05/02, OpenCL code from 02/02). README says 'MANDELBULBER 1.21-1' Another thing: I have an CPU Intel OpenCL 1.2 runtime. I can see there is an option for toggling CPU OpenCL now. I had to toggle it on and off a few times to get Mandelbulber to change to CPU, but when it recognized the CPU platform, it gave the following error Code: OpenCL Build log: Compilation started It is possible to run Mandelbulber on CPU OpenCL implementations? Title: Re: Mandelbulber 1.21 Post by: quaz0r on February 06, 2014, 08:09:41 PM by cpu opencl implementation do you mean to say using the integrated intel graphics processor?
Title: Re: Mandelbulber 1.21 Post by: Syntopia on February 06, 2014, 08:18:34 PM by cpu opencl implementation do you mean to say using the integrated intel graphics processor? OpenCL is a parallellization API for both CPU and GPU. AMD and Intel both provide implementations. Title: Re: Mandelbulber 1.21 Post by: quaz0r on February 06, 2014, 08:22:21 PM yeah, just making sure what you meant. i havent tried that myself.
Title: Re: Mandelbulber 1.21 Post by: Buddhi on February 06, 2014, 08:42:28 PM That change to cl_SSAO.cl was supposed to be included in 1.21-1. Either your install failed to update that file or buddhi failed to include it in the installer. I was too hurry yesterday and I put wrong file into package. Within 15 minutes will be corrected installers on SourceForge Title: Re: Mandelbulber 1.21 Post by: Buddhi on February 06, 2014, 08:59:00 PM Now there are proper files in the installers. I apologize for the mess. Tomorrow I'm flying to Turkey and I had limited time to fix bugs in the code and release the program.
Just deleted and reinstalled 1.21-1. It still fails to compile (exe/dlls are dated 05/02, OpenCL code from 02/02). README says 'MANDELBULBER 1.21-1' About running Mandelbulber with CPU OpenCL I tested in with AMD drivers. It works very well. However with nVidia drivers it doesn't work at all.Another thing: I have an CPU Intel OpenCL 1.2 runtime. I can see there is an option for toggling CPU OpenCL now. I had to toggle it on and off a few times to get Mandelbulber to change to CPU, but when it recognized the CPU platform, it gave the following error Code: OpenCL Build log: Compilation started Which kernel gives this error? "fast" or "full"? Title: Re: Mandelbulber 1.21 Post by: Syntopia on February 06, 2014, 09:14:06 PM Now there are proper files in the installers. I apologize for the mess. Tomorrow I'm flying to Turkey and I had limited time to fix bugs in the code and release the program. About running Mandelbulber with CPU OpenCL I tested in with AMD drivers. It works very well. However with nVidia drivers it doesn't work at all. Which kernel gives this error? "fast" or "full"? "Fast". The Intel OpenCL CPU runtime is not related to the nVidia drivers - it is a standalone install from http://software.intel.com/en-us/vcsource/tools/opencl-sdk (for Intel Core processors only). I'll try the AMD CPU thing (from the APP SDK) and see if it works on an Intel CPU. Title: Re: Mandelbulber 1.21 Post by: Syntopia on February 06, 2014, 09:47:24 PM I managed to get the Intel OpenCL CPU implementation to work. The problem was the use of 'half' (which is an OpenCL type) as a variable name. Changing this to something else worked, e.g.:
Code: float3 halfX = lightVector - viewVector; Weirdly, the image had a few pixel artifacts, not present in the GPU render. Title: Re: Mandelbulber 1.21 Post by: mclarekin on February 07, 2014, 12:58:03 AM Just installed today version of 1.21-1 64bit and got the same issue as yesterday with the float3 thing pretending not to be recognised, but I ignore it and click enable a second time and all is sweet. The very minor point being that with 1.20 64bit this didn't happen.
I run CPU openCL on Intel i3 processor with the AMD SPK driver thingy and so far all is good, no other issues at all. Title: Re: Mandelbulber 1.21 Post by: lukesleftleg on February 07, 2014, 08:47:07 PM Just to say that 1.21-1 seems to work just fine on my nvidia machine, and those OpenCL renders with SSAO just put my previous renders to shame. :)
Anyway, thanks again for another great version of a great fractal renderer. Title: Re: Mandelbulber 1.21 Post by: JohnVV on February 09, 2014, 11:03:24 AM mandelbulber-opencl-1.21.orig
on Linux 64bit ( openSUSE 12.3 ) , Nvidia 331 .run driver (libnvidia-opencl.so.331.38 ) OpenCL headers-1.2-8.1 builds but DOSE NOT link headers -- VS. -- libnvidia-opencl.so.331.38 mix up with a bunch of undefined reference to `clReleaseContext' undefined references to `clGetDeviceInfo' undefined reference to `clGetPlatformIDs' --- and so on it starts in render3d.cpp Code:
using the opencl 1 headers ( from cuda 5.5 )it dose not even get this far it errors out on making the render3d.o --- UPDATE however it WILL link if the AMD openCL lib and headers are used from http://developer.amd.com/tools-and-sdks/heterogeneous-computing/amd-accelerated-parallel-processing-app-sdk/downloads/ Title: Re: Mandelbulber 1.21 Post by: quaz0r on February 09, 2014, 01:59:10 PM ive never installed cuda sdk or anything, just the regular nvidia drivers installs opencl stuff that works. i was using 331 also, just installed 334 and that works also.
Title: Re: Mandelbulber 1.21 Post by: joe on February 18, 2014, 03:47:13 PM 1.21 GIGAWATTS!!
Title: Re: Mandelbulber 1.21 Post by: mclarekin on March 04, 2014, 02:13:05 AM Windows openCL GPU timeout problem
A while back Syntopia alerted me to TDR issues with Windows OS. So recently I followed his link http://msdn.microsoft.com/en-us/library/windows/hardware/ff569918(v=vs.85).aspx then without any real knowledge of what I was doing I created the TDR registry keys and increased the defaults as follows: TdrDdiDelay REG_DWORD and set it to 60 seconds TdrDelay REG_DWORD and set it to 30 seconds TdrLimitTime REG_DWORD and set it to 240 seconds and now I can use openCL on a Radeon HD7660D GPU in a WIN7 64 environment without the GPU driver crashing and resetting (this mainly used to happen if I tried to use volumetric light) A big thank you to Syntopia :) :) :) I did wonder if I should use REG_QWORD for seen I was using 64bit OS??? Title: Re: Mandelbulber 1.21 Post by: visual.bermarte on March 18, 2014, 05:37:27 PM (http://fc05.deviantart.net/fs70/i/2014/077/4/7/testing_mandelbulber_with_opencl_by_bermarte-d7aonk1.png)
mandelbulber for mac, openCL CPU rendering tested on Intel(R) Core(TM)2 Duo CPU P7550 @ 2.26GHz VERSION: OpenCL 1.2 DRIVER_VERSION: 1.1 GeForce 9400M DRIVER_VERSION: 8.24.11 310.90.9b01 VERSION: OpenCL 1.0 *************** Intel(R) Core(TM)2 Duo CPU T7700 @ 2.40GHz VERSION: OpenCL 1.2 DRIVER_VERSION: 1.1 GeForce 8600M GT DRIVER_VERSION: CLH 1.0 VERSION: OpenCL 1.0 *************** I still need to do tests on AMD-Intel GPUs; I have used temporary variables on rotations to have kernels that are more digestible and I need to do some minor changes. I think Mavericks handles the whole openCL's affair better than previous OSXs, but, alas, I don't have a fully openCL 1.2 compatible GPU. No openCL 1.2 for Nvidia neither, only for Intel and AMD. Title: Re: Mandelbulber 1.21 Post by: visual.bermarte on March 18, 2014, 05:56:35 PM And these two are done with mandelbulber 1.21 but without openCL; thanks to Furan.
(http://fc00.deviantart.net/fs71/i/2014/072/a/1/eple_by_bermarte-d79ele0.png) pole dance ;D (http://fc07.deviantart.net/fs70/f/2014/056/c/4/pole_dance_by_bermarte-d77zrap.png) Title: Re: Mandelbulber 1.21 Post by: Buddhi on March 18, 2014, 07:35:15 PM Thanks bermarte for update. Many people waits for OSX version.
About OpenCL, version 1.1 is enough. The program doesn't use any OpenCL 1.2 extensions. Title: Re: Mandelbulber 1.21 Post by: Deagol on March 31, 2014, 11:05:37 PM Hi,
i'm trying to get Mandelbulber 1.21 with OpenCL to work on my Linux Mint mashine. My package-manager tells me i have OpenCL 1.2 installed. But that doesn't stop it from crashing with the following console output when I enable OpenCL and start rendering any Image: Quote ************ Rendering frames ************* Any ideas how that could be resolved? :hmh:OpenCL rendering OpenCL Platform number is: 1 OpenCL Platform is by: NVIDIA Corporation nVidia OpenCL library is detected OpenCL contexts created OpenCL Number of compute units: 7 OpenCL Max work item dimmensions: 3 OpenCL Max work group size: 1024 OpenCL Max clock frequency 1620 MHz OpenCL Memory size 1023 MB OpenCL Max size of memory object allocation 255 MB OpenCL Max constant buffer size 64 kB OpenCL Constant buffer used 2 kB OpenCL progHeader: #define INCLUDE_PATH_CL_DATA "/usr/share/mandelbulber/cl/mandelbulber_cl_data.h" OpenCL Number of loaded sources 9 OpenCL build params:-w -cl-single-precision-constant -cl-denorms-are-zero OpenCL Build log: OpenCL program built done OpenCL kernel opened OpenCL workgroup size: 512 OpenCL Job size: 3584 OpenCL buffers created OpenCL command queue prepared OpenCL Build log: OpenCL SSAO program built done OpenCL SSAO kernel opened OpenCL SSAO command queue prepared OpenCL Build log: OpenCL DOF program built done OpenCL DOF kernel opened OpenCL DOF command queue prepared mandelbulber-opencl: relocation error: mandelbulber-opencl: symbol clCreateImage, version OPENCL_1.2 not defined in file libOpenCL.so.1 with link time reference My graphics card is a Nvidia GeForce GTX 460 with "nvidia-304" driver enabled, in case that matters. Title: Re: Mandelbulber 1.21 Post by: Buddhi on April 01, 2014, 06:10:08 PM My graphics card is a Nvidia GeForce GTX 460 with "nvidia-304" driver enabled, in case that matters. @Deagol, try to update nVidia drivers. nvidia-304 is quite old. Actual version is 331. Upgrade could help. Title: Re: Mandelbulber 1.21 Post by: Deagol on April 02, 2014, 10:21:03 PM Thanks for your reply.
I have updated the driver to 331. But it still crashes with the exact same message :( : Quote mandelbulber-opencl: relocation error: mandelbulber-opencl: symbol clCreateImage, version OPENCL_1.2 not defined in file libOpenCL.so.1 with link time reference Title: Re: Mandelbulber 1.21 Post by: Buddhi on April 03, 2014, 06:06:05 AM Thanks for your reply. I have updated the driver to 331. But it still crashes with the exact same message :( : Was this program, which you are testing, compiled by yourself? Or did you got from somewhere already compiled version. I'm asking because if you compile the program on your system where you have nVidia version of OpnCL lib then it should not ask about any version 2.0 functions (especially during run time) Title: Re: Mandelbulber 1.21 Post by: Deagol on April 03, 2014, 02:50:09 PM Yes i compiled it myself.
But now that you ask, there were a few obstacles (recreated the scenario to document it here): On the first time i tried to make it: Quote /usr/include/CL/cl.hpp:176:19: fatal error: GL/gl.h: No such file or directory After i searched the Internet, i found out, a package named "mesa-common-dev" delivers gl.h. So i installed it and i could compile mandelbuler-opencl without any complaints.#include <GL/gl.h> Then i installed it and ran it. But now it crashes if i want to check the "OpenCl Enable" checkbox. : Code: Can't open application settings file: mandelbulber_ocl_settings Is it until here ok? Again thanks for your efforts :embarrass: Title: Re: Mandelbulber 1.21 Post by: Buddhi on April 03, 2014, 07:18:33 PM Error:
Quote ERROR: cl::Platform::get (-1) means that the program can't initialize OpenCL lib at all. Check maybe you changed device type, platform index or device index parameters. If not, there is still some problem with OpenCL driver.Check also if you have any file in /etc/OpenCL/vendors Title: Re: Mandelbulber 1.21 Post by: Deagol on April 03, 2014, 08:52:51 PM Ok i guess we are getting closer.
I tried every combination of platform index and device index. Noting But there doesn't seem to be a /etc/OpenCL directory, even though "opencl-headers", "ocl-icd-opencl-dev" and "ocl-icd-libopencl1" are installed. Title: Re: Mandelbulber 1.21 Post by: Buddhi on April 03, 2014, 09:22:32 PM Ok i guess we are getting closer. I tried every combination of platform index and device index. Noting But there doesn't seem to be a /etc/OpenCL directory, even though "opencl-headers", "ocl-icd-opencl-dev" and "ocl-icd-libopencl1" are installed. Try to do what is described here (http://amaisu.com/AranHase/2013/08/linux-mint-15-and-opencl-nvidia/) at the end of text (how to create /etc/OpenCL/vendors file). About year ago I had the same problem after re-installation of graphics driver. This small file was also missing. Title: Re: Mandelbulber 1.21 Post by: Deagol on April 04, 2014, 12:05:02 AM Yay thanks. At least that bit is fixed :D Mandelbulber still doesn't work for me though Quote OpenCL SSAO program built done OpenCL SSAO kernel opened OpenCL SSAO command queue prepared OpenCL Build log: OpenCL DOF program built done OpenCL DOF kernel opened OpenCL DOF command queue prepared Segmentation fault |