Skip to main content

1.3 技术优势

无代码交互内容创作

现在大部分应用都是在设计一个特定场景,提供官方特定的应用、规则或玩法,跟游戏的思路类似,更强调用户的体验

除了游戏引擎,能让用户创作的只有Roblox 只类型的

能够面向普通用户,且针对交互内容进行创作的,只有一家,它是未来最基础的模式和能力,当前没有一家在这个层面,独此一家

用户可以基于RealityWorld 创作游戏,或者简单的作品,跟Roblox 一样,但是它通过两个门槛以及丰富创作的类别,让更多普通用户可以参与,从而大大增加用户群,使得开发者在这个平台上开发游戏有可能具有更大的用户群

代码复用机制

CreationXR runtime,可以被任意第三方app集成

他颠覆了传统开发者生态的方式,传统的小程序或者Roblox 或者Snapchat 只能集中式,只有平台一个入口,而像Niantic 这种仅开放底层能力:

  • 开发者接入实际很困难,因为要调用众多的API
  • 每个app接入的方式存在冗余,重复,这部分可以共享
  • 每个app接入的方式不一样,因此每个app开发的功能本质上类似,但是3D部份却要重复开发,例如要接入预览流等等
  • 无法在自己的app里面共享一套开发标准,Unity不算标准,因为他更偏低层,没有定义太多规范,导致每个人开发不一样,而RealityCreate 是高度规范化的

这使得第三方开发者可以共享RealityCreate 高度规范化的流程,又可以最简单的成本和方式接入自己app,从而是开发者聚焦创作本身,同时能享受云原生,用户协作等等所有Creation XR得好处

这样也可以避免in-house 引擎的问题,in-house 引擎主要的问题是不能被其他app简单使用,有固定的流程,这样:

  • 既可以按照in-house 的做法快速提升自己的差异性,而避免陷入Unreal和Unity 那样的通用引擎
  • 又能像Unity一样被用于开发独立应用
  • 还抓住了生态

这种模式还有一个好处,除了应用部署本身,他还提供如应用的统计分析等功能,应用的存储,这些原本都是要开发者自己去对接的,传统的应用开发看有多么复杂:

  • 开发者自己自己Unity开发app程序,其中包括大量的美术资源和逻辑开发是每个游戏开发者比较重复的
  • 自己打包部署,这要求一些平台层的技巧和经验,这些其实超出了开发者对内容的聚焦,除了内容和玩法,一个游戏创业公司还需要花很多资源
  • 然后还需要对接各种SDK,包括端侧的和云侧的,而各种SDK都要公司自己学习,并且不同公司之间这些工作也是重复的,但是每个公司都的招人去挖坑,有时候这些反而成为一些小团队比较阻碍发布的一些障碍
  • 后期的运维也需要一些精力和人力也自己开发经验的投入

总之,游戏开发团队花了较多的精力在一些繁琐的事情上,而且公司之间的这些能力本可以共享的,开发者本应该聚焦内容开发

原因是因为开发者要自己发布app,所以没有办法去统一集成一些东西,这些东西本身没有标准,很难统一

当然大的应用本身需要更灵活的能力,有太多限制反而不利于开发,但是对于一些小内容,尤其是个人内容,这是可行的,而且个人开发者需要这样的生态

Roblox 就是做了这些事情,应用开发者不需要担心其他事情,但:

  • 它不支持Roblox之外的分发
  • 它不支持链接的方式分享
  • 编程模型不一样
  • 主要面向PC和手机,没有针对XR的算法层接口封装
  • 编程模型不一样所以不可能支持XR设备创作
  • 还是典型的专业开发+普通用户玩的模式,没有普通用户的创建模式和创造体验

以此为基础,构建微服务架构

美术资源的重复问题

  • 传统互动内容最重要的是玩法、故事,美术相对不是最核心的
  • 美术资源能够提供独特的视觉语言,但是这些视觉语言更多是风格化的类型,例如在同一种写实风格类型下,玩家对不同的场景感知的差异就会小很多
  • 美术场景通过程序化生成方法是能提供较好的差异性和独特性的
  • 如果这种程序化方法更加支持风格化,那么就能满足上述的需求
  • 风格化主要表现为纹理或者基础材质,有时网格也有一定的差异,但是这都可以进行研究

高性能、低功耗

现代游戏程序通常基于OOP进行开发,其中的引用关系错综复杂,对现代内存硬件架构极度不友好,需要重新对游戏的运行时内存数据进行更好的管理,并且这些管理又不能给开发者带来成本。

参见2.3.1节。

大规模并发、分布式

基于上述相似的原因,现代游戏程序无法使用大规模并发的需求,例如单台服务器最多只能支持上百人同时在线。这主要是游戏程序内的程序和数据耦合度非常高,导致单台服务器必须加载所有的数据,这样的方式不管单台服务器的内存不够,也会带来多台服务器重复加载,以及重复加载导致的数据同步导致的复杂问题。

参见2.2.13节。

自我进化的标准架构

在一个传统的游戏程序中,所有的逻辑都是包含在程序中不可修改,所有的关卡、剧情等等都是固定的,跟电影比较类似,唯一不同的可能是游戏具有交互性。

当需要更新程序时,通常通过DLC或Mod等机制对游戏进行扩展或增强,但是这两种机制通常都比较受限,因此本质上,至少一个已经发布的游戏其核心体验是很难改变的。

但一个开放的Metaverse不仅需要可以任意添加独立程序的能力,还需要能够像真实世界一样自动筛选优秀内容的能力,否则用户可能很快就沉入很多垃圾或者质量较低的信息当中。

传统的数字经济,这种内容都是需要平台使用一定的算法进行推荐,这种推荐算法一般由用户对自己的内容设置一些标签,然后平台建立一些相关度的机制。

但真实世界却是相反的,它们由每个根据自己的判断和选择,来促进整个世界的进化。参见4.12节内容。