Unity全球讲师总监:开发VR游戏的建议及注意点

2024-11-13上海AR开发专家
  • Unity VR大师课程在广州举行,虽然规模不大,不过现场座无虚席,开发者们反应非常热烈。会上,Unity全球讲师总监Carl Callewaert在现场分享了
    VR游戏
    的发展趋势、开发VR游戏的建议以及需要注意的地方。
    Carl拥有超过10年的游戏开发经验,在3D动画、各类游戏开发、动作捕捉、虚拟现实开发等方面拥有丰富的经验。
    数据:
    VR硬件
    销售预计达3890万,71%为基础型移动VR硬件
    首先,Carl发布了一组数据来阐述了VR的发展情况。预测2016年市场上VR硬件销量将会达到3890万,其中71%用的类似Cardboard式的便携设备,数日前Google Cardboard发布销量达到500万台。类似Gear VR的高级移动式VR硬件的占比将为7%;连接电脑VR户占比将为17%;主机VR占比将为5%。VR发展初期主要是以轻度基础型硬件设备为主,这类设备廉价,可以给用户带来基本的虚拟现实入门体验,对于市场的普及可以起到很好的作用。
    VR将以指数型增长,而非直线增长
    对于VR的增长趋势,很多机构都发布了预测数据,根据某机构预测,2016年
    VR市场
    将达到50亿美元,2020年,VR+
    AR市场
    将达到1200亿美元,而早期增长主要来自VR,但是后期AR将成为主要增长点,因为AR相比VR应用范围更广。
    对于这个呈直线形增长的预测,Carl提到,Unity的CEO认为这个增长趋势是错误的,VR的发展应该是指数型的,开始可能会比较慢,早期市场比较混乱,经过一段摸索期之后才会逐渐进入稳定期,到后期呈现爆发式的增长,Unity CEO是
    Oculus
    早期的开发者之一,所以对市场有很好的洞察力。
    使用Unity在各个平台开发VR游戏需要准备哪些?
    现在的VR游戏分为好几种形式,移动端、PC端、主机端,每一种形式的游戏需要用到的基本开发工具各不相同,此处将列举Oculus平台和Gear
    VR平台
    所需要的开发工具。相对来说,移动端所需要的工具更多更复杂。
    Oculus平台:
    1、Oculus SDK
    2、Oculus Runtime
    3、Unity4.5及以上版本,建议使用5.0以上版本
    Gear VR平台:
    1、Oculus Mobile SDK
    2、Oculus Runtime
    3、Java Developers Kit
    4、Android Development Tools(ADT)
    5、Galaxy USB drivers
    6、Unity4.5及以上版本,建议使用5.0以上版本
    注意:5.1以上版本开启VR支持非常简单,菜单PlayerSetting/Virtual Reality Supported就可以打开。
    VR游戏必须死守的重中之重:帧数
    现阶段,帧数低是产生眩晕主要的原因之一,而VR游戏无论如何必须达到各个硬件指定的帧数。因为如果帧数不够,头部在转动的时候帧数会跟不上而导致眩晕。
    Carl提到,VR游戏最主要的一点是保持稳定的帧率,Oculus平台的游戏至少达到75帧,HTC vive至少90帧,Gear VR要求相对较低,不过也需要保持60帧的帧率。即便画面效果做的再好,帧数如果跟不上会大大降低用户体验。相对来说,简单的卡通风格画面效果要比逼真的写实风格更好。
    此外,游戏设计时每局的时间需要控制好,最好以每局时间控制在5~20分钟左右,这样可以防止用户长时间玩游戏产生眩晕。
    Unity开发游戏设置注意事项:
    1、纹理压缩ETC2 GLES3.0
    2、方向设置为横向左
    3、垂直同步设置为不同步
    4、启用多线程
    5、设置固定的时间步长更新
    6、抗锯齿最大2倍
    7、需要Oculus Gear VR签名文件
    使用Unity自带的Profiler测试游戏性能时:
    1、可以通过USB或WiFi查看实时应用程序的性能数据
    2、直接检测Gear VR硬件内容
    3、很容易看出性能瓶颈
    4、在移动VR中,无论多小的优化都是有用的
    移动VR游戏开发的建议:
    1、尽量减少游戏里面的面片模型。这是为了让GPU的负担更少,提高帧率。在VR里面建模和一般的游戏建模有些不同,一般游戏里可能会用到凹凸贴图效果,但是凹凸贴图能达到近似效果,并不是真正凹凸的,当用户非常靠近这个模型的时候,是看不到凹凸效果的,所以在VR游戏里面不应该用凹凸贴图这样的一个技术。
    2、其他在做移动VR游戏的时候,尽量用对象池,这样的话可以减少游戏加载的时间,并且让帧率保持稳定。
    3、避免一些高CPU集中的运算导致的帧率突然下降。
    4、这是很多开发者经常犯错的地方。在看游戏运行的时候,在editor的数据里面,大部分的开发者会非常留意Batches以及Saved by batching,来考虑GPU的性能好不好。但是其实SetPass这个数据在也是需要关注的点。因为每一次GPU在渲染东西的时候,每更换一次材质的时候,才是它更换的时刻,也就是CPU和GPU之间的交互的时刻,Batches数量增加没有Setpass增加消耗的快,Batches虽然很多,但是他们是共享同一个材质的,这个时候GPU的上限其实没有改变,可以的话尽量让游戏里面的材质少一些,SetPass出来少一点。
    5、在VR里面景深和镜头的光晕是不能用的,因为它其实只是模拟出来的一个效果,并且是单眼的,而景深是需要双眼看才能产生的,所以不能单用画面来做。
    6、游戏里面的摄像机,当开启VR模式的时候,是无法控制摄像机位置的,因为摄像机的位置已经完全被VR的设备接管了,这个时候脚本是没用的。所以如果要调摄像机的位置的话,需要给摄像机一个父节点,然后就像图上面一样,把它放在一个父节点的里面,在脚本里面去控制这个父节点的位置。
    VR游戏开发插件推荐
    开发VR游戏,选择工具非常重要,而一切便捷的插件可以带来很大的帮助。在ASSET STORE上,可以下载到很多配合VR游戏开发的插件,必须用于游戏中的准星、UI等插件。Carl向开发者推荐了两个插件,一个是Mesh Baker,可以把工程里面的材质合并成一个单独的材质,用这样的方式来减少SetPass的数量。另外一个是免费的插件Simpleygon,这个插件可以更简便的创作模型。
    游戏交互
    现在VR游戏的交互设备种类繁多,并且越来越高级,早期可能以手柄这样的硬件操控为主,不过到后期加入了体感动作捕捉等高级交互方式,对于游戏的交互,Carl提到,在开发游戏之前需要先想清楚游戏适合怎样的交互方式,是否需要使用交互设备。
    而他比较推荐的方式是用UI菜单来显示现在用户的视觉焦点在哪个位置,可以让用户的眼镜聚焦他自己现在在看的那个点,使用头部转动的自然方式去进行游戏的主要交互。
    例如下图,这是游戏中的选择菜单,用户在前方可以看到一条提示,下面有一个UI,一般的方式是选择点击,不过在VR游戏中可以将用户视线聚焦到选项条上,经过数秒读条后表示选择确认,不需要按键,只需要转动头部就能选择,这种方式能给用户更好的体验。另外Oculus Touch也是比较自然的交互方式。

