Cocos Creator
压缩引擎内部属性 
为了让用户能够进一步减少游戏包体,Cocos 引擎团队在 3.8.6 版本开始提供引擎内部属性压缩功能,该功能可以对引擎 TS 代码中的属性进行压缩,在不损失游戏性能的前提下有效减少游戏包体。
注意:目前此功能暂不支持原生平台。
构建时开启引擎内部属性压缩 

生成压缩配置 
在构建时会在项目根目录生成 engine-mangle-config.json 文件。用户如果想要快速生成此配置文件,可以先进行一次构建,等项目根目录下生成配置文件后再中断构建任务即可。
压缩配置字段 
此功能默认对引擎 TS 代码中的 private 类型属性进行压缩,如果需要压缩 public 和 protected 类型的属性,需要在配置文件中进行相应设置。
| 字段 | 功能说明 | 
|---|---|
| mangleProtected | 是否压缩 protected 类型的属性(默认为 false) | 
| mangleList | 添加需要压缩的引擎属性 | 
| dontMangleList | 添加不需要压缩的引擎属性 | 
配置示例 
"Profiler._meshRenderer" 为自定义添加的属性,其余均为默认压缩配置。 
json
{
    "COMMON": {
        "mangleProtected": false,
        "mangleList": [
            "UITransform._sortSiblings",
            "UITransform._cleanChangeMap",
            "Node._findComponents",
            "Node._findChildComponent",
            "Node._findChildComponents",
            "Node.idGenerator",
            "Node._stacks",
            "Node._stackId",
            "Node._setScene",
            "EffectAsset._layoutValid",
            "EffectAsset._effects",
            "ReflectionProbe.DEFAULT_CUBE_SIZE",
            "ReflectionProbe.DEFAULT_PLANER_SIZE",
            "WebGLDeviceManager.setInstance",
            "WebGL2DeviceManager.setInstance",
            "CanvasPool",
            
        ],
        "dontMangleList": [
            "Component",
            "Profiler._meshRenderer"
        ]
    },
    "MINIGAME": {
        "extends": "COMMON",
        "mangleList": [],
        "dontMangleList": []
    },
    "WECHAT": {
        "extends": "MINIGAME",
        "mangleList": [],
        "dontMangleList": []
    }
}注意事项 
开启此功能并启用调试模式打包时,会少量增加 debug 包的体积。
