8.0.4 new Jitter features (jit.gl.bfg)
Hey everyone, the Max 8.0.4 update has some new Jitter features I'd like to share.
The first two are related to jit.gl.node:
- You can now add jit.gl.light objects to a specific jit.gl.node sub-context
- You can now specify a shader or material to jit.gl.node and have it apply to all the objects in that sub-context.
The last one is a bit more exciting. We have a new texture object to play with called jit.gl.bfg. As the name implies it is based off the jit.bfg object, but is processed on the GPU using shaders, so will be much faster for certain calculations. It doesn't do everything that jit.bfg can do, and has certain limitations, but is pretty fun and I think you all will make good use.
I through together a little demo of it's functionality that you can watch here
Looks great, thanks. Could you share the patches of the demo video as well? Would be great to play around with.
Very cool!
Wow wow wow!
Yes! I have literally been working on getting some kind of GL bfg patch working all week! This makes my night.
This is incredible news, something I kept wishing for. Thanks a million Rob!
Amazing, thank you!!!
A GL bfg has been on my wishlist forever. It's a beautiful thing to see how smoothly it updates. Thanks.
wow many thanks!!!
yes and we are celebrating it there
:-)
I do not want to say that this is a game changer, but it's close! ;-)
Unfortunately the attached gl-bfg-test-large.maxpat crashes max 8.0.4 instantly when going fullscreen on my windows computer. Can anyone report this is working on windows before I start researching which might be the object responsible? Thanks!
hi JKO, thanks for the report.
I can reproduce this crash in windows. I believe it is related to the heightmap_mode vtf feature of jit.gl.mesh rather than the jit.gl.bfg object. i've seen this crash in other situations related to vtf.
I'll see if I can figure out what's going on here.
this crash should be fixed with the 8.0.5 release. please let me know if not.
Works perfect now! Thanks a lot.
This is so rad. Thank you.
Still learning the ropes here.. can someone explain the benefit of having jit.gl.bfg vs jit.bfg. I understand the part that it's within the Open GL world as a texture, but besides convenience and performance, does it allow to do things that weren't possible before with only jit.bfg? Just trying to understand what the whole fuss is about.
In fact it allows less, not all the algorithms in jit.bfg are present on jit.gl.bfg. A CPU is capable of doing more things than a GPU, but a GPU can do certain kinds of processing much faster. In this case, the performance benefit is huge, as it can lead to higher resolutions, bit depths and frame rates.
I just did a quick comparison on jit.bfg vs jit.gl.bfg on a MacBook Pro 2018 (resolution 512 512, float32, voronoi algorithm):
jit.bfg: 7-8 fps
jit.gl.bfg: 150-200 fps
By doing all the processing on the GPU instead of the CPU, you also have the benefit of freeing the CPU for audio and other related tasks. So, in a nutshell: yeah, performance!
Thanks for the explanation Pedro, that kind of performance is impressive.