网易首页 > 网易号 > 正文 申请入驻

全新Arm Mobile Studio for Unity软件包,增强移动端性能分析

0
分享至

Arm Mobile Studio是一套专门用于帮助移动游戏开发者管理并优化性能(具体针对 Arm CPU 和 Mali GPU 驱动的移动设备)的免费分析工具。可辅助识别和解决各种性能问题。如今,Mobile Stuidio 为 Unity 推出了全新的插件,让移动游戏的性能优化更加简单。

该插件支持将注解以简单的方式合并到项目中,然后在 Arm Mobile Studio 的StreamlinePerformance Advisor中显示。这些注释能提供详细的上下文,让你能查看游戏特定时间点发生的行为或事件,及其相应的后果。

比如,你可以在 Streamline 的时间轴上查看注解。下例中的标记标出了游戏中某一波敌人的生成时机:

通过给游戏运行轴加上开始与结束标记,Performance Advisor 便可以为每条轴单独生成分析报告。本例中就展示出了“Battle(战斗)”轴上的性能信息:

软件安装

Mobile Studio 支持 Unity 2018.4 LTS及以上版本。请使用 Unity Package Manager 安装软件:

打开 Unity 项目,选择Window > Package Manager打开窗口。

在 Package Manager 中,单击“+”图标,选择Add package from git URL...

在框中输入下方 URL,然后点击Add(添加)

https://github.com/ARM-software/mobile-studio-integration-for-unity.git

软件将被自动导入项目,在列表中列出:

Annotations(添加注解)

在安装启动软件后,我们看看各种注解的使用方式。

01 Marker(标记)

标记是位于 Streamline 时间轴顶部的简单注解。调用 Mobile Studio 库便能添加标记。例如:


private void Start()MobileStudio.Annotations.marker("Game Started");

你也可以传入 Color 参数,来设定 Streamline 上标记的颜色,例如:


MobileStudio.Annotations.marker("Game Started", Color.green);

02 Regions(运行段)

你能以一对“Region Start”和“Region End”标记来划定游戏中的分析区域。这些段落将包括在Performance Advisor报告的帧速率分析图上,并在报告末尾形成专门的分析图。

可以在感兴趣的段落上添加前缀为“Region Start”和“Region End”的标记,示例如下:


MobileStudio.Annotations.marker("Region Start Times Square");// Do workMobileStudio.Annotations.marker("Region End Times Square");

注意: 在分析 Unity 2021.2 及以上版本构建的应用程序时,Performance Advisor 无法从 Android 9 设备上记录帧数据。

03Channels(频道)

一段频道是在某个线程上的自定义事件时间轴。你可在创建好的频道中加入注解。类似标记,注解同样带有文本标签和颜色属性,但不同的是,注解可横跨一段时间范围。

要创建频道:


private MobileStudio.Annotations.Channel channel;private void Start()channel = new MobileStudio.Annotations.Channel("Spawner");Annotations can then be inserted into a channel:private void HandleNewWaveStartedEvent()channel.annotate("Spawning Wave", Color.red);private void HandleWaveCompleted(object sender, EventArgs e)channel.end();

在 Streamline 中选择 Core Map 视图,所有频道都将在 Unity Main 线程下显示:

04Custom Activity Maps(自定义活动图)

自定义活动图(CAM)是一组全局时间轴(不限于某个线程)。每张 CAM 都有自己的视窗、名称,一般位于 Streamline UI 的下方,由多条轨道组成,每条轨道会在 CAM 中显示各自的名称与轴。每次活动都会以预注册 job 的形式记录到轨道中。

要想新建轨道并将其添加到 CAM 中:


private MobileStudio.Annotations.CAM gameCAM;private MobileStudio.Annotations.CAM.CAMTrack waveTrack;private MobileStudio.Annotations.CAM.CAMTrack uiTrack;
private void Start()//Create the CAMgameCAM = new MobileStudio.Annotations.CAM("GameActivity");
// Add tracks to the CAMwaveTrack = gameCAM.createTrack("Wave Activity");uiTrack = gameCAM.createTrack("UI Activity");

在组建完 CAM 后,你可以用以下方法之一在轨道内注册一个任务(Job):第一种是在活动开始之际创建任务,在结束时同时结束任务(Job),流程与添加注解类似。详见下方:


private MobileStudio.Annotations.CAM.CAMJob waveJob;
private void HandleNewWaveStartedEvent()waveJob = waveTrack.makeJob("Spawning Wave", Color.red);private void HandleWaveCompleted(object sender, EventArgs e)waveJob.stop();

