Skip to content

unity online 2020 unity service

landon edited this page Nov 19, 2020 · 1 revision

Unity 性能优化及企业服务介绍

张黎明 大中华区技术总监 Unity

  • 大纲:Project Review、UPR、Unity企业服务

  • Project Review

    流程 现场支持

    • 项目沟通

    • 资源导入检查

    • Unity Profiler

    • Unity Memory Profiler

    • XCode Time Profiler

    • XCode Allocation

    • XCode GPU Capture Frame

    常见问题类型

    • 美术资源规范
    • CPU时间消耗(脚本耗时)
    • GPU时间消耗(Drawcall)
    • Mono GC产生的性能问题
    • 内存泄露

    导入设置

    • Model Import Setting:Read/Write Enabled
    • FBX Import Setting:Animation Type Generic -> None
    • Texture Import Setting:Generate Mipmaps(3D/2D)
    • Audio Import Setting:ios -> mp3,android -> vorbis(Force to Mono)
    • Animation Clip 60 fps -> 30fps

    Unity Profiler

    • 分析游戏卡顿,一帧 ,找到峰值,看到帧内所有函数消耗,排序
    • gc allocate,gc卡顿

    Unity Memory Profiler

    • 内存分布

    Instrument - Time Profiler

    • 硬件、操作系统提供的接口,如GPU,引擎无法拿到
    • CPU性能分析,选择时间范围内所有函数消耗排序

    Instrument - Allocation

    • 检测内存泄露,有哪些内存分配但没有释放

    Capture GPU Frame

    • 抓帧

    Android

    • Android Studio
    • Adreno Profiler
    • Mali Graphics Debugger
    • RenderDoc
  • UPR - Unity性能测试分析解决方案

    • 基于Unity Profiler的数据

    • 游戏玩的过程中的Profiler数据 -> 服务器端 -> UPR云端分析 -> 可视化

    • 开箱即用一站式工具套件

      运行时

      • Unity Profiler、Memory Profiler、Object Snapshot、Lua、GPU、Hardware、RenderDoc

      静态资源

      • Unity Asset Check、AssetBundle Redundancy Analysis、Static Code Analysis、Particle System Analysis
      • 脱离Unity Editor环境,不像传统插件需要导入再检查
    • 数据全面

      • 收集运行时Profiling数据,内存快照,对象快照,硬件,GPU,Lua,屏幕截图等各维度数据
      • 所有数据对其时间轴,统一显示在一张报表内
      • 关联运行时数据与静态资源,直观反应资源相关问题
    • 方便安全

      • 无需越狱或ROOT
      • 无需修改代码或集成SDK
      • 无需上传工程文件和游戏包
      • 测试人员可在几分钟内完成配置并开启测试
      • 测试完成后,可以立即查看报告
    • 报表强大

      • 支持任意区间的精准数据统计
      • 交互式数据可视化展示
      • 和Unity ID系统整合,组织下项目权限管理完备,报告易于分享
      • 灵活的数据对比(快照对比,区间对比等)
      • 多维度数据联动,可以查看任一时间点产生的所有数据
    • 专家建议

      • 从Unity技术专家的Project Review中提炼优化规则
      • 从各种类型的标杆游戏中提取推荐值
      • 不断扩充的专家知识库和游戏性能库
    • 稳定快速

      • UPR Desktop可支持长达数小时甚至十几小时的超长时间性能测试
      • 测试过程中数据实时上传,测试完成后可立即查看报告的大部分内容
    • 自动化友好

      • Desktop CLI搭配Open API,可轻松将UPR集成到自动化测试流程中
      • 推荐:每日开发过程中都进行性能测试,而不是要上线才做,性能问题越积累越多。对比不同天的性能数据差别,方便分析性能来源
    • 静态检测

      • Unity资源(Asset)检测

      • Asset Bundle冗余检测

      • 静态代码检测

        Project Auditor

      • 优势

        • 支持所有版本Unity
        • 无需依赖Unity Editor
        • 无需上传任何文件
        • 无需安装,绿色执行,检测速度快
        • 输出结果提供结构化数据
        • 上传检测结果到UPR网站,以更加清晰、直观的方式对结果进行分析
    • 全平台支持

      • UPR Desktop支持全平台性能测试
    • 专家服务

      • Unity专家报告解读
      • Unity专家一对一
    • 企业版

      • 私有部署、企业定制、自动化、二次开发、真人真机测试、远程报告解读
    • UPR相关资源

  • Unity企业支持

    • 引擎定制

      • 开放世界解决方案

        • HLOD + Terrain HLOD系统 LOD生成,合并远景内的静态模型
        • 体素化 Shadow Maps. Sparse Voxcl Octree保存阴影数据
        • 开放世界场景生成. Houdini + Unity Houdini培训(地形,道路,植被,桥梁,岩石生成)
        • 基于HLOD的流式加载 prefabs/textures/meshes
        • Occlusion Culling流式加载 使用Editor烘焙OC数据,并提供流式加载
        • Light Probe生成工具 自动摆放Light Probe
        • Light Probe流式加载 流式加载LIght Probes
        • 植被Indirect Draw 场景遍历,相机Culling使用GPU compute Shader加速 Instancing、Frustum culling使用GPU,Lod Calculation使用GPU
      • 分布式方案

        • 分布式资源导入方案
        • 分布式Assetbundle资源打包方案
        • 分布式il2cpp代码编译方案
      • 卡通渲染解决方案

      • And More

    • 技术支持

      线上问题解答

      驻场支持

      Bug专属修复

      游戏性能优化分析服务

      CODM(call of duty mobile. 使命召唤手游)技术支持内容 驻场 4人驻场4个月 2人远程方案开发

      引擎定制内容

      • Main Thread & Render Thread Overlay优化
      • Camera Culling多线程优化
      • JobSystem的并行运算使用率提升
      • Animator性能优化
      • Shader Profiler
    • 技术美术

  • Q & A

    • asset check自定义规则是否支持?目前upr暂不支持,企业版本可定制
    • profiler报告在upr官网在线查看
    • release版本不能通过upr抓帧,只能develop版本
    • 自定义数据报表展示是否支持?目前只面向企业客户支持自定义
    • 支持私有部署
    • 资源加密服务,一个是代码加密,assetbundle加密,中国版已经提供
    • upr线上免费试用
    • houdini 程序化生成
Clone this wiki locally