Really impressive app! I'm not sure what I would use it for but definitely cool and impressive.
I built something similar a few years back. My thing doesn't do textures its essentially just icons, text or shapes that can be layered, colored or extruded in 3d space on a 2d design canvas. demo: https://sg.halbe.works/
I built it on Skia, three.js and my own layer algorithm.
socalgal2 18 hours ago [-]
> Tap the Add button below to get started
The only buttons are Objects, Stage, Camera, Get, Share
There is no "Add" button for me.
ges 17 hours ago [-]
Good catch. There was one before, just didn’t update this message yet!
fakedang 16 hours ago [-]
Click objects.
ges 3 hours ago [-]
Updated
lvncelot 8 hours ago [-]
Ha, that brings me back trying to make Fabric.js somehow usable for a 3D viewport at a startup I was working at a while ago. (We used esm.js instead of WASM for the 3d engine, to give you an idea)
It was a lot of wrangling and unexpected behavior, and we ultimately ended up implementing a more traditional 3d gizmo - though the application was also really only meant to be used at a desktop with a mouse instead of also supporting touch controls.
WhitneyLand 20 hours ago [-]
It looks like the UX freaks out when you try to do something like pinch zoom.
If you don’t intend to support two finger gestures, you should probably at least hook in and disable them so they don’t disrupt the experience.
ges 17 hours ago [-]
Yes
Bengalilol 9 hours ago [-]
I wasn't able to move the camera, am I missing something obvious?
kookamamie 11 hours ago [-]
It says it's "next gen" - how is that? Besides that, I think the UX could use some improvements - the landing page captions look glitched and the UI iconography looks "murky", for the lack of better word. Nice effort, though.
Flux159 19 hours ago [-]
This is pretty interesting - how has your experience been with R3F? I've built a small game level with it before and I'm wondering if I want to go all the way and build something larger.
Also, are you planning on making this open source at some point? Fabric is nice in that it manages 2D canvas objects for you & you can build things like an editor on top, in this case as a library what would you consider the primitives on top of Three objects are? Could it be used to make an editor for a 3d level?
DecoySalamander 6 hours ago [-]
It's great for organizing your scenes, and at least for me, it's far more readable than raw Three.js code. Unfortunately, games, especially real-time ones, don't map well to idiomatic React code. You might find yourself putting bits of game logic into various awkward places. Still, I don't think there's a better alternative for the web, except maybe Threlte if you're fine with a smaller ecosystem.
ges 19 hours ago [-]
I like the fact it allows you to write clean declarative code. Imperative becomes quickly messy imo.
I’d need to find a good api to make it open source. It’s a mini ecs system handling the object states atm.
I think the main advantage over vanilla threejs would be built-in user-friendly controls and opinionated common object types (think remote glb models, plane images, etc)
guigui 21 hours ago [-]
On the default white background, the control buttons (move, rotate, roll...) look disabled to me.
ges 33 minutes ago [-]
Fixed!
ges 17 hours ago [-]
Agreed. I’ve added the white background last minute because it looked better. But texts don’t look so good on it.
kube-system 21 hours ago [-]
Interesting, what are some use cases for something like this?
ges 31 minutes ago [-]
I’ve initially started building it for AR / face filters but figured out it could be nice to abstract the whole simple positioning / controls logic as a stand alone lib.
superconduct123 19 hours ago [-]
Aerospace industry, watermelon industry
ges 18 hours ago [-]
And sanitary industry
Eduard 21 hours ago [-]
two-finger input doesn't work on my Android Chrome: a previously placed banana just glitched around, then jumped out of viewport.
ges 18 hours ago [-]
Sorry for the banana. Yes two-finger gestures feel natural for zooming. I just didn’t implement them properly yet because i figured out there were cross browser issues with them on safari mobile. I’ll get something working.
hoppp 21 hours ago [-]
Cool. I put a poop on a rocket ship. Now what else can I do with it?
ges 18 hours ago [-]
Nothing else. You’ve reached the peak.
echelon 19 hours ago [-]
> Feel free to play with it and let me know what you think!
This could be cool. The 2D interface for manipulating 3D is pretty interesting. 3D tends to be hard for folks and put a lot of folks off of trying to use it creatively.
Turn this into a bigger creative canvas. Drop the crypto stuff.
Looks amazing.
I built something similar a few years back. My thing doesn't do textures its essentially just icons, text or shapes that can be layered, colored or extruded in 3d space on a 2d design canvas. demo: https://sg.halbe.works/
I built it on Skia, three.js and my own layer algorithm.
The only buttons are Objects, Stage, Camera, Get, Share
There is no "Add" button for me.
It was a lot of wrangling and unexpected behavior, and we ultimately ended up implementing a more traditional 3d gizmo - though the application was also really only meant to be used at a desktop with a mouse instead of also supporting touch controls.
If you don’t intend to support two finger gestures, you should probably at least hook in and disable them so they don’t disrupt the experience.
Also, are you planning on making this open source at some point? Fabric is nice in that it manages 2D canvas objects for you & you can build things like an editor on top, in this case as a library what would you consider the primitives on top of Three objects are? Could it be used to make an editor for a 3d level?
I’d need to find a good api to make it open source. It’s a mini ecs system handling the object states atm.
I think the main advantage over vanilla threejs would be built-in user-friendly controls and opinionated common object types (think remote glb models, plane images, etc)
This could be cool. The 2D interface for manipulating 3D is pretty interesting. 3D tends to be hard for folks and put a lot of folks off of trying to use it creatively.
Turn this into a bigger creative canvas. Drop the crypto stuff.