58 ms·
SwiftUI, RealityKit, ARKit, Xcode, Reality Composer Pro, Unity ... give me a break :) These device specific environments and technologies are cumbersome to lea
by TekMol 3y ago
SwiftUI, RealityKit, ARKit, Xcode, Reality Composer Pro, Unity ... give me a break :)
These device specific environments and technologies are cumbersome to learn, will exclude everybody with a different device, usually change rapidly which makes code maintenance a nightmare and at some point simply die like flash.
I will start developing for 3D devices when we have a standard similar to HTML or when 3D elements are part of the HTML standard.
A text based way to describe how elements are positioned in space and what attributes they have. With JavaScript support for interaction.
Looks like there is "X3D":
https://en.wikipedia.org/wiki/X3D https://en.wikipedia.org/wiki/X3D
At a first glance, it looks a bit like a 3D version of SVG? That could be a good starting point.
- easeout 3y agoI'll welcome VRML back anytime.
- gattilorenz 3y agoFor a tiny while that was so futuristic: the Web, in 3D. To ~10 year old me it was like seeing the prototype of a flying car, of course everyone will use this in the future!
- ly3xqhl8g9 3y agoBeen thinking since 2015 how to explore information as a 3D structure: plurid. The stable library is for now only for React.
- ralusek 3y agoReact VR: https://developers.facebook.com/videos/f8-2017/react-vr-build-amazing-vr-experiences-using-react/ https://developers.facebook.com/videos/f8-2017/react-vr-buil...
- TekMol 3y agoThat seems to be a way to define 3D objects and render them in 2D html. This approach would be useful if 3D devices let you render a view for each eye. And report head and hand movements as events. So one would build a whole 3D engine with the current Browser APIs. The approach I was thinking about was to tell the 3D device "This object is located at x,y,z position 123,40,8". And the device does the rendering. It's probably much faster, as the device probably has a lot of hardware optimized for 3D rendering. Let alone things like AR, where you have to analyze a given video input, figure out that there is a real table in a certain position in space where you can put 3D objects on, calculate the physical interaction and shadows etc. Not sure which approach is better. Time will tell.
- astrange 3y agoThe first approach doesn't work because it'll give the user motion sickness. The device must be able to interpolate between "frames" faster than you can update them, and providing the info needed for you to do that is a privacy issue.
- JayStavis 3y agoWebXR is the way to do this, and a reasonable more supported equivalent to react-vr is probably @react-three/xr which where the stack is react --> three.js --> webXR --> WebGL. https://github.com/pmndrs/react-xr https://github.com/pmndrs/react-xr Apple announced support for WebXR on VisionOS as well. I think it will be a lot more interesting once webGPU hits too, as it will be closer to native-level GPU programming but portable between both native and web contexts.
- prox 3y agoAn open standard that is very capable (but cannot find if it can do streaming over http) is https://github.com/KhronosGroup/glTF https://github.com/KhronosGroup/glTF It still misses some important things in the area of shading and animation for full transfer of all qualities you find in a modern 3d creation app like Blender.
- n42 3y agomaybe you're talking about Universal Scene Description? it's a format Pixar put together and opened up. there's a WWDC talk on Friday titled "Explore the USD ecosystem" about it; I'm hoping this means Reality Composer Pro/visionOS is using an existing open standard for this stuff. https://openusd.org https://openusd.org edit: it looks like RealityKit and the Apple ecosystem already supports this https://developer.apple.com/documentation/realitykit/creating-usd-files-for-apple-devices# https://developer.apple.com/documentation/realitykit/creatin...
- theaussiestew 3y agoHave you found anything that lets you make DOM elements 3D and have a material?
- astrange 3y agoThat's WebXR. https://github.com/immersive-web/webxr/blob/master/explainer.md https://github.com/immersive-web/webxr/blob/master/explainer...
- miohtama 3y agoThey must have gone only with Unity, because Apple has a hatchet to bury with Epic Megagames, the creator of Unreal Engine.
- efnx 3y agoGLTF does a pretty good job. It definitely doesn't cover everything, but it's a good scene descriptor.
- slsii 3y agoI doubt Apple will get on board, but this seems like the correct answer to me. https://github.khronos.org/glTF-Sample-Viewer-Release/ https://github.khronos.org/glTF-Sample-Viewer-Release/
- jeroenvlek 3y agoKind of ironic that parent asks for a global standard like HTML and gets 5 different suggestions in the replies ;)
- easywood 3y agoThat's the best thing about standards, you have so many to choose from.
- pjmlp 3y agoSure, when POSIX gets updated for a proper full stack development experience, and modern hardware devices.
- tencentshill 3y agoOpenXR seems to be a good platform.
- KRAKRISMOTT 3y agoWhat's Flutter's VR story?
- kanbara 3y agoi actually see this sort of commentary a lot, and i suppose it's apt for HN and other tech fora where people want open standards, but for the life of my i don't understand why we shouldn't develop with technology designed _with_ the hardware. this is apple's forte, and i've done a lot of generic development in the past, as well as multi-cloud cloud computing and the only takeaway i have is that they always provide inferior experiences for the sake of some nebulous goal the point of apple vision pro is to run apple hardware with apple software, and people _want_ that.
- paulryanrogers 3y agoBecause the alternative is a walled garden, for better and worse. Why don't most games work on Mac's? One big reason is closed APIs, especially as hardware improves. Why is HTML becoming a ubiquitous API? It's free and open.
- pjmlp 3y agoIt is mostly from people that see UNIX everywhere, and are stuck in CLI applications mindset, or shipping Chrome disguised as application framework.
- oreally 3y agoYea no wonder the world is chock full of slow frameworks building on top on unnecessary cruft (ala chrome), and no one seems to understand the underlying tech anymore.
- LoganDark 3y ago> when 3D elements are part of the HTML standard. They already are. CSS Transforms can already be configured to happen in a full, proper 3D space. Every polygon of this demo is an HTML element, and yet it is fully and completely three-dimensional: https://keithclark.co.uk/labs/css-fps/ https://keithclark.co.uk/labs/css-fps/ One would just need a browser in VisionOS that supports displaying these elements in actual 3D rather than projected onto the 2D surface of the webpage...