I'd love to see a breakdown of ARKit vs something like Vuforia. Here's a video with the equivalent functionality to the WWDC demo -- https://www.youtube.com/watch?v=JvE_7filGsY
Ignoring all that other stuff, it's officially sanctioned and supported, part of the platform, requires no external libs, has Cocoa level documentation, and tons of developers will be using it very soon.
I would stay as far away from Apple as possible when it comes to gamedev tools.
Sadly this also means Apple will only update it in subsequent versions of the OS. This is a big deal when choosing a target platform, e.g. ARKit 11 vs ARKit 12.
For example when iOS 12 comes out your target audience will be split, some with ARKit 11 and some with 12. You'll have to decide if you want the new features in 12 or ability to run on devices still using iOS 11.
Compare with other game platforms, which insulate you from underlying tech changes. For example a Unity app can be updated and use the latest Unity features, even on an old iOS.
[FWIW Apple could update ARKit independently of iOS, but that's not been their pattern]
It makes for a compelling proof of concept. Having a lot of individual things interacting with the environment independently is most of what you need, technically, for the high-quality overlays you're talking about. If you can do the former you can do the latter, it's just a sexier way of showing off the capabilities.
Oh, I get it, then it's not AR. Well, maybe AR is not such a good fit in this case to begin with.
This is still new and doesn't quite make full use, but there are many reason why you'd want to see the environment. For one, it gives a sense of scale. For example if you put a real life size dinosaur, seeing the surrounding allows you to understand the scale better. Next up, the AR application could very well interact with the world too, which brings new possibilities.
These are pretty new technology and no one knows the best way to use it yet. Maybe in the future we'll start putting a sky in the background. Maybe we'll find better ways to use AR. Both AR and VR are still in their infancy.
Prior to this, as a developer, you might think AR is limited to what Pokemon GO and the first example (like a cup of coffee on a table) show. After seeing this, if you were thinking of doing anything simpler than what they were showing, you'd likely see it as much more feasible than you previously did and perhaps look into including some of those features.
And this was at WWDC (their developer conference), so it certainly applies to a developer audience.
Doing AR from scratch is a huge endeavour but this should make it simple enough so that we start seeing more applications using it for more useful stuff.
I realize on Google I/O 17 demoed Tango using Asus ZenFone with low frame rate is still not impressive.
I thought Samsung S8 should have AR on a premium phones.
Compare to 60-120fps on iOS 11, yup, Apple Metal 2 could boost by reduce latency from 16.6ms to 8.xms and even more with direct display, it matched PlayStation VR refresh rate, real world tracking is what we need.
Or is there some consumer product not listed on their page?
Also, Apple has almost never been the first to do anything. Tim Cook even admitted this yesterday. What Apple brings to the table is an actual polished solution. Which having used Hololens extensively it absolutely is not.
Yes, badly and expensive. And didn't follow up on it properly.
Unfortunately, the old-fashioned keyboards also worked when they weren't hard up against the screen - thank god we have these new 'smart' keyboards that have to lie flush against the screen to work.
I know that YouTube on Chrome uses VP9, which is not a web standard - or at least not more of a web standard than HTTP Live Streaming (which is what Apple uses for its keynote).
As for why there isn't a web standard video encoding and container, all the major browser vendors except one have announced support for VP9 and its successor and Webm.
The double standard here is really quite breathtaking. Apple doesn't implement a feature: Apple's fault. Google doesn't implement a feature: Apple's fault too.
I don't see the double standard. All but one browser on GP's platform support the royalty free option. Only Safari on his platform supports the encumbered option, and he doesn't want to be forced to use it. On my own preferred platform, no browsers support HLS.
Since the votes on this thread won't let me reply:
@pjmlp: I choose to use a platform where developer experience is the primary goal because developing software is both my vocation and avocation and why I am reading "Hacker News." If I wanted a walled garden media consumption toy, I would get a LeapPad. Look, we can snark all day, but that doesn't change the conclusion that tommoor was right about web standards.
@millstone: There are no royalty-required formats that are web standards for a reason: to make the web free and open to all. That is why it is not a red herring. Bringing Google into it, on the other hand, is — whether Google pays the fees has no bearing on whether the format should be a web standard. Apple chose not to implement hardware decoding for the unencumbered format. All other major consumer hardware manufacturers have.
Apple, as usual, wrote their own private format. A pretty sucky one at that. But don't get fooled, DASH is not much better, and for the few things it offers over HLS it comes with a massive implementation difficulty. There is basically no DASH compliant player around, not even the one developed by the DASH Industry Forum implements all the standard. It would be way easier for every browser vendor to support HLS than DASH.
I appreciate the free software position. It seems MPEG-DASH is indeed better suited for it, though maybe only slightly . (Regardless, turns out Apple did not release anything as copyleft this year, so maybe it's better that free software purists could not have watched the video?)
The case for "encumbered" options is simple: it's what's decoded in hardware, for users who prefer their device to last the entire video.
Ironically fMP4 is royalty free thanks to its original developer, Apple.
Then chose platforms where the overall desktop experience is a primary goal of developers.
Any developer on this community can watch the video.
Forcing people to use macOS to view recorded sessions or events goes against that.
You can also use VLC to watch it.
However, the default experience is a little box that says "Streaming is available in Safari and the WWDC app". Now I have to go out of my way to learn that they stream via HLS, obtain the stream's URL and feed it to VLC. †
Compare this with Microsoft's and Google's videos (available through Channel9 and YouTube, respectively) that are accessible "virtually" from every operating system and device.
If your goal is to attract new developers to the platform, maybe adopting a more widespread industry standard (such as DASH, which all other browsers implement) is probably the way to go, IMO.
† By the way, the box also breaks the "Copy Video Location" menu item, so I have to open the inspector or install an extension to find out what the real URL is.
To me it really looks like a statement against people without macs; Apple doesn't care about them, not even in its own interest of making money. They won't speak to you as long as you don't have an iDevice, full stop.
It were IBM "mistakes" that made the PC different from all other computer eco-systems, however the current trends of commodity hardware and race to bottom prices are making PC OEMs go back to the 80-90's full integration of hardware/software culture.
I wonder if it would make sense for Apple itself to support frameworks like ARKit and SpriteKit on Android. I think it would make people a lot more comfortable relying on them.
It is trivial for the Android ecosystem to replicate an Instagram for their platform, it will be much more difficult to do this for AR and thus will be a meaningful source of competitive advantage.
There are real economic barriers to having the necessary hardware for AR. High-end Android phones don't ship anywhere near the numbers of iPhones to give it the scale required to make the necessary investments in hardware and software worth it (both from OEMs and Google). And that will ultimately limit the opportunity and market for developers, disincentivizing them to invest in it.
This is an area where Apple's scale, margins and ability to deploy new technologies and see meaningful adoption from users and developers (think about how fast Touch ID rolled down into the entire iPhone/iPad installed base, setting it up for Apple Pay years later) pulls up the ladder on would-be competitors.
But it's definitely on fewer total devices, so Apple has a real edge here.
1. The technology is still new and not yet polished
2. Pixel 1 was a rushed job made in 9 months
3. Tango needs extra hardware that increases cost
I have a feeling that Pixel 2 might have it though, as they had much more time working on it and the technology itself has matured a lot more since, as we saw at IO. Not only that, they also showed off VPS which is a visual position system for indoors using Tango. Definitely a killer feature for the Pixel.
I don't believe giving ARKit to away makes sense for Apple at all. It is, from what I can see, a pretty advanced technology and widespread adoption of it on other platforms will not help them selling more iPhones.
This only works on iPhones/iPads with the A9 or A10 chip. Which means that if you want to use AR then you need to upgrade from your iPhone 6. It also will create a suite of AR apps which only run on iOS.
When Jobs died in 2011 the iPhone represented 40% of Apple's revenue and generated $3.6 billion in App Store revenue.
In 2016, the iPhone represented 60% of Apple's revenue and the App Store generated $28 billion.
App Store revenue 2011
App Store revenue in 2016
For example, sucks to be someone who launched a game this week when Monument Valley 2 took over everything.
This is a somewhat recent figure I found. https://9to5mac.com/2017/01/11/ios-market-share-kantar/
But the essential point is that nobody can afford to ignore Android and building to iOS-specific APIs doesn't make sense.
For broad market maybe, but for niche markets a good example would be ForeFlight https://www.foreflight.com/products/foreflight-mobile/ It's pretty much the gold standard among pilots, from private to airline transport, and it's IOS only. Makes support and dealing with fragmentation a whole lot easier.
The market within the iOS space is huge and if building an iOS only app using ARKit is more profitable then why not ? It's all about ROI. There isn't an equivalent for ARKit on Android and building one would be costly and time consuming.
For example ARToolKit is available for Unity, or even Anddroid.
Unless you are targeting a specific audience (for example artists that use the iPad Pro) for most developers it really doesn't make sense to confine yourself to iOS.
There have been smartphones for years. Apple is pretty late to the game.
Surely you are referring to some future point in time, because most can still afford to ignore Android, use iOS-specific APIs, and be profitable.
The whole point of these APIs is to let developers make a better apps on iOS so people want an iOS device. If they port any of them to android all they're doing is making it easier for people to leave their platform.
Yes, you lose out on android for now, but in the mean time you support millions of iOS devices in a category that will be getting a ton of media attention in the next year.
Are they though? There's still a huge amount of people buying phones and computers, which cost a lot of money, periodically. There's paid services, sure, like Apple Music, which might become self-sustaining businesses, but a lot of these other "services" by the big tech companies are operated at a loss, like email, maps, cloud-storage, messaging, vide-calling, AI assistants, etc.
The only reason to make free services like all those at a loss is to bring value to a platform so users will stick to it, and Apple keeping its services platform-specific makes its platform even more sticky. Apple benefits from this directly, because it makes money selling its platform. To use iOS you need a device from which Apple makes loads of cash.
Google on the other hand is still essentially just an ads company with hobbies, and its profit from the platform its building is much less murky, indirect, and IMHO flimsy. The only way their platform brings them substantial profits is by collecting data to better target ads, which is concerning too.
The lifetime of devices is growing, so in the long term we have to see if Apple can keep selling as many devices as it does; their main source of income is not entirely future-proof. If you ask me, however, Google might be in a more delicate position, especially considering the growing issues with internet ads (concerning privacy, tracking, obnoxiousness etc) and that so many players are in the ads business nowadays. Some, like Facebook, are moving in deep-- challenging Google in user data analytics and engagement time.
tl;dr: Only some services (like Music) make money. All the rest are more valuable if they serve your core business, and Apple is very much doing that.
ARKit isn't a backend service it's an OS library so doesn't make sense to be cross platform.
From game engines such as Unity which have plenty of AR plugins, to SkiaSharp (port of Google's Skia) using Xamarin.
They are apples and oranges and the point is that the iPhone for a few years back is a guaranteed hardware specification that you can guarantee ARKit will work on. If you think about this for Android, you'd need to slice it by the devices that are compatible - it's not going to be a guarantee by OS.
Look at OpenCV for example.
That said, it isn’t required. I have run the demo on my own iPad...the tracking is seriously impressive even with just the one camera.
My argument probably isn't as valid but I still think the guarantee of 2 iPhone generations is safer than the fragmentation of Android devices that would be "released in the past 2 years".
Not only is the install rate for the latest Android dramatically smaller than the latest iOS, but camera capabilities (and GPU horsepower to drive the AR itself) are all over the place, with no guarantee that the camera module in the phone will provide even a satisfactory experience, or that the GPU will be sufficiently capable.
Camera APIs on Android are also a complete jibbering mess, which adds to the difficulty of anything that seeks to work across all (or even most) devices.
One distinct iOS advantage isn't just that adoption of new versions is rapid, but also that hardware capability variance is low, so devs can be confident that their products work well, as opposed to barely working.
Can't wait to try this out.
Also, ARKit was discussed here yesterday https://news.ycombinator.com/item?id=14490239
There is a LOT of hardware out there that supports this.
The iPhone is the most popular game platform on the planet and, just like that, it will be the most popular platform for developing AR applications.
If you compare this to "serious" gaming technology (i.e. what the triple-A creators are making, and what parents are willing to pay $70 dollars a title for to keep their 16 year old from nagging them), the iPad and iPhone both are severely lacking in computational power to produce anything that the heavy consumer will spend "real money" on (rare exceptions like Farmville and Candy Crush not with standing). This is completely useless for serious gaming.
This could be huge for, say, realtors though. Being able to show your prospective purchaser who really likes the home but feels 'iffy' about that wall blocking off light into the dining room can now power up an app and show in real time a rendering of how the house would look if you knocked out that wall and had an open-floor layout with that beautiful Southern light pouring in. The ability to pop in new landscaping to let the buyer visualize what could happen if you replaced the front with hedges + hydrangeas against hyacinths could easily make the difference between that realtor making her 6% on that $850,000 or not.
Platform wise you're right worldwide, in the US I think it's still roughly 50-50.
What it is, is a great platform to develop on to get ready for AR glasses.
I was hoping for years that it was a sign that Nintendo was going to release Super MARio...
I hope in the end he decided to stick his focus on the app (which is quite amazing), otherwise he's in big trouble now!
I really think that a lot of new apps will come out in this space, now that the technology is much more approachable.
And so the advantage of ARKit is having Apple behind it.
NativeScript gives you access to native API automatically.