• Welcome to World Machine Community. Please login or sign up.
 
September 20, 2019, 05:24:44 am

News:

Read the Development Diary for an inside look at World Machine's progress!


Optimized version of Blur (my example is 30x the speed)

Started by Ben, February 25, 2017, 05:52:47 pm

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Ben

Welcome back Stephen! One trick I use to optimize my large scale blur's is to use 2 Blur's. First blur is 1/4 resolution followed by a second, full resolution blur (in pixel space rather than world) with a distance of 4 to match the 1/4 scale difference of the previous blur. This usually gives me indistinguishable results but is incredibly fast. For example, I'm currently replacing a blur which takes 4:47 to render at full resolution (8192) on 40 cores and 210 GB of memory. The optimized version takes 9 seconds.

JakBB

That sounds insane! What resolution did you set the first blur?

I think there is so much potential with the single device resolution settings and barely anyone uses it.
Especially with blurs, expanders and layout generators, in almost every case of using those devices you don't actually need a 1 to 1 resolution for those devices, I highly recommend everyone to try and mess around with that setting.
While we are at it, it would be amazing if you could change resolution of devices based on the group they are in, that could speed things up by quite a bit for large projects


Ben

Perhaps I'm misunderstanding but you can set a group resolution override in the group settings.

In my macro, which I attached, the first blur is 2048 followed by a full res blur with a pixel distance of 4 (Scale-Independent unchecked) since the previous low res blur has pixels that are 4x too big. WM's resolution up-sampling bicubic soft mode might replicate what my second blur is doing but I've never been too sure about it so I just do it manually.

This can of course be easily modified to handle lower resolutions, unfortunately there's no good way for me to make it universal with any resolution, which is why I would love a proper implementation in WM's Blur. For now you have to go into the macro and set the first blur to 1/4 your world resolution. Or 1/2 and then set the 2nd blur distance to 2.

JakBB

Oh my god you actually can override it for a group, that's awesome!
You learn more and more with every day :)

Also are you on the newest WM version? Because with dev3014 a new blur type was implemente: Approximate, it's standard blur, less precise but much faster, I think that would fit your needs

Yeti

Quote from: JakBB on February 28, 2017, 07:30:42 am
Oh my god you actually can override it for a group, that's awesome!
You learn more and more with every day :)

Also are you on the newest WM version? Because with dev3014 a new blur type was implemente: Approximate, it's standard blur, less precise but much faster, I think that would fit your needs


The approximate blur option is also available on earlier 3.0 builds :)

Ben

I'm on latest yeah. I'm glad I could help!

I just usually try to avoid approximate since it creates a blocky shape and often it's not much faster unless I'm doing a really large blur...in which case I find the quality of this 2 step method to be better looking. When I'm lazy I just use a single downsampled blur. It really all depends on if there's a lot of noise added down the chain, if you plan to add more noise then the quality doesnt matter so much.

Quick Reply

With Quick-Reply you can write a post when viewing a topic without loading a new page. You can still use bulletin board code and smileys as you would in a normal post.

Warning: this topic has not been posted in for at least 120 days.
Unless you're sure you want to reply, please consider starting a new topic.

Note: this post will not display until it's been approved by a moderator.

Name:
Email:
Verification:
Please leave this box empty:
Type the letters shown in the picture
Listen to the letters / Request another image

Type the letters shown in the picture:

Shortcuts: ALT+S save/post or ALT+P preview