I've tried to summarise the explanation my professor gave. Is it correct or have I misunderstood? It's a highly simplified view of things anyway, but here goes: Taking the simplest 1D case, there are two possibiities for an electron in the lattice: it may be scattered and move back the way it came, or continue through unaffected. This sets up a standing wave, with the wavefunction having a component representing movement to the left (scattered) and one representing movement to the right (unaffected electron). Lattice spacing rises with temperature, and as such the wavelength of this standing wave will increase, resulting in a decreased bandgap. Any good? Does this kind of picture extrapolate easily to 3D?