返回 登录
0

专访侑虎科技创始人张鑫:游戏、VR应用性能诊断与优化

摘要: 性能优化其实对于开发者而言是永恒的痛点,而在游戏、引擎等的研发与支持、培训等工作过程中,张鑫与其团队也饱受其困扰,由此创立了侑虎科技,专注于为游戏及虚拟现实开发者提供性能诊断与优化平台,以及技术咨询服务。

初次听说张鑫时,他还是Unity大中华区技术支持经理,从事与Unity引擎相关的技术研发、培训以及支持等工作,有着非常丰富全面的引擎使用经验。在浙江大学CAD&CG国家重点实验室的几年里,他深耕于计算机图形学、数字几何处理等相关学术知识,曾发表多篇论文。后进入盛大任游戏开发工程师,参与了其3D MMO游戏引擎以及多款基于Unity的移动/网页游戏的研发工作。2015年开始了创业之旅,在上海创办了侑虎科技,着力于为游戏及虚拟现实(VR)开发者提供性能优化及其相关的咨询服务。从其职业生涯不难看出,他是非常典型的技术型创始人,也给予了公司非常浓厚的技术氛围,并经常撰写技术博客、组织纯技术的线下活动来分享实际的优化经验。

张鑫

侑虎科技创始人兼CEO 张鑫

职业生涯与个人感悟

张鑫的职业生涯萌芽于计算机图形学。从实验室研究、盛大游戏工程师、Unity技术支持经理到现在侑虎科技创始人兼CEO,这一路走来,张鑫将其归结于缘分以及兴趣使然。在硕博连读五年的时间里,张鑫发表了多篇论文,却也不想再这样下去,“我不希望发表过的那些文章单纯地累积在那里。要知道每年世界上都会出现一些可以改变世界的Paper,但99.9%基本都是灌水,更多的是为了发文章而发文章,这没有任何意义。我希望我做的东西,是可以被别人看到或使用的,哪怕做得不好,甚至被别人骂,但那也是好的,至少证明别人在使用。”所以他离开了学术圈,加入到盛大游戏,开启了他游戏开发工程师的生涯。

四年前Unity引擎在中国市场兴起时张鑫就对其评价很高,认为Unity的研发思想与他个人的职业理想相当契合。“如果我没有参与过引擎研发,恐怕很难无法体验到Unity的美妙。Unity的简单易用、多平台支持、组件式开发和Asset Store等等,让当时的我深深感到震撼。”

在谈到为什么会有创业的想法时,张鑫坦言:“性能优化对于几乎每一位游戏/VR应用工程师们而言都是痛点。我们团队人虽少,但是各方面人才俱全,曾经学习的知识对游戏以及VR都有着很大的帮助,图形学涉及最为广泛的领域即是游戏领域。同时,我们对于移动应用优化方面也都有着丰富的经验,我们希望能帮助百万开发者解决性能优化的种种问题,让优化变得简单起来。另一方面创业也是我兴趣使然,我和我的小伙伴想要做自己喜欢的事情,想要做一个属于我们自己的公司。”

在这些经历中,张鑫也有了很多体会。“人在不断地经历也在不断地成长,其中最大的感悟就是让我明白了如何去解决问题。任何人的技术都可以通过后天学习来补齐,但是一个人的素质、学习能力是最为重要的。对于任何事情,感兴趣就去做,不要犹豫不决。我本身而言不是一个被动的人,我比较喜欢揽事情。这个给我,那好,我来去做、去讲。很多事情无法推卸,与其被动地接受,还不如主动地学习。另外我认为一个人,他能扛住多大的压力,就能有多大的成就;其次重要的就是要有乐于挑战的精神,不要害怕失败。”

游戏/VR应用开发的常见问题和误区

在各个游戏项目等的研发、支持和培训工作中,张鑫表示大部分开发团队碰到最多的问题就是性能优化。广义地说,优化就是让研发提速,可以是游戏的某一些性能优化,也有可能是其他的问题优化。而性能优化最大的痛点就是没有大量的时间、人力去优化或缺乏经验,企业或开发者需要耗费大量的心血和精力对产品进行检测。”

我们主要的目的是对游戏/VR的性能进行优化。对于游戏/VR项目而言,性能优化有三点:CPU、GPU和内存。CPU又包括两块,一块是开发工具,例如引擎;另外一块是代码。GPU就相当于一个Graphics,渲染时,检测用的材质是否合规格。将CPU到GPU的通道称之为带宽。单位时间内,传输资源量到GPU上去,若传不过去,自然渲染不出来,相当于GPU这一块带宽不行。另外,在我们测评的大量项目中,90%以上的项目都存在不同程度的内存问题。

一是内存泄漏,也是最大的问题。可通过以下几种方法判断内存是否泄漏:

  1. 检查资源的使用情况,特别是纹理、网格等资源的使用;
  2. 通过Profiler来检测WebStream或SerializedFile的使用情况;
  3. 通过Android PSS/iOS Instrument反馈的App线程内存来查看。

二是资源泄露,相当于在上一场景中使用资源,下一次场景已经不再使用,但是没有卸载干净,这样资源就泄露了或造成资源冗余。有可能该资源只需一份就够了,但是由于置入的资源规格或流程不对会造成内存中存在多份。

另外,就目前大家比较关注的VR性能优化,张鑫表示:“对于一个游戏来说,如果玩的时候由于各种原因很卡,甚至崩溃了两三次,那我可能就放弃这个游戏了。但是对于VR应用要求就更高了。VR最大的问题是舒适度,即是否造成眩晕。因为VR应用会有个延迟度,这个延迟度很高的时候, 用户就会产生卡顿感,它会使你非常晕。比如我们玩手机,30帧、20帧时还可以玩下去,这是因为我知道它是一个平面,跟我是存在距离感的,而且了解它的环境。但如果戴上头戴式设备时,就会有立体感,如果你的世界都是这么一卡一卡的,这个体验就非常差。”

也正如张鑫所言,在VR如此火热的今天,人体工学依然是致命问题,这直接导致时至今日,没有一款重度VR游戏或一部较长的VR视频诞生。但是,VR却也是真实的未来。“我认为未来VR也有存在于全行业的可能。VR是这样的,如果想让它达到一个很好的流畅体验,不晕眩的话,延迟度至少要在22毫秒或15毫秒以下,甚至更严格地在7-8毫秒以下。现在来说,任何的优化技术都不如去解决帧率,如果帧率可上升到90甚至是120,就不会有任何由卡顿来造成的眩晕感。帧率越高,画面越真实,感觉也会越好。”

做一个着力于游戏/VR应用性能诊断与优化的工具

在采访中,张鑫介绍了目前正在做的事:致力于为开发者提供性能测评服务。就性能诊断与优化功能而言,开发者只需依照网站提示步骤下载并集成UWA插件,将项目提交到网站即可。整个过程无需改动代码,48小时内就能收到详尽的测试报告。而最新上线的资源监测与分析功能,可以协助研发团队快速检测项目资源的使用情况,高效定位问题资源,及时提供资源的优化方案。

谈及创立侑虎科技的初衷,张鑫表示:Make It Simple!这是我们的愿景,希望通过我们的协助,可以为项目研发节省一点点的时间,让大家的项目性能变得有那么一点点不一样。

评论