The system's internal vision and rendering pipeline is really pushing the limits of what can be done now.
The first versions of this kind of thing are often "declarative"; you push your data (with strong limits) to it, and it handles the rest. This way a level of performance can be guaranteed.
It will be a few generations of hardware before the system is more "free."
You're describing early watchOS, but that's not how visionOS works. The app is running, on the thing.
I believe the author is a degree beyond wishing the apps were more powerful on limited hardware, c.f. references to "iPad-ization" and Swift playgrounds.
Succinctly, I believe they'd nod along to an example of "It. Blew. My. Mind. as a 6 year old to get bored, click around, and find image files that appeared in Civilization II."
I think DrMiaow is referring to how the APIs and SDK could become more “open” over time in the sense that more functionality is exposed to developers.
One example is that right now Apple makes a distinction between Immersive (AR, digital objects superimposed in the real world) and Fully Immersive (VR, fully digital, real world is no longer visible).
In Fully Immersive mode, a developer gets full control over the entire screen and can draw using a custom rendering engine on top of Metal.
But in Immersive mode, RealityKit handles all rendering, and you’re restricted to whichever rendering features RealityKit exposes. There is some support for custom shaders, but it’s quite limited.
Unity solves this issue using PolySpatial, which translates Unity’s scene representation to RealityKit.
In that sense I can imagine (or hope) that Apple opens up the platform more. Similar to how it added the AppStore to the iPhone after one generation.
But it will, unless some drastic internal push and change in direction happens, remain iPadOS-like.
I’m sorry if you feel that way and looking at it now I do agree. Next time I’ll provide a more thorough analysis that is more in line with the standards of HackerNews.
I was mostly curious whether the sentiment of the post resonates, as I feel much of the coverage on the vision pro is focused on either technical prowess or how it could change the way we work with computers, rather than the openness of XR operating systems.
But you can’t do that on the Vision Pro — you need a MacBook to actually write the code. That’s the author’s point: the system is, by design, not for development, which is a shame.
Agree with the article — it’s a huge shame that Apple chose to make the Vision Pro use its same broken model of “computing” used on the iPad, where it’s essentially impossible to do anything productive unless your definition of productivity is using a watered down version of Microsoft Excel.
This is why I’m hoping Valve builds an all in one VR headset; being able to drop into a Linux desktop (as on can on the Steam Deck) would be hugely useful in terms of actually using it for productivity.
I’ve also been following development of the Simula One[0], but it will be really hard to compete with Apple’s design and technical execution, and I’m afraid it could stay in the same category as Linux Desktop.
In this light, having a company as Valve put their weight and resources behind the importance of more open ecosystems, would be amazing.
You can use the VP as a monitor for a Mac, so I guess you could at least use a Linux VM or remote into a Linux box from the Mac? Not ideal but should work fine I think.
As proven multiple times with GNU/Linux failures among mass market, beyond traditional UNIX strongholds of headless computing, that isn't what the masses care about to make a sustainable product.
Even the Steam Deck is only a thing, because at then end of the day it's Windows games that gamers get to enjoy on the platform, Linux/Wine/Proton being a detail.
The author has no point, and this post is riding some kind of geek activism vibe.
The author complains that they couldn't use C++ on the iPhone or iPad, even though you can. They then complain that the Vision Pro isn't "open" but don't define what they mean. You can certainly write C++ application software the Vision Pro (see https://babylonjs.medium.com/building-babylon-native-for-the...).
I think they're complaining about Swift for the UI, but it's hard to tell. Maybe they're complaining that the SDK does too much for you.
The main point I tried to make, but apparently muddied through subpar writing, was that visionOS ultimately is an operating system more akin to iPadOS than macOS, which I think ultimately results in people being less able to deeply understand the inner workings and of the computer.
An iOS-like operating system aims to abstract away file systems, how software runs and leaves the user merely running apps.
You can use a code editor to write code on iOS or iPadOS, but you wouldn’t be able to run that software outside of that code editor on the device. You couldn’t use it to build an application binary / executable with it to be run directly on the device.
I did not aim to make any points about the development experience for building apps for the Vision Pro. Rather about the restrictive nature of the operating system when using the Vision Pro as a primary computing device.
As mentioned elsewhere, next time I’ll make the post more informative and less a quick “does anyone else feel this way too?”, as I see that this does not fit the standards of the HN audience.
22 comments
[ 1.2 ms ] story [ 16.6 ms ] threadThe first versions of this kind of thing are often "declarative"; you push your data (with strong limits) to it, and it handles the rest. This way a level of performance can be guaranteed.
It will be a few generations of hardware before the system is more "free."
I believe the author is a degree beyond wishing the apps were more powerful on limited hardware, c.f. references to "iPad-ization" and Swift playgrounds.
Succinctly, I believe they'd nod along to an example of "It. Blew. My. Mind. as a 6 year old to get bored, click around, and find image files that appeared in Civilization II."
https://en.m.wikipedia.org/wiki/Retained_mode
The app is running on the device, but the app is pushing the commands to render 3d models to the system.
One example is that right now Apple makes a distinction between Immersive (AR, digital objects superimposed in the real world) and Fully Immersive (VR, fully digital, real world is no longer visible).
In Fully Immersive mode, a developer gets full control over the entire screen and can draw using a custom rendering engine on top of Metal.
But in Immersive mode, RealityKit handles all rendering, and you’re restricted to whichever rendering features RealityKit exposes. There is some support for custom shaders, but it’s quite limited.
Unity solves this issue using PolySpatial, which translates Unity’s scene representation to RealityKit.
In that sense I can imagine (or hope) that Apple opens up the platform more. Similar to how it added the AppStore to the iPhone after one generation.
But it will, unless some drastic internal push and change in direction happens, remain iPadOS-like.
I was mostly curious whether the sentiment of the post resonates, as I feel much of the coverage on the vision pro is focused on either technical prowess or how it could change the way we work with computers, rather than the openness of XR operating systems.
It is ok as a blog, but I expect better on HN.
Writing an app gives you the ability to write code that targets a general purpose cpu. People can tinker to their hearts desire within their app.
This is why I’m hoping Valve builds an all in one VR headset; being able to drop into a Linux desktop (as on can on the Steam Deck) would be hugely useful in terms of actually using it for productivity.
In this light, having a company as Valve put their weight and resources behind the importance of more open ecosystems, would be amazing.
[0] https://simulavr.com/
Even the Steam Deck is only a thing, because at then end of the day it's Windows games that gamers get to enjoy on the platform, Linux/Wine/Proton being a detail.
That doesn't mean that it's not a worthwhile goal.
The author complains that they couldn't use C++ on the iPhone or iPad, even though you can. They then complain that the Vision Pro isn't "open" but don't define what they mean. You can certainly write C++ application software the Vision Pro (see https://babylonjs.medium.com/building-babylon-native-for-the...).
I think they're complaining about Swift for the UI, but it's hard to tell. Maybe they're complaining that the SDK does too much for you.
The point is messing around with cool technology is a great way to engage with things.
An iOS-like operating system aims to abstract away file systems, how software runs and leaves the user merely running apps.
You can use a code editor to write code on iOS or iPadOS, but you wouldn’t be able to run that software outside of that code editor on the device. You couldn’t use it to build an application binary / executable with it to be run directly on the device.
I did not aim to make any points about the development experience for building apps for the Vision Pro. Rather about the restrictive nature of the operating system when using the Vision Pro as a primary computing device.
As mentioned elsewhere, next time I’ll make the post more informative and less a quick “does anyone else feel this way too?”, as I see that this does not fit the standards of the HN audience.
Apple will never allow 3rd party processes access to the camera system data stream.