Working with Nreal Devices¶
Nreal SDK Versions Supported by EasyAR¶
These Nreal SDK versions are already supported by EasyAR in this release,
1.5.7
1.6.0
1.7.0
A future Nreal SDK release may also be supported if its interfaces used by EasyAR did not change. For small changes in those interfaces, you can modify NrealFrameSource script before an update is released by EasyAR.
Import Nreal Unity Asset Package¶
Skip this step if you already have a usable Nreal project.
Get unitypackage
file of Nreal SDK from Nreal, and use Unity > Assets > Import Package
to import Nreal SDK.
Create Nreal Unity Package (Virtual)¶
Nreal SDK is not published as a Unity Package at the time of this version release. But EasyAR will use Unity Package to check and use dependencies.
Create com.nreal.sdk
folder inside Packages
folder of Unity project, and create package.json
inside com.nreal.sdk
with following contents. Please notice that the value of version
should be same with Nreal SDK distribution you get.
{
"name": "com.nreal.sdk",
"displayName": "Nreal MR SDK for Unity",
"version": "1.7.0",
"unity": "2019.4",
"description": "",
"keywords": [],
"dependencies": {}
}
Then file structure inside Unity project will be like this,
.
├── Assets
└── Packages
└── com.nreal.sdk
└── package.json
This virtual package is not needed if Nreal publish its SDK using Unity Package in future. If the package name is not equal to the value above at that time, all com.nreal.sdk
strings from .asmdef
files inside EasyAR package should be replaced with the official name.
Create a Scene Usable on Nreal¶
Skip this step if you already have a usable Nreal project.
Create a scene usable on Nreal according to Nreal documents or its demos. You can also use its demo directly. It is suggested to make sure the scene could be used normally before adding EasyAR components into the scene.
Add EasyAR Components in the Scene¶
Add EasyAR AR Session and other necessary nodes in the scene. You can reference Start from Zero for startups. AR Session can be created from some AR Session presets or constructed from standalone feature nodes using EasyAR Sense >
GameObject menu. There are also some presets that could be used on Eyewears in menu EasyAR Sense > Eyewear
.
To use EasyAR on Nreal, NrealFrameSource must be selected as frame source in the AR Session after Session start.
This could usually be done by set ARComponentPicker.FrameSource to FirstAvailableActiveChild
and make sure NrealFrameSource is the first frame source in transform order,
Or set ARComponentPicker.FrameSource to Specify
and specify the frame source to NrealFrameSource .
NrealFrameSource can be added to AR Session from menu EasyAR Sense > HMD > Frame Source : Nreal
if it does not exist in the session.
Then add targets or maps in the scene, for example, if you want to build Sparse SpatialMap
, you need to create SparseSpatialMapController by EasyAR Sense > SpatialMap > Map : Sparse SpatialMap
Finally, a simple scene for sparse and dense spatial map building on Nreal could look like this,
Scenes can be different according to features in use from both Nreal SDK and EasyAR Sense Unity Plugin.