
Show HN: React WebGL component: 45 3D formats viewer.Should I industrialize it? - rufus31415
https://rufus31415.github.io/sandbox/3d-viewer/
======
billconan
I notice that you are using unity in browser. How good is it comparing to
babylon.js?

~~~
yodon
Not the OP, but having used Babylon.JS it works fine for simple things but the
codebase is a disaster, particularly anything physics-related. It's clear the
architects and devs had never worked on a serious professional engine before
starting working on it because the codebase is riddled with rookie game dev
mistakes. The biggest is a complete failure to understand the importance of
dimensions and units in the camera and character movement code and physics
systems. Distances are added to velocities, directions are used as
accelerations, time is used as dimensionless factor, if you've ever done
serious Physics coding what you find in the codebase is terrifying. There is
no way to make the system frame-rate independent as a result because what
you're really doing when you garble units like this is making assumptions that
the frame rate is constant so time and inverse-time factors can be ignored
(hello, 1990's calling! We want our bugs back!). Once this kind of stuff gets
embedded in a codebase it's very hard to take out on a piece by piece basis
because all the math in your architecture ends up being a hack that happens to
collectively mostly work. As you start trying to remove it, the hack stops
being mostly self-supporting and starts breaking everywhere until you complete
the fix, but there is no way to know where all the flaws are without an
exhaustive single-pass code review of the entire codebase by a serious skilled
and experienced dev or devs, which is unlikely to happen (particularly when
the core mantra of project leadership is "100% backwards compatibility
always!" which is a great concept until you find something you really screwed
up originally and now you're stuck with it for eternity).

Huge kudos to the team for getting bought by Microsoft. Yes I'd use it again
on another very small "show a model but don't need any serious gameplay"
project but I'd be very scared of anything where I was intending to invest
more than a tiny amount of coding time in the project because the
architectural and implementation failings will balloon your coding time
dangerously.

~~~
billconan
I'm looking for a solution to an online furniture/home configurator. As much
as I want to use unity or unreal, I'm worried they are too heavy for the web.
Previously I have tried some unity online demo links. Most of them are not
loadable, and a few loadable ones take a long time to load. This makes me
hesitate.

~~~
yodon
This is not a casual product to start on. Getting access to a large enough
supply of high quality source models and building a pipeline to convert and
track and deliver them is far from trivial. The hard part of building IKEA's
3D kitchen design app isn't the 3D rendering, it's having the 3D models and
having the data to configure the models.

------
helltone
What libraries are you using for reading all these formats?

~~~
rufus31415
Assimp, TriLib and some Unity native features

