Hello,
I’m finally sharing with you the project I’ve been doing for a long time.
It is a game engine extending Babylon.js capabilities.
Project repository:
Github.
Tutorials repo:
Github Tutorials
NPM package:
Website:
If you want to have a quick view of how it works, you can check Working with actors tutorial.
Key tips:
- Khanonjs adds a layer over Babylon to drive the logic of the application.
- It is transparent, the user have access to all of the babylon objects and all of them are freely manipulable, Khanon.js doesn’t rely on any of Babylon object’s properties (but for very concrete situations such 2D sprites, where they are built with a specific mesh and mterial).
- It adds some new features to Babylon objects, like lifecycle, actors, notifications, event interactions, particles integration with sprites, etc.
- It works indifferently with 2D sprites and 3D meshes. They all are integrated in the same system.
- It is built by decorators, the user doesn’t need to instantiate classes and store them in variables, everything is accesible from a global KJS class.
- It is modular, Khanon.js elements can be added, removed, or moved with a minimum impact.
- In the future I plan to add more features focused in the game development like scene maps to build games with a template that would fasten up the development, Babylon physics engine integration, etc.
As I mention in the documentation:
– Khanon.js wants the developer to focus in the game design. That’s the main goal of this project.
Currently it is in Alpha stage, there are some features I still have to add to reach the Beta:
- Deeper testing and debugging.
- Input events decorator.
- Sounds and music decorators.
- Project builder for debug and production optimized bundles.
The project is open source. Feedbacks, suggestions and contributions are welcome.
I’m still working to have a robust and comprehensive base, but it is close to the final shape.
I also want to thank everyone who helped me on the forum, Babylon community is great. Especially to @Evgeni_Popov and @SvenFrankson whose help have been crucial for the 2D model.
And congratulations to Babylon team for the huge job behind the Babylon engine and the big amount of features it has. That helped a lot!