另一种方法是记录活动的开始和结束时间,随后再将其添加到轨道中:


UInt64 startTime = MobileStudio.Annotations.getTime();// Do workUInt64 endTime = MobileStudio.Annotations.getTime();uiTrack.registerJob("UI Active", Color.blue, startTime, endTime);

第二种方法的优点是 getTime() 方法不会占用过多 CPU 处理时间。它也可以从 Unity Job Scheduler 的 Job 中安全地调用。

你可以在 Streamline 的 CAM 中来查看所有已添加的轨道和 Job:

使用Streamline和Performance Advisor记录运行

在给游戏添加完注释后,你便能构建一个开发版,部署到设备上进行测试。你可以使用 Streamline 记录运行数据、生成 Performance Advisor 报告,报告中将包含所有的注释。下方视频将介绍整个过程:

在发行版中删除软件

你还可以编写预处理代码,将软件从发行版本中删除,来省去修改脚本的必要,避免代码出错:

01如果版本中尚未存在指明哪些脚本引用了 Mobile Studio API 的 Assembly Definition 文件,请创建一个。在Project View的目标文件夹下右击选择Create > Assembly Definition

02在 asmdef 文件中加入以下内容:

a. 在 Assembly Definition References 下,添加 MobileStudio.Runtime。

b. Version Defines 下,添加如下规则:

Set Resource to com.arm.mobile-studio

Set Define to MOBILE_STUDIO

Set Expression to 1.0.0

如果项目中装有 com.arm.mobile-studio 软件,且版本大于 1.0.0,Unity 会定义一个 MOBILE_STUDIO。

03在代码中,用 MOBILE_STUDIO 标注 Mobile Studio API:

#if MOBILE_STUDIO // Package usage #endif

新的 Mobile Studio 软件可帮助开发者充分利用 Arm Mobile Studio 工具,进一步洞察应用的性能表现,以达到进一步优化游戏的目的。 如果你尚未尝试过 Arm Mobile Studio 工具,软件完全免费,并带有详尽的入门指南。

Arm 和 Unity 将进一步加深合作,力求实现更为完善的移动端分析工具集成。

文中提及的相关链接:

[1] Arm Mobile Studio:

https://developer.arm.com/tools-and-software/graphics-and-gaming/arm-mobile-studio

[2] Mobile Studio Integration for Unity:

https://github.com/ARM-software/mobile-studio-integration-for-unity

[3] Arm Mobile Studio 入门指南:

https://developer.arm.com/tools-and-software/graphics-and-gaming/arm-mobile-studio/learn/get-started

[4] Arm Mobile Studio - Streamline:

https://developer.arm.com/tools-and-software/graphics-and-gaming/arm-mobile-studio/components/streamline-performance-analyzer

[5] Arm Mobile Studio - Performance Advisor:

https://developer.arm.com/tools-and-software/graphics-and-gaming/arm-mobile-studio/components/performance-advisor

Unity 官方微信

第一时间了解Unity引擎动向,学习最新开发技巧

每一个“在看”,都是我们前进的动力

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
金价上下乱跳!一金店老板娘1150元高位囤金割肉亏“1.5套房”,现在又满仓囤了1公斤多;有人“炒短线”,金条买了5天就卖掉

金价上下乱跳!一金店老板娘1150元高位囤金割肉亏“1.5套房”,现在又满仓囤了1公斤多;有人“炒短线”,金条买了5天就卖掉

每日经济新闻
2026-06-16 19:57:18
折叠屏做到这个程度,还想怎么进步?

折叠屏做到这个程度,还想怎么进步?

闪存猎手
2026-06-16 04:05:40
同学聚会,发现一个扎心的现实:年过40的女同学中,1/3没有工作,1/3做着低薪但没前途工作,剩下的1/3基本都在体制内

同学聚会,发现一个扎心的现实:年过40的女同学中,1/3没有工作,1/3做着低薪但没前途工作,剩下的1/3基本都在体制内

品读时刻
2026-06-13 09:03:28
FIFA世界杯|6月17日四场世界杯比赛前瞻预测(附有比分)

FIFA世界杯|6月17日四场世界杯比赛前瞻预测(附有比分)

刘哥谈体育
2026-06-16 14:02:49
“试探性”表态,万斯:如伊朗履行协议,可获得阿拉伯国家3000亿美元重建基金支持

