Hacker News new | ask | show | jobs
by iamleppert 3468 days ago
So, where is all the real work being done?

Oh, that's right, by THREE.js inside the normal WebGL API.

This is just a fancy way to execute a banal-ly simple 3D scene that takes a single parameter - what text to show. It doesn't do much and I don't see any useful abstractions for the usual 3D primitives and doesn't meet the requirements of 3D programming in general.

5 comments

Well you've obviously downloaded the code, fully immersed yourself in it's architecture and anticipated it's future limitations.

Or maybe you just skimmed the blog post in 30 seconds and decided to be negative for the sake of it?

From reading some of the other replies to you, there is an interesting point to be made about how state is managed in this and whether it has any of the same architectural underpinnings of react.js or react native. But you didn't bother to make that point and ended up just sounding grumpy and disinterested. I've read several people recently say they avoid reading HN because of this kind of snark and others say it's made them feel like they wasted their time building something.

Oh come on, read the rest of the blog post.

It's clearly doing more than you are implying it is.

From what I can see it looks like it's giving you a react-looking way of managing objects, views, and "stuff" for a VR application. It is working with a lot of other things to do some of the heavy lifting rendering wise, but that doesn't mean you can just shrug off the work that's going into this as not "real".

Besides, they are calling it "pre-alpha". Complaining that it's not doing much before it's much more than a name seems overly negative for no reason.

Yeah, I played with react-aframe and a couple other webvr experiments over the summer. A huge benefit of virtual dom in web dev is immutability and programming with immutable state. But all these experimental libraries are backed by THREE.js which means your state is done with traditional imperative math primitives. Just composing a scene in React is not very interesting because the real fun is in interacting with the state of all the objects, for example coding physics. So in the end it does not feel like React. Though Arcadia (experimental Unity engine adapter for Clojure, a functional programming language) is onto a way to bridge these imperative and functional worlds, the fundamental abstraction of Arcadia is to dehydrate a fat object instance into immutable data, then you can program with immutable data, and then hydrate the data back into the fat object instance (which is optimized for use with Unity and the underlying imperative hardware). E.g. https://github.com/arcadia-unity/Arcadia/blob/6105770a780194...

Here are some related notes i dumped on reddit in April 2016 maybe helpful, about doing VR from Clojure: https://www.reddit.com/r/Clojure/comments/4sgjhz/new_clojuri...

Why would you want immutable state for any kind of simulation? It seems like you'd just be adding a whole bunch of overhead for no real gain.
It uses the declarative syntax of React to compose views. The benefit is the common abstraction which will allow people familiar with React to quickly get something running.

Why the negativity?

But it has React word in it so it must be great.