Premium VR 游戏的测试与分析:第二部分

前言

目前VR设备基于处理能力和体验效果可以分为Premium VR、Mainstream VR 以及 Entry-Lever VR. Premium VR 代表的是高端 VR,这类产品以高配置、性能非常好的 PC 或者游戏主机为基础,目前市场上支持此类型VR的外设主要提供商是HTC Vive,Oculus Rift和Sony PS VR。Mainstream VR代表是性能达不到高端VR的硬件处理能力,但是还是PC处理器为计算能力的VR设备。入门级的VR是包括所有的移动VR设备,例如 Gear VR,也S包括利用手机芯片作为计算设备的VR眼镜和一体机。

我们在第一部分中介绍了Fraps,游戏加加,UE console command等VR测试分析工具。进一步的分析可以使用Windows Assessment Development Kit (ADK)工具里面的GPUVIEW和WPA来做。

GPUVIEW是一个很强大的工具。上面的命令”stat Unit”只是简单初略的看出是GPU bound还是CPU bound,有时候并不是特别准确,比如CPU的某个线程负担过重导致GPU一帧中间出现一些bubble,这种情况用Stat Unit看到的GPU的渲染时间是bubble的时间加上真正的渲染时间 ,此时需要GPUVIEW结合WPA还分析。比如在下面这种情况,每帧中间都有一个2ms的bubble,此时GPU是不工作的,本来一帧的渲染时间不到11ms,但是加上这个bubble后,渲染时间就超过了90FPS要求的11.1ms,导致下一帧错过Vsync时间,掉帧。图片描述
图 13.GPUVIEW界面

此时我们可以用WPA打开同一个Merged.etl文件,通过时间轴找到bubble所在的时间窗口,来定位CPU哪个线程的负担较重,此时正在运行什么。图片描述
图 14.WPA界面

如果在GPUVIEW中看到的一帧GPU的渲染时间超过11.11ms的话,此时确定是GPU bound,可以用Intel的Graphic Performance Analyzer来分析具体渲染管线里哪部分的任务过重。

GPA 是Intel开发一款免费的图形性能分析器工具,访问官网 。这个工具非常强大,包括以下几个独立的工具:

  • System Analyzer:实时显示游戏性能指标。
  • Graphics Frame Analyzer:帧分析器。
  • Platform Analyzer:定位CPU和GPU的workload。
  • Graphics Trace Analyzer:抓取详细的event traces 以供其他分析器分析。

    通常为了配合GPUVIEW,使用最多的是Graphics Frame Analyzer,这个分析器可以查看游戏中某一帧的draw call,render target,纹理贴图,Overdraw,Shader,以及通过简化Shader、贴图实验的方式检测哪部分渲染影响到性能,以方便确定重点优化部分。图片描述
    图 15.Graphics Frame Analyzer界面

案例研究

下面我们举个例子来测试分析下VR游戏。

测试之前可以用dxdiag查看下机器配置图片描述
首先用Fraps测试一段时间得出帧率变化如下,从这个图形来看,有部分场景可以达到90FPS,但是后面的大部分帧率都是在45左右,性能完全不达标,需要进一步分析。图片描述
图 16.FPS显示
用UE console command “stat FPS” 寻找到帧率较低的场景来重点分析。

如果觉得游戏变化太快导致来不及抓数据,可以用console command PAUSE来暂停游戏以方便打开所需要的工具。

结合stat Unit命令的参数来看,大概CPU渲染线程和GPU都有瓶颈。

查看原文


了解更多相关内容,请关注CSDN英特尔开发专区

阅读更多
上一篇在Microsoft Surface Book 上安装并运行 SteamVR
下一篇Premium VR 游戏的测试与分析:第一部分
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