Closed ammein closed 10 months ago
Oh wow! Thank you so much @ammein ! this is wonderful. This means once pushed to npm regular JS + threeJs projects will still be supported in the same way? Excuse my ignorance respect to Web development
Absolutely! No breaking changes at all! They can use manually as they used to from V1 release. Only additional method in GlslPipeline class called:
new GlslPipeline(renderer, uniforms, options)
so that developer can pass on Shader Material options such as wireframe:true
to enable wireframe shader view on canvas. For uniforms
and options
argument, I maintain on keeping them optional argument.dispose()
To dispose all texture, renderTargets & material useful in react environments.branchMaterial(name)
can add either single string or an array of string. Useful for multiple defined conditions.I already created changeset initializer using command changeset init
. So you will release the package using changeset/cli commands:
# Build the package first
yarn build
# For contributor, run
yarn changeset
# For maintainers release package
yarn changeset version
# For maintainers, contributors and owners to release package
yarn changeset publish
Side Note: There are some grammars and docs that I need to fix. Later i will push the last code to fix all copywriting and adjust types-helper code.
Aren't you excited?! I myself can't wait to use this on my project! π₯³
You can explore more on my forked repo for this pull request: glsl-pipeline-react
Yes I am! This is truly wonderful! Thank you so much. This will allow to use glsl-pipeline in so many project! You really have taken things project to the next level. Incredible work architecting the multiple release and examples too.
@ammein I took a look to the code. Fantastic job! I get it now (or at least I think I do, hehehe) this is massive upgrade!
I love the fact that you manage to bring support for both TypeScript and React without sacrificing support for vanilla JS for dinosaur like me : ) . Thank you! This will make things better for a lot of people.
I added a couple of comments, some propose some minor things. Once that's in I can merge, and then I will follow through your instructions on yarn
to publish a new npm version. I might have questions at that point.
Again thanks you!
All done! You can merge safely now @patriciogonzalezvivo π₯³
Changelog:
Troubleshooting
section in CONTRIBUTING.md
.glsl-pipeline-react.tsx
on useEffect that causes infinite loop re-render. Remove some dependency arrays that are causing the re-render and memory leaks. Now it is stable β€οΈoptions
. View and test the example package in examples/react-ts/typescript_shader_options
.Fantastic, let's do it <3 Thank you!
@ammein yarn changeset
doesn't allow me to do glsl-pipeline
, what am I doing wrong?
Ahh, I already did glsl-pipeline
for you firsthand. You can just simply do yarn changeset publish
for now. In future, if you want to publish again, you will need to do the yarn changeset
first ππ»π Sorry for helping firsthand that confuses you @patriciogonzalezvivo
Awesome! Just publish works like a charm. Thank you so much!
I made a monorepo package on easy to just publish one npm package but can import different usage types such as
React
,Javascript
andTypescript
as well! This can help all react-three-fiber coders useGlslPipeline
immediately!!!!CHANGELOG:
npm link
.manypkg
that can check monorepo status.README.md
&LICENSE.md
due to that files located on inner directories.README.md
file for easy instructions on what to do when install the package.changesets/cli
on easy publish monorepo package by simply run simple commands. Please checkCONTRIBUTING.md
file on how does the package & publishing works.react
orvanilla
packages (TODO: Add more Typescript examples)FUNDING.yml
to have sponsor button available on this github repo.Please refer to
/package/CONTRIBUTING.md
file to know about this new monorepo style & how is it going to publish. You can reach me anytime to work on this together. π