|
Kalles Fraktaler
|
 |
« Reply #135 on: November 16, 2013, 06:19:53 PM » |
|
I have put a new version on my page http://biphome.spray.se/karl.runmo/fraktal2.htm - Smooth color transitions - Optimized animation render - the center of the keyframes is reused when zooming out. Should save 1/4 of the time, perhaps more since the center usually has higher number of iterations. - Bugfixes, for example when editing keyframes Enjoy!
|
|
|
|
|
Logged
|
|
|
|
panzerboy
Fractal Lover
 
Posts: 242
|
 |
« Reply #136 on: November 16, 2013, 10:53:54 PM » |
|
Thanks for that. I don't think the smooth color transitions works in the movie maker.  Tried first with color cycling, then without, then unticked the color transitions (in case the logic got reversed) but got the same iteration bands each time. All the jpgs in the source directory look nicely smoothed though.
|
|
|
|
|
Logged
|
|
|
|
|
Kalles Fraktaler
|
 |
« Reply #137 on: November 17, 2013, 10:16:45 AM » |
|
Thanks for that. I don't think the smooth color transitions works in the movie maker.  Tried first with color cycling, then without, then unticked the color transitions (in case the logic got reversed) but got the same iteration bands each time. All the jpgs in the source directory look nicely smoothed though. Thanks for finding this - the combination iteration division and smooth transition did not work in the movie maker. The movies I made for testing did not use division. I have updated! 
|
|
|
|
|
Logged
|
|
|
|
|
Mircode
|
 |
« Reply #138 on: November 18, 2013, 11:47:57 PM » |
|
Just posted on the main thread of sft but I think this is the better place: And I also have some simple feature requests for Kalles Fraktaler 2:
- Maybe I am just too stupid but it feels like it is not possible to change the aspect ratio of the image. That would be very useful. - Also, rotation of the rendering and better zoomlevel control would be nice. How about: aspect ratio of the image is determined by the aspect ratio of the window or can be predefined, the mouse-down-point determines the center of the next image, the mouse-up-point determines the the upper right corner of the image (which also defines the rotation angle)
I hate people who only demand stuff, so I will try to make a contribution myself by creating a WebGL based player that imports zoom-out pictures from Kalles Fraktaler 2. One will be able to choose between scrolling and auto-zoom.
@Kalles Fractaler: It would also be very cool if one was able to export not just rendered color images, but also "raw data" like iteration, estimated distances, ... per pixel. That way the coloring can be done dynamically using WebGL and GLSL shaders which will allow super sexy effects, for instance an emboss effect with the mouse as lightsource.
Looking forward to this!
|
|
|
|
|
Logged
|
|
|
|
panzerboy
Fractal Lover
 
Posts: 242
|
 |
« Reply #139 on: November 19, 2013, 01:48:33 PM » |
|
@Mircode The iterations data for Kalles Fraktaler is available in the .kfb files. The following is lifted from a post by Mr Kalles Fracktaler himself here http://www.fractalforums.com/index.php?topic=8233.msg67085#msg67085 // The first 3 bytes contain "KFB" - just to make sure that I don't read garbage and try // to allocate unreasonable amount of data in the next steps char szId[3]; ReadFile(hFile,szId,3,&dw,NULL); if(strncmp(szId,"KFB",3)){ CloseHandle(hFile); return NULL; } // Next two integers are width and height int nWidth, nHeight; ReadFile(hFile,&nWidth,sizeof(int),&dw,NULL); ReadFile(hFile,&nHeight,sizeof(int),&dw,NULL); // Allocate and read integers int **ppBits = new int*[nWidth]; int x; for(x=0;x<nWidth;x++){ ppBits[x] = new int[nHeight]; ReadFile(hFile,ppBits[x],sizeof(int)*nHeight,&dw,NULL); } // Iteration divide value int nColorDiv; ReadFile(hFile,&nColorDiv,sizeof(int),&dw,NULL); // Number of key colors ReadFile(hFile,&nParts,sizeof(int),&dw,NULL); // Colors (COLOR14 is just 3 integers, R, G and B struct COLOR14 {int r, g, b; }; ReadFile(hFile,cKeys,sizeof(COLOR14)*nParts,&dw,NULL); // Maximum iterations int nMaxIter; ReadFile(hFile,&nMaxIter,sizeof(int),&dw,NULL); @Kalles Fraktler The smooth colouring is working just fine now, thanks.
http://www.youtube.com/v/QYd1ihhK8bE&rel=1&fs=1&hd=1
|
|
|
|
|
Logged
|
|
|
|
|
Kalles Fraktaler
|
 |
« Reply #140 on: November 19, 2013, 08:57:00 PM » |
|
@Mircode Yeah, the program is optimized to create movies to be watched on my smartphone or PC. But yes, it's a good suggestion to be able to change the aspect ratio. Free zoom with the mouse - easy! Rotate the image - harder.... I have extended the KFB file to include float values, which all are between 0 and 1, to be used when blending the iteration color with the next iteration color. The size of the files got doubled. So, append this pieces of code float **ppTrans = new float*[nWidth]; for(x=0;x<nWidth;x++){ ppTrans[x] = new float[nHeight]; memset(ppTrans[x],0,sizeof(float)*nHeight); ReadFile(hFile,ppTrans[x],sizeof(float)*nHeight,&dw,NULL); }
I don't mind feedback and suggestions, I appreciate it. I am not familiar with distance estimation, I did some tests but it did not turn out well, I didn't dig into it much. A square root for each iteration in each pixel would slow down the render much though... but it's maybe worth it? @panzerboy - that's a fantastic movie. It's beautiful with the darker regions between the spirals got synced 
|
|
|
|
|
Logged
|
|
|
|
|
Mircode
|
 |
