这9行代码的博弈,将影响到虚拟现实的未来
2010年8月,Oralce一纸传票将谷歌送上了被告席,甲骨文主要就安卓系统中9行代码,37个Java API包的侵权进行了控诉,要求谷歌偿还近93亿美元的版权费用。从加州北区的地方法院开始,到联邦巡回上诉法院,这次旷日持久的诉讼在逾越了近4个年头之后终于即将落下帷幕。
地方法院认为API没有实际的版权,所以不能受到法律保护,而代码的版权保护将会对创新活动造成不利的影响。联邦巡回上诉法院的判决则偏向Oracle,只就“复制代码”本身进行了考虑。
VR内容的产出,附庸于基础的程序开发规则之上,包括开源的程序结构与图形引擎的全力支持。Java API的调用早已经成为了一些程序员之间默许的交流规范,一旦google判负,其审判先例会严重打击到开源的交互氛围,对整个虚拟现实行业造成深远的影响。
·java API的意义,对于 VR 的作用
依照Google辩方律师的描述,如若将一个庞大的程序系统比喻成文件柜,API就是每一个抽屉外面贴上的分类标签,而抽屉里面的内容,谷歌已经全部进行了重写。
谷歌的VR SDK中也提供了针对虚拟现实的两个java包,包括对设备进行视觉支持的cardboard.jar与对声音进行支持的audio.jar。Java在更多的场合还是制造基于web的VR程序,为了解决这个问题,Nicolas Lazareff专门制作过一个名为Renderloop网站,可以将这门技术应用到体验更为优秀的Gear VR之上。
以Google的安卓系统为基准的移动VR应用,或多或少的都将调用到Java的API,Java 3D API就是一个比较重要的标签,它主要运用在三维图形和应用程序之上,那些复杂各异的虚拟场景几乎都绕不开这个接口的使用。
除了几何图形的构造之外,Java3D不同于Open GL惯用的摄像机使用方式(大小,远近参数调节),而是调整摄像机在整个场景中的摆放位置,从而实现不同的图形展现。
·除了Java API,还有什么替代方案?
面对Oracle的指控,Google在去年年底就开始部署一系列替代方案,并决定在Android N版本之后不再使用Java API。
“作为一个开源的平台,Android建立在开源社区的协作之上,在我们即将发布的新版Android中,我们计划将Android的Java语言库迁移至OpenJDK,以便为开发者们打造一个用于构建应用和服务的常见代码库。Google长期致力于贡献和携手OpenJDK社区,我们期待未来能够为OpenJDK项目作出更大的贡献。”
讽刺的是,OpenJDK是Java SE开源版本,虽然仍然隶属于Oracle,但不具备实际掌控权。
除此之外,谷歌本身还开发了一种名为Golang的编程语言(简称为“GO”),由于GO语言是一个开源项目,其API的调用并不会触及版权问题。
GO相比Java还有两个可见的好处:
VR内容的部分底层语言通常运用C和C++来编写,其技能持有者能够很快的上手Golang;
即使Google不对GO语言进行更新,其开源的特性也允许第三方开发者进行迭代,非常充满活力。
苹果 对于API的调用大多也是持默许态度的,不过这并非长久之计,苹果私有API的调用在条款中还是明令禁止的,其API一旦拥有了版权的保护,说不定哪天也会施行索赔的权利。
当然,谷歌和一众开发商也不因此停止VR领域的内容制造,不过程序的编写将会变得尤为麻烦,他们通常需要在系统整体基调不变的基础下,调用很多不同的API,以保证自己不会侵权。
·参考Swift,针对VR开发的独立编程语言
1.完全封闭体系
苹果公司的封闭风格,催生出了性质相符的Swift语言,其主要针对OS X,iOS和Watch OS的撰写。在API版权纠纷之后,这似乎可以成为一个VR开发的信标,如若没有符合规定的规则,那么就需要自建一套独立的规则。
但是,Java早在1990年就构建出了雏形,相比之下,2014年6月才刚刚发表的Swift显得尤为年轻,其内容的缺乏与如今的VR境遇倒是有几分相似,人们普遍认为Swift的核心内容还是Objective-C的老一套,语法虽然多样,但太过杂糅。即便如此,在工具部门总监克里斯·拉特纳的领头下,Swift的设计也耗费了4年。
VR专用编程语言的构建目前还没有什么苗头,即使从现在开始规划也有很长的一段路要走。不同于苹果的独立产品体系,在VR繁杂的品种构成之下,想要在一时之间统一整个VR硬件行业的口径实在是无比困难。
2.完全开放体系
Linux做出了开源的第一步,而Intel也与IBM进行过开源技术标准的探讨。微软旗下.NET编程平台的开源让我们看到了另一种思路,我们不需要重构所有的语言规范,只需针对触及版权的灰色区域单独的进行标准定制。
有趣的是,十年前哈佛法学院的Berkman就与十三个国家发起过一次“开源技术标准”倡议,其针对的目标恰恰是以微软为代表的专有软件制造商。在人人自危的版权体系下,大型企业肯定会起到牵头的作用,合力避免因由API以及衍生内容所产生内耗,推出一套完全开放的标准。
面对Oracle的诉讼,谷歌没有做好准备,他们将命运压在了1996年的“莲花诉宝兰”案例上,该案确认程序中的菜单属于操作方法而并非Java API所涉及的操作系统,因而不受版权保护。而我们显然也没有做好准备,在即将完案的今天,开发者们还依旧沉浸在世界大同的幻梦之中。
作者:箱子, 微信 搜索关注“VR日报”,微博@VR日报网,转载请注明版权