WWDC 2018 —

The end of OpenGL support, plus other updates Apple didn’t share at the keynote

Some smaller or more technical changes were not mentioned in the keynote.

Apple demonstrates Group Facetime at WWDC 2018.
Enlarge / Apple demonstrates Group Facetime at WWDC 2018.

SAN JOSE—Monday, thousands of people watched Apple's Worldwide Developers Conference (WWDC) keynote, in which the company described its plans for the next versions of its key operating systems—iOS 12 and macOS Mojave. It was more than two hours long, and it covered a lot of new features and tweaks. But in the hours since the keynote, additional information has emerged that wasn't mentioned in the keynote but is also relevant.

For one thing, Apple held a session at WWDC shortly after the keynote called "Platforms State of the Union" that went into a little more detail on certain features. The company also spoke with press to answer questions and clarify concepts. Finally, the company has released the first beta releases of iOS 12 and macOS Mojave, along with various pieces of support documentation. Developers, press, and users have discovered a number of new changes and features this way.

More info will emerge as Apple hosts dedicated talks on subjects like ARKit and Metal, but here's the most interesting stuff we've learned at WWDC so far that wasn't brought up in the keynote. We don't touch on everything here, of course, but we'll be digging more deeply into certain topics from WWDC—some mentioned here, some not—in the coming days.

OpenGL and OpenCL

Apple has informed developers that it will deprecate OpenGL and OpenCL in Mojave and iOS 12.

Software developers often prefer open standards like OpenGL because they make cross-platform development easier, but during its WWDC session dedicated to converting OpenGL developers to Metal, Apple rightly noted that OpenGL is woefully out of date for current needs.

A slide used by Apple at WWDC to announce the end of OpenGL support.
Enlarge / A slide used by Apple at WWDC to announce the end of OpenGL support.

However, there is another cross-platform graphics and compute API, Vulkan, which some see as OpenGL's successor, that is up to the task. Apple has decided not to support that API for numerous reasons, not all of which will satisfy developers.

And this shouldn't come as a surprise to anyone. Apple has only barely supported OpenGL of late, and Metal is clearly its priority. The company told developers at the conference that "existing and soon-to-be launched apps can still use it" and "this will remain so for some time," but nevertheless told developers that, ideally, "new projects should target Metal from their inception."

Apple had already made leaning on Metal necessary for new frontiers like VR and AR on Apple hardware.

Ending older Mac support

While we're on the subject of Apple ending support for aging things: Mojave will not support all the same Mac hardware that High Sierra does.

The following machines will be supported by Mojave:

  • iMac Pro
  • MacBook (Early 2015 or later)
  • Mac Pro (2013 redesign)
  • Mac mini (Late 2012 or later)
  • iMac (Late 2012 or later)
  • MacBook Air (Mid 2012 or later)
  • MacBook Pro (Mid 2012 or later)
  • Mac Pro (2010 or later, provided it has a GPU that supports Metal)

That means that other than older Mac Pros that have Metal-ready GPUs installed, no Macs released before 2012 will be supported. iOS 12 will continue to support all the same mobile devices as iOS 11, though.

Automatically disabling USB access

Apple has been at odds with some authorities about leaving the door open for law enforcement officials to access data on phones of criminals, terrorists, or anyone else authorities in certain countries might want to look into—like political dissidents.

Apple has resisted requests from governments to put in a back door to allow this, and it has even made small changes to make breaking in even more difficult. As first reported by MacRumors, in the iOS 12 beta, there's a toggle in the Settings app's Touch ID & Passcode labeled "USB Accessories." Below it, a caption explains:

Unlock iPhone to allow USB accessories to connect when it has been more than an hour since your iPhone was unlocked.

It is enabled by default. Apple had previously explored a feature that would do this after seven days in previous iOS betas, but this is even more aggressive.

iPad gestures and status bar changes

Touch gestures for certain features on the iPad will be adjusted or added in iOS 12—and they'll look a lot like the gestures on the iPhone X. Swiping up from the bottom will still bring up the Dock inside apps, but swiping up again will bring the multi-tasking interface. To access control center, you'll need to swipe down from the top-right of the screen.

As far as we can tell, the home button will still continue to function as before on devices that have one, but there are no guarantees that future iPads will.

The iPad menu bar has also been adjusted. The time has been moved to the far left, while the connection status and battery indicator are in the top right. That leaves a big gap in the middle. Readers and commentators can probably guess why.

Multiple faces in Face ID

iOS 12 allows storing up to two face profiles for authentication on Face ID-enabled devices. This addresses one of our complaints when reviewing the iPhone X, though indirectly. It's meant to be an aid to users who have trouble with Face ID, but it can technically be used to register two distinct users.

Additionally, you can now reattempt a failed Face ID scan on the iPhone X without entering your passcode by swiping up from the bottom of the screen after the first attempt fails.

New app store guidelines for remote mirroring apps

Apple drew some ire from some users for rejecting the iOS version of the Steam Link app from Valve, which allowed Steam users to access their game libraries over a local network and play them on their iPhones or iPads. The app was initially approved but was rather quickly, well, unapproved.

Valve and many of its users argued that this was a double standard, as Apple allowed other remote mirroring apps on the App Store.

However, the app did allow users to access the Steam store within the app to buy new games without going through Apple. At best, that was a gray area in Apple's existing app review policies, but it would certainly have been easy to interpret them as preventing this already. Now Apple has updated the policies to explicitly forbid this case in clear language.

Here's the language:

4.2.7 Remote Application Mirroring: If your remote desktop app acts as a mirror of specific software or services rather than a generic mirror of the host device, it must comply with the following:

  • (a) The host device is a personal computer owned by the user, and both the host and client must be connected on a local and LAN-based network.
  • (b) Any software or services appearing in the client are fully rendered on the screen of the host device, and may not use APIs or platform features beyond what is required to stream the Remote Desktop
  • (c) All account creation and management must be initiated from the host device.
  • (d) The UI appearing on the client does not resemble an iOS or App Store view, does not provide a store-like interface, or include the ability to browse, select, or purchase software not already owned or licensed by the user. For the sake of clarity, transactions taking place within mirrored software do not need to use in-app purchase, provided the transactions are processed on the host device.

Games make up a significant portion of app sales and revenue on iOS, and Apple is seeking to protect that here. Some gamers have argued that there's little crossover between iOS games and Steam games, but that's actually not true. Many of iOS' biggest hits, like Gorogoa and PlayerUnknown's Battlegrounds, are also available on Steam.

A health records API for third-party apps

In an update to iOS 11, Apple added a Health Records section to the Health app that allowed users to pull in and view their own health records from various major services and networks. Now Apple has made this available as an API to third-party developers. This paves the way for new applications that can help users do everything from manage medications to self-diagnosis.

Automatic updates in iOS 12

Curiously, there is a new toggle in the software update section of the Settings app in iOS 12 that allows you to enable "automatic updates." Apple hasn't yet said exactly what this is, but given that you can already schedule automatic updates, we're thinking this might actually be an option to have updates automatically installed without even prompting you at all. We'll find out for sure eventually.

2FA security codes can now autofill

Two-factor authentication is necessary, but it can be a pain, especially on mobile. iOS 12 seeks to remedy that. When you receive a text message with an authentication code for a service you're using, it will automatically appear in the suggested words bar at the top of the keyboard when you go to fill it in at a form shortly afterwards, so you can add it with just one tap—no copy and paste necessary.

Channel Ars Technica