New Mandelbrot wallpaper in playground, triggers some bugs

Benoit Jacob jacob.benoit.1 at gmail.com
Mon Sep 8 19:39:06 CEST 2008


Hi,

letting you know that the embargo on screenshots is lifted :)

i found a nice formula for the gradient, pretty happy about it :)

for anyone interested:

- the max number of iterations was being computed as (roughly)
max_iter =  -constant * log(resolution)
where resolution is the distance in complex plane between two adjacent pixels

then the formula that i found for the gradient is

intensity = log(iter) / log(max_iter)

while other fractal renderers use iter/max_iter. The benefit of taking
logs here is that this makes the gradient scale-invariant.

Then we don't stop here, we superpose the gradients with several
different gamma-correction exponents, like

intensity = intensity^gamma1 * factor1 + intensity^gamma2 * factor2 + ...

Have a look at the embedded julia sets: first zoom to an embedded
mandelbrot, then zoom into the valley between its two halves, it
should be full of medusa-like julia sets. at the middle of them you
typically have  an embedded mandelbrot. I'm really happy about this
new rendering, it justifies well the huge number of iterations that we
make (compared to other fractal renderers).

Cheers,
Benoit

2008/9/6, Benoit Jacob <jacob.benoit.1 at gmail.com>:
> just one more note: i'm going to implement the smooth gradient algo,
> so please nobody blog about this wallpaper until i've done it,
> currently it doesn't look too good.
>
> 2008/9/6 Benoit Jacob <jacob.benoit.1 at gmail.com>:
>> ok should be fixed in 857678.
>>
>> Cheers,
>> Benoit
>>
>> PS. Now using intel graphics (yes i got one of these sony sz2 with
>> dual intel/nvidia), no rendering glitches.
>>
>>
>> 2008/9/6 Benoit Jacob <jacob.benoit.1 at gmail.com>:
>>> aaah got it :)
>>>
>>> when changing a setting, init() was called, reallocating the QImage
>>> that was being painted in paralled by the renderer threads...
>>>
>>> solution was to add a renderThreads[0]->wait() in
>>> Mandelbrot::init()... indeed the 0-th thread is the master-thread, it
>>> controls the others if any.
>>>
>>> Cheers,
>>> Benoit
>>>
>>> 2008/9/6 Benoit Jacob <jacob.benoit.1 at gmail.com>:
>>>> Indeed, i can reproduce that.
>>>>
>>>> How do I get a backtrace? The kcrash dialog just disappears when i ask
>>>> for the backtrace, and when i run plasma in gdb, after the crash it
>>>> just says "no stack".
>>>>
>>>> 2008/9/6 Aaron J. Seigo <aseigo at kde.org>:
>>>>> On Friday 05 September 2008, Benoit Jacob wrote:
>>>>>> I updated to 177.70. With desktop effects enabled, the glitches are as
>>>>>> bad as before. With desktop effects disabled, the situation has
>>>>>> improved but there remain some glitches.
>>>>>
>>>>> not related, but i just discovered that changing the settings while the
>>>>> fractal is still rendering on the desktop results in a crash in a
>>>>> thread in
>>>>> the renderer..
>>>>>
>>>>> --
>>>>> Aaron J. Seigo
>>>>> humru othro a kohnu se
>>>>> GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA  EE75 D6B7 2EB1 A7F1 DB43
>>>>>
>>>>> KDE core developer sponsored by Trolltech
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Plasma-devel mailing list
>>>>> Plasma-devel at kde.org
>>>>> https://mail.kde.org/mailman/listinfo/plasma-devel
>>>>>
>>>>>
>>>>
>>>
>>
>


More information about the Plasma-devel mailing list