Better graphics requires a better graphics card. This much is intuitive to most people. But asking what makes a GPU different from a standard CPU is almost a trick question, because at their most fundamental level they're the same damn thing. Both pieces of hardware perform the same kind of task: they get a problem — in the form of 0s and 1s — and solve it at incredible speeds. The real difference between a CPU and GPU is in the architecture, as described by the number of cores each has, each of which allows a new maths problem to be solved simultaneously. Simply put, GPUs have far more cores than CPUs. The top of the line Mac Pro, for instance, has a six-core processor while the NVidia GTX 980 graphics card has over 2000.
But more cores isn't always better. To simplify quite a bit, think of a GPU as a factory and a CPU as Steven Hawking. Factory workers, each represented by a core, can complete lots of easy, similar tasks with incredible efficiency — tasks like geometry and shading. On the other hand Mr Hawking, while incredibly smart and only occasionally baffled, is just one man. His skill set is better used on singular, complex problems like artificial intelligence.
While working in similar ways, any truly demanding game is going to require both a smart CPU and a powerful GPU. Suddenly not being about to run Dark Souls on a five-year-old Macbook is not all that surprising.