Comments (7)
should be fixed! at least banana.gltf goes through. the draco thing for some reason still doesn't. but you can at least keep on working, the output structure between the two would be the same.
from gltfjsx.
the other error should be gone too. it kind of sucks, gltfloader doesn't work under node and im basically just ripping out all the pieces that crash. i don't need it to actually create buffers, i just need the structure from it - there's probably an easier way: @donmccurdy
from gltfjsx.
1.0.5: also fixed support for bones. it will add the root bone as a single raw primitive and wire up the skeleton of the skinnedmesh. it works ootb, here's an updated example (Stacy.js): https://codesandbox.io/s/r3f-bones-3i7iu
not 100% sure if that's the right way. previously it would put all the bones into proper jsx, but they wouldn't function. looks to me like skeleton is, once again, imperative. 🙈
const skeleton = new Skeleton(bones)
mesh.bind(skeleton)
that's a tragedy as it kills declarative usage.
from gltfjsx.
it kind of sucks, gltfloader doesn't work under node and im basically just ripping out all the pieces that crash.
I've hacked around the nodejs issues before, but it took hacks all the way down. Draco is the hardest part — and that link is outdated, in that regard — because it now uses Web Workers. Open to ideas on improving nodejs support.
Do you just need the JSON from the glTF file? Or the exact threejs object hierarchy that GLTFLoader would return?
from gltfjsx.
If the JSON is enough, I can share how to decode that from a .glb
easily.
If you need a full threejs hierarchy, which would be the same as the glTF JSON plus some added leaf nodes, I'm guessing mrdoob/three.js#18484 might help you out — write a plugin that "provides" all the buffers and textures with empty data, let the rest run normally.
from gltfjsx.
If the JSON is enough, I can share how to decode that from a .glb easily.
Specifically: https://github.com/donmccurdy/glTF-Transform/blob/c6fa67080f7863f4ed79560ab1b812ccd8a73fbe/packages/core/src/util.ts#L35-L65
from gltfjsx.
Do you just need the JSON from the glTF file? Or the exact threejs object hierarchy that GLTFLoader would return?
i think it would need to be the object hierarchy. i think relying on pure gltf would be the easiest when it comes to reading out, but emulating a basic threejs structure is probably going to be very hard.
the current workflow is based on the /bin directory in this repo, a fork of the loader and everything that ever wants to fetch requests for assets or create things that node can't is removed little by little. i think i oriented myself around the gist you posted, i saw it in the threejs discourse forum i believe. unfortunately i must have minimized it in the very beginning, very clever ... 🤭
from gltfjsx.
Related Issues (20)
- Prepass to de-duplicate object names at JSX generation time HOT 2
- Additional UV sets being removed with --transform, no option to make sure these are preserved HOT 1
- Wrong UV values HOT 1
- TypeError: fetch failed
- TypeError: objectInfluences is undefined HOT 5
- Application error: a client-side exception has occurred (see the browser console for more information). HOT 2
- Question: How can I allow users to change the node's surface colour HOT 1
- Model gets deformed when being converted HOT 1
- v6.2.12 - Cannot read properties of undefined (reading 'length') HOT 2
- stylelint fails with meow
- Typescript Errors in Web version and CLI using `--types` option HOT 3
- The instance all option generates code that doesn't work with animations. HOT 1
- new feature - skeleton programmatically HOT 1
- Uncaught TypeError: objectInfluences is undefined HOT 2
- Expose materials attributes/properties / Explode materials
- Using gltfjsx in Next.js - No "exports" main defined in /node_modules/@monogrid/gainmap-js/package.json
- Parsing input arbitrary three.js scene graph to component tree HOT 3
- How to rewrite gltfjsx generated jsx file to separate geometry and material HOT 1
- instruction for installation in documentation 😔❌ HOT 2
- Unit testing - gltfjsx created components
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gltfjsx.