“试探性”表态,万斯:如伊朗履行协议,可获得阿拉伯国家3000亿美元重建基金支持

环球网资讯
2026-06-16 08:45:22
青海海西州地震已致1死4伤

青海海西州地震已致1死4伤

界面新闻
2026-06-16 18:58:13
哈佛最新研究实锤:4种运动睾酮涨25% 男人越练越有劲儿 越有男人味

哈佛最新研究实锤:4种运动睾酮涨25% 男人越练越有劲儿 越有男人味

普陀动物世界
2026-06-16 17:18:46
伊朗最高领袖顾问警告将打击以色列

伊朗最高领袖顾问警告将打击以色列

财联社
2026-06-15 04:38:04
有没有人敢爆自己的瓜?网友:确定玩这么大吗?

有没有人敢爆自己的瓜?网友:确定玩这么大吗?

夜深爱杂谈
2026-02-18 20:55:58
为什么去过朝鲜回来就沉默的人,不是隐瞒,是真的说不出

为什么去过朝鲜回来就沉默的人,不是隐瞒,是真的说不出

老特有话说
2026-05-12 15:41:08
亚洲球队继续不败旅程,沙特1比1战平乌拉圭

亚洲球队继续不败旅程,沙特1比1战平乌拉圭

澎湃新闻
2026-06-16 08:08:28
帕公主守灵第三日,提帮功王子表现一言难尽,行为怪异,衣着失礼

帕公主守灵第三日,提帮功王子表现一言难尽,行为怪异,衣着失礼

乡野小珥
2026-06-17 04:07:05
2026款英菲尼迪QX80:大块头有大胃口,值不值?

2026款英菲尼迪QX80:大块头有大胃口,值不值?

野生运营
2026-06-16 00:31:41
享受阳光和沙滩,伦纳特-卡尔和女友在土耳其度假

享受阳光和沙滩,伦纳特-卡尔和女友在土耳其度假

懂球帝
2026-06-16 20:32:34
为什么大获全胜的歼-10卖不出去,一败涂地的阵风却销量火爆?

为什么大获全胜的歼-10卖不出去,一败涂地的阵风却销量火爆?

基斯默默
2026-05-28 11:06:03
靠“擦边”狂赚1个亿,他们凭什么?

靠“擦边”狂赚1个亿,他们凭什么?

麦子熟了
2026-06-15 21:13:45
伊朗主教练随时准备下达罢赛命令,英媒预测世界杯现场或发生冲突

伊朗主教练随时准备下达罢赛命令,英媒预测世界杯现场或发生冲突

小正说娱乐
2026-06-17 03:59:08
郑钦文:让我们继续战斗,就像当初我一无所有时那样

郑钦文:让我们继续战斗,就像当初我一无所有时那样

懂球帝
2026-06-16 23:42:07
史上首例!特朗普亲手扶起一个“脱袍换装”的伊朗,中东翻天了!

史上首例!特朗普亲手扶起一个“脱袍换装”的伊朗,中东翻天了!

范赊舍长
2026-06-16 11:48:42
美芯片制裁遭技术破局!加州大学专家认证:华为三维堆叠方案可行

美芯片制裁遭技术破局!加州大学专家认证:华为三维堆叠方案可行

素衣读史
2026-06-16 21:30:30
2026-06-17 07:08:49
Unity incentive-icons
Unity
Unity中国官方帐户
2481文章数 6733关注度
往期回顾 全部

科技要闻

DeepSeek融资500亿,梁文锋牢牢握住控制权

头条要闻

美被指拒绝以色列看美伊谅解备忘录 以总理发声

头条要闻

美被指拒绝以色列看美伊谅解备忘录 以总理发声

体育要闻

身价5万的门将,挡住了12亿欧元的狂轰滥炸

娱乐要闻

吴文忻葬礼:2个女儿在灵堂内茫然失措

财经要闻

从123美元到62美元 白银价格上演过山车

汽车要闻

三车齐发 零跑全新C10/C11/C16上市12.58万元起

态度原创

教育
家居
时尚
本地
亲子

教育要闻

2026年的高考地理题,真是夯爆了!

家居要闻

绿意盎然 自然之境

中式坐月子,震撼欧美中产

本地新闻

这届年轻人为什么都在找心流时刻?

亲子要闻

童装巨头转型背后:一代人有一代人品牌,育儿观正重塑市场

无障碍浏览 进入关怀版