Refactor to CLI+API, typescript, and more#286
Open
rosskevin wants to merge 196 commits intopmndrs:masterfrom
Open
Refactor to CLI+API, typescript, and more#286rosskevin wants to merge 196 commits intopmndrs:masterfrom
rosskevin wants to merge 196 commits intopmndrs:masterfrom
Conversation
…mpty leaf nodes The code changes introduce two new options to the CLI tool: - `--pruneKeepAttributes`: Determines whether to keep unused vertex attributes, such as UVs without an assigned texture. - `--pruneKeepLeaves`: Determines whether to keep empty leaf nodes. These options provide more control over the pruning process, allowing users to optimize the resulting glTF files based on their specific requirements.
…nto alpha-typescript
…e I think we can import these, so try that before continuing on these
Author
|
For watchers, I updated the original text, but: Temporary fork published: https://github.com/rosskevin/gltfjsx I hope this is a temporary package and #286 is accepted, but I've got to move on and start using it in a production/published environment. |
…er may want (sync)
Member
|
Hi @rosskevin! Awesome work here, thank you! I'm in favor of the direction. But I'm only an occasional contributor on this repository, and so I think we'll need @drcmda to sign off on the plan. It is a pretty large PR, so I'll wait to do a deeper review until getting some signal one way or the other. |
…tional props (sync)
…api reuse isMatchIncludingAncestors (sync)
|
i don't know if the original maintainer plans to revisit this project anytime soon considering the last commit is over 2 years ago. should we move forward with this PR? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Temporary fork published
Temporary fork published: https://github.com/rosskevin/gltfjsx
I hope this is a temporary package and this PR is accepted, but I've got to move on and start using it in a production/published environment.
Goal
Included
tsupconfigautofor automatic releases (NEED a committer to work with me or commit access to complete setup)ts-morphfor AST access or string building, whichever is easiest. API consumer can direct access and modify the AST. Allows for easytsx | jsxstringification.node-three-gltftests (just the start, but it's a start!)nodenext, so this is an ESM build with top-level await for node 16+nodesin the typescript interfaceflattenoptimation exposed that defaults to true (existing behavior) but can be turned off via API or CLI (this can unexpectedly remove named node references)exposePropsoption in generation API, allowing for generating component props that propagate toObject3Done to many jsx properties e.g.shadows -> [castShadow, receiveShadow]with optionalmatcherfn.Motivation
We have three CAD models that have continuous development. We are building online configurators, and we effectively need a way to customize
gltfjsxto instrument the code with our additions in a continuous integration way.Testing
exposeProps.TL;DR
I need this, and I spent a lot of time on it. I'll be moving forward with it regardless, but I think it belongs here. I hope to have this PR reconciled and merged so that the entire community can collaborate.
Samples
GLTF r3f
Draco instanceall r3f
Closes/supercedes PRs
This closes the majority of open PRs through fixes or through reuse of external loaders that are maintained:
README.md& Organizing Imports #189Closes issues
This PR allows-for/solves/obsoletes/no longer present the following issues: