插件升级及版本兼容性

兼容性只在插件本体中会被考虑。样例文件会在任何可能的情况下改变。

文件兼容性

尽管EasyAR Sense Unity Plugin 是源码发布,但在不同版本间并不提供文件级别的兼容性。你需要将 EasyAR Sense Unity Plugin 当成一个整体,就像一组互相依赖的 "DLLs"。

EasyAR Sense兼容性

EasyAR Sense Unity Plugin内包含 EasyAR Sense。插件只能与同一个发布包中的 EasyAR Sense一同使用。在某些特殊情况下,如果EasyAR Sense Unity Plugin 在不同版本间改变不多,EasyAR Sense也是可以交换的。在这种情况下, Packages/com.easyar.sense/Runtime/BindingPackages/com.easyar.sense/Runtime/BindingNR 文件夹中的所有文件需要来自于同一个EasyAR Sense发布版本。EasyAR没有在设计中提供这种兼容性,因此如果有需求,你应该自行检查可行性并自行承担风险。

接口兼容性

接口兼容性只在同一个小版本中会确保。大型接口改动会在发行说明中提及。

注意: EasyAR 不使用Unity所要求的 semantic versioning。主要区别是,minor版本号的变化也可能会引入不兼容的变化,虽然并不总是如此。

升级指引

使用 Package Manager window 删除老版本的 EasyAR Sense 包并添加新的包即可。在插件升级后,导入到工程中的Sample可能无法正常工作,建议删除老sample并使用新的包重新导入。

../_images/image_g2_1.png

迁移到4.3

这段覆盖EasyAR Sense Unity Plugin 早期版本与4.3的差异。

如果你在从4.2或更低的版本上升级,需要删除老插件的所有文件,然后通过Unity的 Package Manager window 进行干净的导入。这些文件可能在 Assets/EasyARAssets/PluginsAssets/SamplesAssets/StreamingAssets 文件夹中存在。

迁移到4.4

这段覆盖EasyAR Sense Unity Plugin 4.3与4.4的差异。

prefab已经标记为过时,并将在将来的发布中删除。只要有可能,请删除插件包prefab的使用。如果继续使用这些prefab会有warning log,且这些log中包含在新的插件中如何替代的简短指引。你可以可以阅读 从零创建可运行的工程 或新的样例来学习如何在这个版本中创建AR场景。

VIOCameraDeviceUnion 已经标记为过时,并将在将来的发布中删除。如果继续使用这个组件会有warning log,且这些log中包含在新的插件中如何替代的简短指引。你可以阅读 从零创建可运行的工程 或新的样例来学习如何在这个版本中创建AR场景。

一些其它API也有所改变,可以阅读 API参考手册 来了解新API的使用。

有一些公有方法的XML注释中标记为了 internal,且未列在 API参考手册 中,尽可能避免使用这些接口,它们可能会在今后的一些版本中被替代。

迁移到4.6

这段覆盖EasyAR Sense Unity Plugin 4.5与4.6的差异。

prefab已删除。 如场景中仍在使用老版本的prefab,请阅读 从零创建可运行的工程 或新的样例来学习如何在这个版本中创建AR场景。

VIOCameraDeviceUnion已删除。 如场景中仍在使用老版本的这个组件,请阅读 从零创建可运行的工程 或新的样例来学习如何在这个版本中创建AR场景。

AR Foundation 支持已被拆成独立的package。 请阅读 与 AR Foundation 协同工作 来了解应该如何在EasyAR环境下使用AR Foundation。如不需要使用,请删除场景中AR Session下的 AR Foundation 节点以及代码中对 ARFoundationFrameSource 的使用。

Nreal 支持已被拆成独立的package。 请阅读 EasyAR头显扩展 来了解应该如何在EasyAR环境下使用Nreal。如不需要使用,请删除场景中AR Session下的 Nreal 节点以及代码中对 NrealFrameSource 的使用。使用Nreal时不再需要创建虚拟的package。

一些其它API也有所改变,可以阅读 API参考手册 来了解新API的使用。