À propos du projet
HybridCLR est une solution de mise à jour à chaud native C# multiplateforme pour Unity. En étendant le runtime il2cpp et en introduisant un interpréteur à registres haute performance, elle transforme un runtime purement AOT en mode hybride AOT+Interpreter, réalisant le chargement dynamique d'assemblages au niveau le plus bas, et prenant en charge toutes les plateformes supportées par il2cpp, dont Android, iOS, consoles et WebGL.
Les caractéristiques principales incluent :
- Implémentation quasi complète de la spécification ECMA-335, seules très peu de fonctionnalités ne sont pas prises en charge
- Coût d'apprentissage nul : le code de mise à jour à chaud collabore de manière transparente avec le code AOT, avec prise en charge des génériques, de la réflexion, de l'héritage, etc., sans code spécial ni génération de code
- Prise en charge complète du multithreading (volatile, ThreadStatic, async Task, etc.)
- Compatibilité parfaite avec le flux de travail Unity : prise en charge de la mise à jour à chaud de MonoBehaviour, ScriptableObject et des technologies DOTS, avec instanciation correcte des scripts attachés aux ressources
- Interpréteur à registres haute performance, dont les indicateurs de performance surpassent largement les autres solutions
- Efficacité mémoire : les classes de mise à jour à chaud occupent la même mémoire que les classes C# ordinaires
- Technologie DHE (Differential Hybrid Execution) exclusive : les fonctions non modifiées s'exécutent en AOT, les fonctions modifiées s'exécutent via l'interpréteur, offrant des performances proches du natif
- Prise en charge du rechargement à chaud (déchargement d'assemblages à 100 %), de la correction à chaud (sans redémarrage) et du chiffrement de dll
- Prise en charge de MonoPInvokeCallback pour interagir avec des langages comme Lua/JS/Python
Toutes les versions LTS de Unity, de la 2019.4 à la 6000.x, sont prises en charge, ainsi que le Tuanjie Engine et la plateforme HarmonyOS. Des milliers de projets commerciaux l'ont adoptée, plus d'une centaine de jeux classés dans le top 500 du classement gratuit iOS l'utilisent, couvrant des genres tels que MMORPG, jeux de cartes intensifs et tower defense, et elle est largement utilisée par les principales entreprises de jeux chinoises.
Le projet est sous licence MIT et propose une documentation complète, un guide de démarrage rapide, des cas commerciaux et un support commercial. L'auteur walon est le fondateur de Code Philosophy et diplômé du département de physique de l'Université Tsinghua. Les projets connexes incluent LeanCLR (implémentation CLR multiplateforme légère), ZLua, ZenTS, Obfuz, etc.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.