The snail appears to inflate, and yet its shape does not really change at all. Nor does the lighting change. All that changes is the character of the surface of the shell. It transforms from very shiny to completely matt and unreflective. Surfaces don’t change like that in the real world, but it’s easily achieved in 3D animation software, such as Blender, which I use.
But why should that make the shell seem to inflate? The size of the shell is just as well specified when shiny as when matt. I think it may have to do with the movement of the blurry shadow edge as it sweeps outward towards the edges of the shell. We transmit blurry, so-called low spatial frequency, soft edges along different brain pathways from the ones that transmit the sharp, so-called high spatial frequency edges, which we see in highly reflective surfaces. Soft edges indicate the overall roundness of objects. And soft edges moving symmetrically over a surface towards the object edges would probably only appear, in the real world, in the case of an expansion. However, the effect also depends in a way I don’t understand on the shape of the object. Not any old shape gives the expansion effect with the same treatment – I ended up with this one by trial and error.
This is an opportunity to say how terrific the Blender package is. It’s free for anyone to download and use and the developers and the Blender community have done a really fantastic job in making it available to anyone, anywhere with internet access. It takes a bit of learning (I don’t begin to do it justice) but it’s now comparable to high end professional animation software.