webzen est un moteur de jeu Go qui cible WebAssembly, vous permettant de créer des applications Web avec Go. Il vous aide à créer vos jeux facilement et rapidement. Ce projet exploite syscall/js
pour interagir avec le runtime JavaScript dans le navigateur.
Veuillez noter que webzen fait actuellement l'objet d'une maintenance élevée et n'est pas prêt pour la production. Le projet est activement développé et amélioré, c'est pourquoi seule une branche
dev
est disponible. Il est actuellement en version bêta
webzen n'a besoin de rien sauf d'une version Go supérieure à 1.18. Aucun compilateur C ou quoi que ce soit n'est nécessaire, mais nous recommandons à wasmserve d'exécuter rapidement votre code.
webzen est un package go ordinaire, vous pouvez donc l'obtenir en utilisant cette commande :
go get github.com/dimkauzh/ webzen @latest
Le package est également disponible sur pkg.go.dev.
Pour exécuter l'exemple fourni dans ce référentiel, procédez comme suit :
git clone github.com/dimkauzh/ webzen .git
cd webzen
Tout d’abord, assurez-vous que Go est installé, deuxièmement, exécutez make install pour installer tout ce dont vous avez besoin :
make setup
make example
Ouvrez votre navigateur Web et accédez à http://localhost:8080 pour voir l'exemple en action.
Pour créer une application WebAssembly prête pour la production avec webzen , procédez comme suit :
Compilez votre code Go sur WebAssembly à l'aide des indicateurs GOOS=js et GOARCH=wasm. Remplacez build_path/file_name.wasm et file_path/file_name.go par le chemin du fichier de sortie et le fichier source souhaités, respectivement :
GOOS=js GOARCH=wasm go build -o build_path/file_name.wasm file_path/file_name.go
Vous pouvez ensuite inclure le fichier .wasm généré dans votre application Web et le charger à l'aide de JavaScript.
N'hésitez pas à explorer l'exemple fourni dans ce référentiel pour mieux comprendre le fonctionnement webzen et comment vous pouvez créer vos propres applications Web basées sur Go.
La documentation de webzen est disponible sur https://github.com/dimkauzh/webzen/wiki
Ce projet est sous licence GPLv3 - voir le fichier LICENSE pour plus de détails.