虚拟实验室-Unreal 版本

虚拟实验室的Unreal 版本,第一个版本主要是以《探究通电螺线管外部的磁场分布》颗粒为例,设计和开发一个正式版本。


开发规范

<table> <thead> <tr> <th>作者</th> <th>QFord</th> </tr> </thead> <tbody> <tr> <td>创建人情</td> <td>2024-11-10</td> </tr> <tr> <td>更新日期</td> <td>2024-12-10</td> </tr> <tr> <td>备注</td> <td>此内容会根据需要迭代</td> </tr> <tr> <td>版本</td> <td>V1.3.2</td> </tr> </tbody> </table> <p>[TOC]</p> <h1>背景</h1> <p>2024-10-12 根据锐锋指示和讨论,主要规范规范目录结构,便于集成到第三方项目,特制定如下规范</p> <h1>UE 工程目录规范</h1> <p>Content ├─VLab │ │─LabResources │ │ │─Maps │ │ │ │─Level_1 │ │ │ │─Level_2 │ │ │ │─... │ ├─Coursewares │ │ │─Bird │ │ │ ├─BirdResources │ │ │─... ├─Script │ │─ElementResources │ │ ├─Commons │ │ ├─Elements │ │ │ │─JiuJingDengElement │ │ │ │─...</p> <p>&gt;1. VLab是应用工程的根目录, 除了特殊用途的Script目录,所有文件都在VLab目录下</p> <ol> <li>LabResources下放置关卡(场景)资源的目录,每个关卡的资源要放在其下新建独立目录,如Level_1 、 Level_2,<strong>而关卡文件放在Maps即可</strong>。</li> <li>Coursewares是颗粒的目录</li> <li><strong>器材规范(美术)</strong> Script是Unlua器材脚本的目录,<strong>器材资源</strong>也要求放在这个目录下(ElementResources是器材资源的根目录) 例如:JiuJingDengElement里面会有资源、配置和蓝图等所有资源。美术资源需要放在Res目录。完整器材目录如下: <img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=b34f577260025cd9632b90d97e6e619b&amp;amp;file=file.png" alt="" /> <strong>Res目录细节</strong>:<a href="https://mubu.com/doc/6pLIF86NK2J#m">https://mubu.com/doc/6pLIF86NK2J#m</a></li> </ol> <h1>编码规范</h1> <p>遵循下面的参考资料的<strong>UE5风格指南</strong>,如果和文本的规范冲突的,以本文规范为准。</p> <h2>要点摘要</h2> <p>1.1:对外暴露使用的类名应该带有前缀(UE框架内不适用采用namespace避免同名冲突),以免和其他插件或UE冲突。(2024-11-20)</p> <h2>插件规范</h2> <h3>0. 插件独立工程自测规范</h3> <p>&lt;font color=red&gt;<strong>自定义插件必须有自己的独立UE工程,提交前必须进行打包到需要支持的目标平台(比如PC端)进行自测通过后方可提交到git仓库。</strong>&lt;/font&gt; &gt; 因为在集成环境有众多的插件,在打包阶段的排查此类问题相对比较费劲,会阻塞版本发布,故要求插件方需提前完成打包问题处理。</p> <h3>1.自定义插件文件夹和插件命名</h3> <p>1.1:使用<strong>VLab</strong>前缀 1.2:使用<strong>驼峰法</strong>命名,不使用下划线 <strong>实例如下图所示:</strong> <img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=783c5c960af17e70795f19a63c27b8ed&amp;amp;file=file.png" alt="" /> 1.3:(建议)插件名称和文件夹名称保持一致 1.4:插件uplugin的DocsURL配置上该插件的开发文档链接、Category配置上插件的分类。</p> <h3>3.第三方插件</h3> <p>第三方插件直接放置在集成工程的Plugins文件夹下</p> <h1>资源规范</h1> <h2>蓝图规范</h2> <p><a href="https://github.com/thejinchao/ue5-style-guide?tab=readme-ov-file#anc-bp">https://github.com/thejinchao/ue5-style-guide?tab=readme-ov-file#anc-bp</a></p> <ol> <li>器材蓝图命名规范 BP_Code</li> </ol> <h2>关卡(Level)命名</h2> <p>示例:Level_ShiYanShi_1</p> <h2>器材规范</h2> <h2>化学表现规范</h2> <p>美术工程中化学表现统一放入<strong>Content\Third</strong> 文件夹下</p> <h3>液体表现规范</h3> <p>器材中 LiquidMesh 和 MaskMesh 命名 1.LiquidMesh 统一命名为 <strong>LiquidVolume</strong> MaskMesh 统一命名为 <strong>LiquidVolumeMask</strong> <img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=9d1322fc38845314d4c4d3d51ab0c551&amp;amp;file=file.png" alt="" /></p> <p>2.器材迁移时不要包含液体插件 <img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=02af59512cd455a9afa03bd3c6678702&amp;amp;file=file.png" alt="" /></p> <p>3.保证每个Third 下的子文件夹迁移时只包含自己 美术同学提交资源时,点一下迁移看看有没有满足这个条件。 <img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=b299c08a30e83148a1655c16ae82080b&amp;amp;file=file.png" alt="" /></p> <p>4.Third下每个子文件夹下 的资源保证是最小的干净资源(没有用到的资源都删掉)。</p> <h1>代码管理规范</h1> <p>[基于Gitlab的代码管理规范](<a href="https://www.kdocs.cn/l/cdgR3kwDWm8D">https://www.kdocs.cn/l/cdgR3kwDWm8D</a> &quot;基于Gitlab的代码管理规范&quot;)</p> <h1>参考资料</h1> <ol> <li>[UE5风格指南-英文原版](<a href="https://github.com/Allar/ue5-style-guide">https://github.com/Allar/ue5-style-guide</a> &quot;UE5风格指南&quot;)</li> <li>[UE5风格指南-中文翻译版](<a href="https://github.com/thejinchao/ue5-style-guide">https://github.com/thejinchao/ue5-style-guide</a> &quot;UE5风格指南-中文翻译版&quot;)</li> </ol>

页面列表

ITEM_HTML