Still waiting for someone to develop a WebGl-based physics engine. Even the 2D ones are slow - every single one I've tried so far struggles even with a thousand simple boxes.
The right path seems to be a WebAssembly build of an actual C++ engine. That's pretty close to this, which uses ammo.js, a workerized emscripten/ASM.js build of Bullet.
I've been meaning to experiment with doing precisely this :/.
WebGL is enabled in Chrome by default. WhitestormJS is compiled with babel (and examples are too). I'll check if it works on safari in the nearest time. Thanks for report!
For ~dozen major versions now, Chrome should support WebGL by default. I do know, however, that there are a small number of graphics cards that are blacklisted and WebGL won't work on them (by default)
Hi Alex, I think we met at ISEF 2016 (if not mistaken), and it is great to see this project continuing to evolve and on display on the HN frontpage. Congratulations!
This is really amazing work, it is silky smooth, never dipping below 60fps on my system. Things like this are why I love computing. Keep up the great work.
Looks like it should have examples or demos. However the 'try it out link' leads to an empty playground (despite a peculiar hover effect showing exactly what I thought I'd find there).
Thanks for leading this. I can't wait to play with and hopefully integrate this into our project at http://itsme3d.com - it seems like Christmas has come early this year.
I do have some advice for you, though: you need to tell the story. In that story, you need to start with why.
While your GitHub README.md is better than the project's homepage, both currently fail to answer the most basic questions about Whitestorm.
- is this for me? am I the target audience?
- what is the reason this exists? what are some real use cases? is this an experiment, a hobby or something I'd use in production?
- how hard is this? what is the minimum viable amount of time/energy required to get started?
- one of my favorites... "what tool I use does this replace or improve?"
- is it ready today or should I come back later?
- what is the cost? (don't assume everyone "gets" open source)
More significantly, I believe that every project should start with the origin story. Who are you, what problem did you have, how did that turn out, how did things evolve to get to the iteration in front of me? Why was this problem so important to you? Make it personal. Use "I" and "my". Talk about your goals and ambitions. Don't use "we" or terminology that is designed to make you sound more legit. Software is designed by people and people make decisions based on shared values.
Make sure that your plugins are well documented. Make sure that your examples are plentiful. If you have time to write an example then you have time to write a few lines about what this particular example is showing me. Also, something nobody does but I wish that they would is to use comments to tell a story and mark off sections that differ from the boilerplate template and explain what you did to make it work.
The hardest part of launching and promoting an open-ended platform is that there's a tendency to tell people it can do "anything they can imagine". The problem is that they have no constraints on what's possible and most people are not intuitives so they only see things as they are instead of what they could be. You need to give them just enough lightbulb moments that they start to learn what's safe to imagine is possible with your software.
When you create a platform you have to give people a path to happiness and success that calms their reptile brain and gets them excited to be a hero. The burden of proof that they should trust your software for the long haul is on you.
31 comments
[ 1.4 ms ] story [ 118 ms ] threadI've been meaning to experiment with doing precisely this :/.
About WebAssembly - it is a future of Ammo.js/AmmoNext. We are planning also to make AmmoNext modular with wasm modules.
Can you contact me in discord chat(see the link on github readme page)?
I really think this is cool. I wish I could see it. Do I need to enable WebGL in Chrome manually?
We are just Three.js fans who want to make it better)
Looks like it should have examples or demos. However the 'try it out link' leads to an empty playground (despite a peculiar hover effect showing exactly what I thought I'd find there).
How did people find this link? https://whs-dev.surge.sh/examples
But if you mean things like spheres, boxes, tetrahedrons and others - you may write them manually, isn't it easy(?)
It's 50% chance that we will make an editor for it (cause it will be super easy with such API)
Thanks for leading this. I can't wait to play with and hopefully integrate this into our project at http://itsme3d.com - it seems like Christmas has come early this year.
I do have some advice for you, though: you need to tell the story. In that story, you need to start with why.
https://youtu.be/IPYeCltXpxw?t=15s
While your GitHub README.md is better than the project's homepage, both currently fail to answer the most basic questions about Whitestorm.
- is this for me? am I the target audience?
- what is the reason this exists? what are some real use cases? is this an experiment, a hobby or something I'd use in production?
- how hard is this? what is the minimum viable amount of time/energy required to get started?
- one of my favorites... "what tool I use does this replace or improve?"
- is it ready today or should I come back later?
- what is the cost? (don't assume everyone "gets" open source)
More significantly, I believe that every project should start with the origin story. Who are you, what problem did you have, how did that turn out, how did things evolve to get to the iteration in front of me? Why was this problem so important to you? Make it personal. Use "I" and "my". Talk about your goals and ambitions. Don't use "we" or terminology that is designed to make you sound more legit. Software is designed by people and people make decisions based on shared values.
Make sure that your plugins are well documented. Make sure that your examples are plentiful. If you have time to write an example then you have time to write a few lines about what this particular example is showing me. Also, something nobody does but I wish that they would is to use comments to tell a story and mark off sections that differ from the boilerplate template and explain what you did to make it work.
The hardest part of launching and promoting an open-ended platform is that there's a tendency to tell people it can do "anything they can imagine". The problem is that they have no constraints on what's possible and most people are not intuitives so they only see things as they are instead of what they could be. You need to give them just enough lightbulb moments that they start to learn what's safe to imagine is possible with your software.
When you create a platform you have to give people a path to happiness and success that calms their reptile brain and gets them excited to be a hero. The burden of proof that they should trust your software for the long haul is on you.
Keep up the great work.