UnrealCSharp
<p>[TOC]</p>
<table>
<thead>
<tr>
<th>作者</th>
<th>陈铭</th>
</tr>
</thead>
<tbody>
<tr>
<td>修订</td>
<td>QFord</td>
</tr>
<tr>
<td>更新日期</td>
<td>2024-8-5</td>
</tr>
</tbody>
</table>
<h1>插件简介</h1>
<p>开发文档:<a href="https://note.youdao.com/s/8ITvMYXM">https://note.youdao.com/s/8ITvMYXM</a>
简介:<a href="https://docs.qq.com/slide/DTGtWYlVaZVZYRHpE">https://docs.qq.com/slide/DTGtWYlVaZVZYRHpE</a>
仓库:<a href="https://github.com/crazytuzi/UnrealCSharp">https://github.com/crazytuzi/UnrealCSharp</a>
测试用例:<a href="https://w.101.com/qQvqme">https://w.101.com/qQvqme</a>
Demo:<a href="https://github.com/crazytuzi/StackOBot">https://github.com/crazytuzi/StackOBot</a></p>
<h1>兼容性</h1>
<p>运行平台:Windows / macOS / Linux / Android / IOS
引擎版本:Unreal Engine 5.0 - Unreal Engine 5.4</p>
<h1>功能简介</h1>
<ul>
<li>支持全部的反射类型,自动生成C#代码</li>
<li>能够静态导出各种数据类型和函数</li>
<li>拥有强大的动态类特性,可以通过C#直接生成UClass,UInterface,UStruct和UEnum,并且不需要蓝图载体</li>
<li>支持跨平台</li>
<li>简单方便的代码调试</li>
<li>能够通过Pak进行C#热更新</li>
<li>编辑器下,能够热重载C#变更</li>
</ul>
<h1>使用限制(2024-7-9)</h1>
<ul>
<li>不支持直接使用泛型的接口</li>
<li>限制纯C#内容,其他跟Unity相关的基本不支持</li>
</ul>
<h1>集成指南</h1>
<p>1、确保 .Net SDK 已经升级到 .net8
[2024-6-24] cmd查看命令:</p>
<ul>
<li>dotnet --version</li>
<li>dotnet --list-sdks
> [.NET 下载(Linux、macOS 和 Windows) (microsoft.com)](<a href="https://dotnet.microsoft.com/zh-cn/download/dotnet">https://dotnet.microsoft.com/zh-cn/download/dotnet</a> ".NET 下载(Linux、macOS 和 Windows) (microsoft.com)")</li>
</ul>
<p><strong>【重要-QFord 2024-7-15】确保环境变量设置中,系统和当前用户的都设置</strong>
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=f0c597c0d668d023b393648f829c4eae&amp;file=file.png" alt="" /></p>
<p>2、删除 Script 目录(如果有的话),删除Plugins/UnrealCSharp下的所有文件</p>
<p>3、PULL代码</p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=1178a5ba51582a13e866b9a502f43fad&amp;file=file.png" alt="" />
【报错处理-错误如下图所示】
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=3cde4ffb094b0f2d5041debb5e3cb810&amp;file=file.png" alt="" />
<strong>解决办法:</strong>
陈铭(698765) 2024/6/17 17:31:04
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=2475ba04dd92d7e9c5bb01be45855e21&amp;file=file.png" alt="" />
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=76b0fda5e1840a5463db1444c781e1ed&amp;file=file.png" alt="" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=c13eb752c2a3cd2e140d19b5043a912b&amp;file=file.png" alt="" />
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=ff7ee93f00d2f8344eb9c3990d45a7c6&amp;file=file.png" alt="" />
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=cda1959ec0d70026b358854a6d460bb7&amp;file=file.png" alt="" />
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=4ea5bf0b49a5c33f7fe04d55d29b78d1&amp;file=file.png" alt="" />
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=a7f117ff9a7ec69fb7591c483472273e&amp;file=file.png" alt="" />
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=6d92c510816beb4c7b831949c1c6f069&amp;file=file.png" alt="" />
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=0f5e18c97d4e3777de118a24623c6b31&amp;file=file.png" alt="" />
> <strong>重要:</strong>UnrealCSharp重新生成代码后,上述的Scrip.sln就需要Rebuild,否则可能出现错误,比如提示放在场景中的蓝图错误。</p>
<h1>目录结构</h1>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=eeab78b57238421ae70addc5e517218a&amp;file=file.png" alt="" /></p>
<h1>更新指南-2024-7-16</h1>
<p>子模块的目录应该使用master分支并到其目录下pull,<strong>使用pull来拉取最新版本,使用更新子模是无效的,如下图所示:</strong>
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=da4ff5af72d6552169911dac9d0ba3e5&amp;file=file.png" alt="" /></p>
<h1>错误处理-QFord</h1>
<p>2024-7-16:cs脚本编译错误
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=7052aae3a4859a819df99119917267bd&amp;file=file.png" alt="" />
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=00da45ddb158e08d616f8064dc3894ca&amp;file=file.png" alt="" />
解决方案:报错的proxy文件夹删了,重新GenerateCode吧</p>