« Reply #141 on: November 20, 2013, 10:01:59 AM » |
|
Hi!
What is the problem with rotation? Do you need help on that?
You don't have to do the distance estimation stuff. Just store whatever you compute at each pixel, I can use it in the shader.
There are several ways to color the thing: - by escape time - by distance estimation - smallest absolute value of the orbit - phase of the last value that didn't escape - ...
If you want to include anything of this, we can use it as well.
Greetings! Mirko
|
|
|
|
|
Logged
|
|
|
|
|
Kalles Fraktaler
|
 |
« Reply #142 on: November 20, 2013, 07:20:26 PM » |
|
Hi!
What is the problem with rotation? Do you need help on that?
You don't have to do the distance estimation stuff. Just store whatever you compute at each pixel, I can use it in the shader.
There are several ways to color the thing: - by escape time - by distance estimation - smallest absolute value of the orbit - phase of the last value that didn't escape - ...
If you want to include anything of this, we can use it as well.
Greetings! Mirko
Well, I think rotation is always tricky with sinus, cosinus and such  I am currently working on optimizing the movie maker by adding multi-threading, because it shouldn't take 4 times longer to create the movie than render the key frames! Can you do magic with the code from the two posts above then? Would be really cool  Please remember that the pertubation method produce glitches. I tried to solve them automatically but it is far from being 100% perfect. The work around is the frame editing function, but it takes some efforts to go through all the frames and find and correct glitches.
|
|
|
|
|
Logged
|
|
|
|
|
|
panzerboy
Fractal Lover
 
Posts: 242
|
 |
« Reply #144 on: November 28, 2013, 01:21:49 AM » |
|
Rotation and colour cycling just don't seem to work for me. I've tried small and large values for colour cycling, with and without smooth color transitions. Specifying a rotation will make the video smaller The CPU usage seems quite bursty, the performance tab of task manager shows peaks and troughs. See the attached picture of my CPU usage history. MovieMaker.exe alternates between a low of 38% up to a high of 83% CPU, about half the time in the 40% to 50% range. The preview window is fairly stop-start, maybe rendering 10-15 frames then stopping for 1/2 a second end repeating this sequence. Its interesting that memory usage seems to cycle with the CPU usage, perhaps you are allocating and freeing chunks of memory?
|
|
|
|
Logged
|
|
|
|
|
Kalles Fraktaler
|
 |
« Reply #145 on: November 28, 2013, 09:34:02 AM » |
|
Rotation and colour cycling just don't seem to work for me. I've tried small and large values for colour cycling, with and without smooth color transitions. Specifying a rotation will make the video smaller The CPU usage seems quite bursty, the performance tab of task manager shows peaks and troughs. See the attached picture of my CPU usage history. MovieMaker.exe alternates between a low of 38% up to a high of 83% CPU, about half the time in the 40% to 50% range. The preview window is fairly stop-start, maybe rendering 10-15 frames then stopping for 1/2 a second end repeating this sequence. Its interesting that memory usage seems to cycle with the CPU usage, perhaps you are allocating and freeing chunks of memory?
That's bad that cycling doesn't work. I updated the screenshot with a movie I am currently rendering, which is the same but slower that I called "Too much for youtube" because I like that location and coloring too much to just leave it as it is. That image might give you a hint. Otherwise, please explain why it doesn't work   Since I don't know how, and I don't think it's even possible, to write the AVI stream from parallel threads, the parallel step is only when the images are combined. When not using color cycling this occur for each key frame. When color cycling is used, it occurs for every movie frame, and therefore it reduces the time to render a movie almost 4 time on my quadcore laptop. By setting color cycle to 0 for parts of the movie the render will get much faster
|
|
|
|
|
Logged
|
|
|
|
panzerboy
Fractal Lover
 
Posts: 242
|
 |
« Reply #146 on: November 28, 2013, 11:31:02 AM » |
|
I'm rendering a video now. At about zoom level e009 it has started to rotate and colour cycle in the preview window. I specified rotation and cycling from frame 0, see my attached GIF. e009 zoom level starts with file 00090_1.07e009.kfb, the first file is 120_0.9.kfb so that would be frame 30 in the rotation list? My first attempt I just set the frame 0 to constant speed colour cycling and/or rotation. Perhaps the rotation and cycling only kicks in for the 2nd item in the lists onwards?
|
|
|
|
Logged
|
|
|
|
|
Kalles Fraktaler
|
 |
« Reply #147 on: November 28, 2013, 08:06:55 PM » |
|
Thanks panzerboy! This is because I made smooth transitions also for cycling and rotation. If you set the frame number to 1 instead of 0 for these it will work, but I will mak an update on this
|
|
|
|
|
Logged
|
|
|
|
|
Kalles Fraktaler
|
 |
« Reply #148 on: November 28, 2013, 09:49:38 PM » |
|
...but now it seems my web-page on biphome doesn't work anymore. I hope it's temprary, I have had this page for perhaps 15 years. If not I will try to find another location to place my page. Any suggestions are welcome.
|
|
|
|
|
Logged
|
|
|
|
|
Dinkydau
|
 |
« Reply #149 on: November 30, 2013, 03:29:18 AM » |
|
That's a shame. I was about to try the latest version of your program.
|
|
|
|
|
Logged
|
|
|
|
|