MipmapBloomFilter on GitHub

Dear all,

As promised in this thread I would like to share my MipmapBloomFilter with you.
I would like to invite you to test it. It works fine for me under JME 3.1, however there is a problem with JME 3.0 and with anti aliasing, that I am unable to reproduce. Tell me if it works for you and feel free to make your suggestions, especially if it does not work as expected. Have a nice day!

Please download the MipmapBloomFilter here (GitHub).

Michael

7 Likes

Thanks a lot for sharing. Going to check it. :grinning:
Javadoc for the MipmapBloomFilter.java is great.

1 Like

Wonder if it would be possible to use glGenerateMipmap and trough that a possible optimized hardware solution for generating the mipmap instead of the multiple filter passes

Probably yes, but I’m quite happy about the performance on my 7 y/o MacBook at a resolution of 1280x720 and downSamplingCoef=2.0f. However I will consider getting rid of those extra passes.

Can anyone give me some insight about performance on newer hardware and/or higher resolution?

Some result with JME BloomFilter and MipmapBloomFilter

No filter :

BloomFilter :

MipmapBloomFilter :

Thanks @Apollo your MipmapBloomFilter gives really nice and smooth result.

What do you think about adding it to core ? @CoreDevelopers :slight_smile:

3 Likes

It definitely looks better, though it’s slower.
I tested it a bit a got some crashes depending on the parameters I was feeding it. But at a glance there may be some ways to get it faster.

1 Like

Well, my intention with the MipmapBloomFilter was, to make it possible to make small objects appear very bright. Though the performance drops significantly it is at least possible. The latest version on GitHub has a low/high quality setter that should give a little performance gain.

@Ali_RS Thank you for your feedback, I’m glad you have fun with it!

@nehon I would appreciate if you share your ideas with me regarding speed. I admit that you have to adjust the parameters very carefully. It’s easier to set them when you understand the way the filter works from a mathematical point.

1 Like