It's such a shame Apple decided to do this because VR! F VR we need games not VR. Apple make me mental mad that they're putting money on the wrong horse.
I disagree. Apple has cared about gaming for a long time.
The thing is, gaming isn't really a huge requirement for the mac's core customer-base. It's interesting, actually, because gaming definitely is a huge requirement for iOS's core customer-base, and I think most high-end games developers would agree that, in the mobile space, iOS is king of gaming. That's why Apple are starting to create their own, in-house GPUs and why they just split the AppStore in to "games" and "everything else".
But the underlying technical challenges are the same: how do you provide more horsepower without killing your thermal or power-management architecture?
Apple's answer has multiple parts:
- Replace OpenGL with a new graphics API (Metal). As they explained, the original Metal API reduced OpenGL-related driver overheads by 10x, and the new Metal2 API introduces refinements such as argument-buffers which can supposedly reduce those overheads by another 10x.
- Move to SoCs. In an SoC, the CPU, GPU, RAM and controllers are all packaged on to a single die, as if they were a single chip. You can't swap out the individual components, but in return for that you get to specialise and use faster, non-standard buses and add custom logic to coordinate power management and whatnot. Also, the CPU and GPU can share RAM, meaning less copying of data and smarter allocation of resources.
On iOS, Apple controls all aspects of the hardware and has lots of freedom about which IP to integrate and how to customise it. On the Mac, Apple builds customised configurations of more-or-less off-the-shell components. Intel isn't going to build them a Core i7 chip with an IMG or Nvidia graphics core inside -- they get Iris Pro, and that's it. If they want to add faster graphics, they need to again look through the catalogue of off-the-shelf components for a chip which is compatible with the i7's PCIe interface, and which meets their price, size, thermal and power constraints. It's a chain of compromises. As Nvidia (and, of course, Apple's iOS devices) have been showing everybody, though, there is no reason why SoC GPUs necessarily
have to suck. If the Mac did go to ARM one day, Apple would have the flexibility to integrate much more powerful graphics IP directly in to the core. That's probably the ultimate goal -- faster graphics, in a smaller and more power-efficient device.
SoCs have the obvious downside that they require lots of engineering effort to integrate, so they aren't user-replaceable or upgradeable. That means a new and demanding technology like VR can just pop up, your roadmap didn't plan for it, and you don't have a quick and easy solution for your customers. Discrete and external GPUs are the stopgaps which fill that hole.
Discrete GPUs are more powerful and convenient, but they are large, power-hungry and still not user-upgradeable. External GPUs require more flexible and higher-throughput I/O, which is one of the reasons why Apple have been pushing Thunderbolt.
There is no easy answer to this problem, but Apple have a good technical roadmap to provide rich graphical apps and games on the Mac, which I believe is inspired by their success from iOS. By shrinking and tightly integrating the components, they can build extremely powerful computers which fit in to smaller and lighter enclosures while being extremely power efficient.