I maintain the awesome-babylonjs list on GitHub. One thing I noticed was that a lot of really good projects don’t have deployed URLs. With Heroku free tier and pixelcodr down, the problem has become even worse. Today, I’m starting babylonjs-archive to give promising but abandoned projects a home.
If you know of an old but interesting project, feel free to recommend it.
Some rules for consideration:
No deployed URLs - This is the whole point of the project. If there’s a really old and unmaintained project that you like, you are more than welcome to fork it and either push the changes back or submit a PR to awesome-babylonjs pointing to your fork, but babylonjs-archive is for projects that aren’t currently playable.
Games only - There are more than enough playground demos out there. Only real games that provide real fun and educational value are being considered at this time.
Only two devDependencies: typescript and vite - This one will need to be changed once I decide how to handle multiplayer games, but for now, all projects must be rewritten to use vite. Vite was chosen because it doesn’t need a configuration file. Since projects are not tied to the build tool, that maximizes reusability. It also means less maintenance effort since there are fewer dependencies and security alerts.
Use modern TypeScript and Babylon.js - Educational value is a key point. As such, all projects under babylonjs-archive should be rewritten to use modern TypeScript and ESM.
This is still just getting started, so there may be significant changes. If you’re interested in joining the organization on GitHub, you’re more than welcome to send me a message.
The Babylon.js community has always been incredibly helpful. If you’d like to join this effort or even have a simple suggestion on how to make things better, I’m always open. Thanks again to all the awesome Babylon.js developers and users for making this possible.
They don’t have to be right now. I’m saying they have to be converted before being hosted. None of the three existing projects followed those rules when I forked them.
I’d like to appeal to the Babylon community for help. There are two projects I’m having trouble with: block and roll-a-ball. Despite keeping almost all of the original code and only adding types, they both have bugs from simply updating to a newer version of Babylon.
These bugs aren’t due to any changes in the code; just from using a newer version of Babylon. I’d really, really appreciate it if anyone has any suggestions for how to fix either project.
Could be but I’m honestly not sure. The fact that the ball bounces (try cloning and running the original repo) before falling off makes me think the platform just somehow got turned 90 degrees.
I ran into some problems trying to keep the code clean because nested classes use keys. I ended up just using a global var to store keys up/down, but it gave me an idea: would Babylon benefit from the Producer pattern? If it was observable, it might help with things like global developer options (debugMode, godMode, textColor) and status values (paused, loading, isGameOver).
Wow. That’s a bold initiative . I guess you know you’re getting yourself into some trouble with this, right?
I don’t have the time (nor probably the skills ) to help… All I can say is “Let the force be with you”