"Mobile Bloom" Shader from Angry Bots results in splash screen freeze in Xcode

Dear CommUnity,

The title nearly says it all: In my current project, I tried to use the mobile bloom shader, shipped with the angry bots demo. I’ve applied the mobilebloom.js file to my main camera, and assigned the shader. Everything works perfectly in the Editor! However, if I build&run the app, the application freezes while displaying the SplashScreen.

I really don’t have any clue why this happens, and I’d be very lucky to hear some advice!

thx in advance!

What generation of iDevice is it?

It’s a 3GS, so it supports openglES 2.0
I’ve tried to build it arm6+arm7 and arm7 only. both didn’t work

Ah k, sorry, OpenGL ES version was my only real lead.

Does the game freeze at the splash screen if you take the script and shader out? i.e. is it definitely what’s causing the crash?

@Ntero: unfortunately that’s not the problem. thanks for your help, though!

@gepetto I’ve tried that already. Disabling the script and shader results in a running game, so it’s definitely because of the mobile bloom.

It seems like there’s a general problem with mobile bloom, though:
For testing purposes, I’ve opened the angry bots project, turned the bloom very high (to see if bloom works or not) and then built angry bots for my iPhone - The game runs, but it has no bloom (except the fake sprite-based glow here and there).

I’m a bit confused as one of the angry bots devs said to me, that mobile bloom runs on mobile devices. however, if it would, I’d have seen that in my angry bots built (which is completely unaltered, except the bundle id and the bloom value. seems I like overlook sth here.

hi, though i don´t know were your problem might be i can confirm that everything runs just fine. I just opened the demo project, set it to ios and build and run
(maybe i made some adjustments in playersettings and changed some texture qualitys, don´t remember). Runs as expected under iPad2. Didn´t test any other devices though.

I think i read somewhere, that angry bots is also available as a downloadable app in the appstore now, so you might want to try that one first.

The application runs appropriately! It’s just that the mobile bloom shader is inactive! Try setting the bloom very high in Unity (to see the difference between bloom on/off) and then build it for your OGL2.0 iDevice. It won’t show the bloom… (At least for me)

Aah I’ve got a hint for y’all: The quality manager in AngryBots disables the bloom dynamically for 3GS-Devices. The iPhone 4 is the only iPhone with bloom. I tried to enable bloom for 3GS, too, it’s building right now in Xcode.
That doesn’t explain why my application crashes, but it’s better than nothing.

Mobile Bloom works! At least in Angry Bots. It was the Qualitymanager script disabling the Effect for 3GS-Devices.
I edited the script and enabled Mobile Bloom for my 3GS, too, however this results in a noticeable performance loss.

Now I’ve to try out how to get this beast into my own project!

this should work fine:

663328–23777–$MOBILE_BLOOM_community.unitypackage (8.35 KB)

Hey ole, this, indeed, works fine!

The performance is surprisingly great, and the quality is outstanding for mobile devices!

Thank you for your awesomeness :slight_smile:

Ole, could we tempt you into making a set of mobile shaders? you could even sell them on asset store to promote the store. I would happily pay a lot. That platform is crying out for fast shaders :slight_smile:

Also please if its no trouble, is it possible to turn bloom shader into blur shader? just curious. Trying to look at blurring the 4 corners of the screen (a bit like how vignetting works without the chroma).

:slight_smile:

hehe :slight_smile:

a blurred vignette would be fasted to realize with texture masked quads you draw over the screen corners only where the texture mask defines the blurriness. you can use a similar separable blur as in the mobile bloom package (or try your luck with just downsampling upsampling).
sadly, changing render targets on iOS can cause a GPU hit, so i am not sure if blurring once or for all 4 corners individually would be faster …

Yeah!! I got as far as doing the darkened corners myself (this is a lot of fun faking it btw).

But I think blurring for all is a better idea, because its more useful. you could blur, bloom and tint the screen, its better for games to combine shaders. You guys taught me this with your pdf :slight_smile:

Hi folks,

the mobile_bloom_unitypackage flips the camera in the editor in the vertical axis? :slight_smile:
Where do I have to place some “-” to have it have it run normal?
(Does this only happens for me?)

thanks,

pep

Doesn’t happen for me. But that might be because erm, an old version of unity required a workaround for mobile rendertextures. What version are you using?

Hi, this happened to me in 3.4 too (now in 3.5 the screen is totally black)
I hope this gives you a clue.
Regards