I have some images that I want to “put inside a bubble”. The bubbles kind of float around the screen with these images trapped inside them.
The best is a way to combine the inside image with the bubble image and somehow warp the inside image to look like it is reflected on the inside of the bubble.
Does anyone know how to achieve this effect without using textures and meshes? Perhaps someone remembers an old project or something that did something similar?
Here is an example of what I mean:

You can do this using the GPUImageSphereRefractionFilter from my open source GPUImage framework:
I describe in detail how this works in this answer to a question about a similar affect on Android. Basically, I use a fragment shader to refract the light that passes through an imaginary sphere, then I use that to do a lookup into a texture containing the source image. The background is blurred using a simple Gaussian blur.
If you want to achieve the exact look of the image you show, you might need to tweak this fragment shader to add some grazing-angle color to the sphere, but this should get you fairly close.For the fun of it, I decided to try to more closely replicate the glass sphere above. I added grazing angle lighting and a specular lighting reflection on the sphere, as well as not inverting the refracted texture coordinates, leading to this result:
I used the following fragment shader for this newer version:
and this filter can be run using a GPUImageGlassSphereFilter.