UE4 编码规范

注释

规范:JavaDoc

参考:

https://docs.unrealengine.com/4.27/zh-CN/ProductionPipelines/DevelopmentSetup/CodingStandard/

https://www.jianshu.com/p/3c74c62fafae

(1) 多行注释:/*   */  或者   /**   */

(2)参数:@Param

(3)返回值:@Return

(4)注意:@Note

(4.1)@See

(5)警告:@warning

注意:

(1)关键字大小写不敏感;

(2)注释内不能有空行;

编译时断言:

static_assert

覆盖与完成

override

final

auto

适用情况:

(1)匿名函数与变量绑定:需要将匿名函数与变量绑定时;因为代码无法表示匿名函数类型;

(2)复杂迭代器:迭代器遍历复杂集合,影响可读性时;

(3)不清晰模板类型:无法清楚识别表达式的模板代码中适用。

强类型化列举

(1)大小可任意:列举属性可为任何大小,而非仅为字节大小;

(2)ENUM_CLASS_FLAGS(自动定义所有按位运算符):标志的列举类可以利用 ENUM_CLASS_FLAGS(EnumType) 宏自动定义所有按位运算符:

enum class EFlags

{

    None = 0x00,

    Flag1 = 0x01,

    Flag2 = 0x02,

    Flag3 = 0x04

}

ENUM_CLASS_FLAGS(EFlags)

(2.1)空枚举(用于比较判断):所有标签列举应含有名为 空 的列举器,并将其设为0以进行对比(语言限制)

if ((Flags & EFlags::Flag1) != EFlags::None)

命名空间

(1)UnrealHeaderTool不支持命名空间,所以命名空间不应在定义 UCLASSes、`USTRUCTs`等时使用。

(2)宏无法存在于命名空间中,但应使用 UE_ 作为前缀,例如 UE_LOG。

物理依赖性

引用直接定义头文件;

API设计指导方针

(1)参数:枚举优于bool;(强类型化列举);

退出游戏

UKismetSystemLibrary::QuitGame(this, nullptr, EQuitPreference::Quit);

stat命令说明:

Stat Commands

https://docs.unrealengine.com/latest/INT/Engine/Performance/StatCommands/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
UE4是一款非常流行的游戏引擎,用于开发视频游戏和虚拟现实应用程序。为了更好地管理和组织UE4工程文件,我们需要遵守以下规范: 1. 文件组织结构:首先,我们需要根据项目的不同需求来合理组织和管理工程文件。可以根据功能模块或者资源类型来划分文件夹,例如"Blueprints"、"Materials"、"Textures"等。 2. 命名规范:为了方便识别和查找,我们应该使用有意义和一致的命名规范。对于蓝图、材质、纹理等资源,我们可以使用英文单词或者缩写,并使用下划线或者驼峰命名法。 3. 版本控制:UE4工程文件应该使用版本控制系统(如Git)进行管理,以便于团队成员之间的协作和追踪变更。每次修改都应该有明确的提交信息,以便于其他人了解这次变更的目的和内容。 4. 文件备份:除了版本控制,我们还应该定期备份工程文件和资源。这可以防止意外丢失或者损坏文件,并提供一种还原到之前版本的能力。 5. 文件命名约定:UE4工程文件以及资源应该具备清晰的命名约定,以便于快速识别和查找。对于蓝图类资源,可以使用有表达性的名字,如:PlayerCharacterBlueprint,而不是简单的PCBP。 6. 优化资源和无用文件:及时删除无用和不必要的文件,减少项目大小。优化资源文件的大小和格式,例如压缩纹理、合并模型、过滤无效材质等,以提高项目的效率和性能。 7. 记录和文档化:及时记录重要决策和修改,并撰写有效的文档。这些文档可以包括工程的整体结构和文件组织方式,用法和规范,以及遇到的常见问题和解决方案。 通过遵守以上规范,我们可以更好地管理UE4工程文件,提高团队协作效率,减少问题和冲突,同时保证项目的整洁和可维护性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值