# hybridclr_trial **Repository Path**: mengtest/hybridclr_trial ## Basic Information - **Project Name**: hybridclr_trial - **Description**: HybridCLR的示例项目 - **Primary Language**: C# - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 41 - **Created**: 2023-05-04 - **Last Updated**: 2023-05-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # HybridCLR 体验项目 一个示例热更新项目。本示例演示了热更新脚本挂载到热更新资源中,并且正常运行。 想了解更多,请加 QQ群: - HybridCLR c#热更新 开发交流群:651188171 - HybridCLR 新手群:428404198 ## 目录介绍 - Assets Unity项目目录 - Main AOT主包模块,对应常规项目的主项目,资源更新模块 - 剩下代码在默认的全局Assembly-Csharp.dll中,均为热更新脚本 ### HybridCLR相关Editor菜单介绍 - `HybridCLR/Settings` 打开HybridCLR相关设置 - `HybridCLR/Build` 一键打包相关快捷命令 - 其他菜单介绍请参见 [hybridclr_unity package](https://focus-creative-games.github.io/hybridclr/hybridclr_unity/) ## 体验热更新 ### 预备工作 - 安装适当的Unity版本,2019.4.x、2020.3.x、2021.3.x系列都可以,新手**强烈推荐**使用`2020.3.26+`或`2021.3.0+` 版本 - 参照 [安装HybridCLR](https://focus-creative-games.github.io/hybridclr/install/) 完成必要的安装操作 ### 打包 如果是Win平台,已经提供提供了快捷的菜单命令: - 菜单 HybridCLR/Build/Win64 ,运行完成后,会在Release_Win64目录下生成程序 - 运行Release_Win64/HybridCLRTrial.exe,会看到打出 hello, HybridCLR.prefab 注意,如果你使用最新版本的vs,有可能遇到 遇到 `xxxx\il2cpp\libil2cpp\utils\Il2CppHashMap.h(71): error C2039: 'hash_compare': is not a member of 'stdext'` 编译错误。这是.net 7发布后最新版本vs改动打破了一些向后兼容性引起。详细解决办法请查看[常见错误](https://focus-creative-games.github.io/hybridclr/common_errors/)。 如果是其他平台: - 如果是WebGL平台,由于示例中使用的BetterStreamingAssets不支持WebGL,所以请将LoadDll中加载资源代码换成WebRequest。其他平台无需修改。 - 运行菜单 `HybridCLR/Generate/All` 一键执行必要的生成操作 - 运行菜单 `HybridCLR/Build/BuildAssetsAndCopyToStreamingAssets` 打包热更新资源及dll - Build Settings里打包游戏 - 运行刚刚打包成功的游戏 ### 热更新测试 - 修改`Assets/HotUpdate/HotUpdateMain.cs`的代码,比如添加打印 "hello,world"。 - 运行菜单 `HybridCLR/Build/BuildAssetsAndCopyToStreamingAssets` 重新打包热更新资源及dll - 将`Assets/StreamingAssets`下的所有文件复制到你刚才打包的游戏的StreamingAssets目录 - 再将运行,屏幕上会打印"hello,world"。