We are not getting away from floats. Half the variables in a game are floats. We use them because we want the range of values they can have. If ints worked for everything we would use them, since we have them, but we don't because of their limitations.
Doubles are simply 64 bit higher precision floats and game devs would universally use them if they were mostly free in terms of memory, performance and compatibility, but they are not.
All other things being equal a 64 bit value is always going to use 8 bytes and a 32 bit value 4 bytes. Why would I waste memory if I don't need 64 bits? 3d models are a perfect example. Say I have some high end 100k vertex model. Those verts use 1.2 MB at 32 bit, but 2.4 MB if I stored them with doubles. The increase in data size means slower loading, bigger memory footprint, slower transfer to graphics card and more memory use on the gfx card.
We still use flags (1 bit) and byte (8 bit) and short (16 bit) variables to save memory, disk space and network bandwidth where it makes sense. Different data sizes are tools. More tools are nice, but not everything is a hammer.
Also, one of the primary reasons we went to 64 bit CPUs is for pointers. 32 bit pointers can only address 4 GB of memory.