关于AR

卓越的技术,一流的团队,为您打造专家级AR产品。
Test your infrastructure

什么是AR?

AR(Augmented Reality),即增强现实技术能将虚拟信息(图片,视频, 音频等)融入现实世界,让现实世界更加多元、丰富,为人们带来更加生动有 趣的感官体验。简单来说AR技术给人们带来的是一种信息的增强体验,它也 将成为一种“更新奇、更易传播”的新型信息传递方式。

AR的趋势

在信息技术化的时代趋势下,AR将以一种新型娱乐及信息交互方式融入人们 的生活,而对于企业来说,AR产品的广泛推广及运用也将是一项不可错失的 绝佳商机。

Test your infrastructure

AR运用的困惑

AR技术备受瞩目,然后实际运用上却让人望而止步。
成本上 往往单制作一个AR形式的内容就得花费上万元, 只有高预算的大企业或广告商才能出手
技术上 AR技术总给人一种触不可及的印象,导入AR技术 是否需要高度技术支持。
企划上 AR充满娱乐性,但是好玩之外,如何将AR良性结 合商务是难题。

选择迅速AR的八大优势

迅速AR始终以满足顾客为己任,成就AR领先品牌。

经典案例展示

我们是AR应用的领军者,专注AR技术研究与开发。

新闻动态 · 与日俱进

我们诚心邀您分享我们的成长历程。
更多动态 >

合作伙伴

整合全球产业链资源,服务超过7亿用户