À propos du projet

xLua est une solution d'interopérabilité entre Lua et C# open source de Tencent, conçue pour les runtimes C# tels que Unity, .NET et Mono, prenant en charge le déploiement sur toutes les plateformes : Android, iOS, Windows, Linux et macOS. Ses avancées majeures se concentrent sur trois aspects : à l'exécution, il peut remplacer les implémentations C# (méthodes, opérateurs, propriétés, événements, etc.) par des implémentations Lua, offrant une véritable capacité de hot-patch ; une optimisation GC remarquable, avec un transfert de structs et d'enums personnalisés entre Lua et C# sans allocation GC en C# ; et dans l'éditeur, aucune génération de code n'est requise, ce qui allège le processus de développement. L'installation est simple : il suffit de copier le répertoire Assets du package de distribution dans le projet Unity. Une documentation complète est fournie : tutoriels d'introduction, guide de configuration, FAQ, guide d'utilisation du hot-patch, extension de bibliothèques Lua tierces, documentation API et guide de développement secondaire du moteur de génération. Pour démarrer rapidement, trois lignes de code suffisent pour créer un LuaEnv et exécuter une chaîne Lua, avec prise en charge des appels de fonctions Lua depuis C# (via la liaison de délégués) et des appels d'API C# depuis Lua. Le hot-patch est le point fort principal : faible intrusivité, impact minimal sur l'exécution, et la logique Lua n'est exécutée qu'en cas de problème, ce qui le rend idéal pour une intégration transparente dans des projets existants. Douze exemples intégrés couvrent des scénarios pratiques : HelloWorld, écriture de MonoBehaviour, événements UI, collaboration orientée objet, évitement du GC, coopération avec les coroutines, synchronisation asynchrone, pratique du hot-patch, méthodes génériques, chargement de signatures, boxing RawObject, réécriture de types de valeurs complexes en Lua, et hot-patch async/await. Le support technique est fourni via un groupe QQ, avec une recommandation de consulter d'abord la FAQ pour résoudre plus de 90 % des problèmes courants.