Page 75 - Kaleidoscope Academic Conference Proceedings 2022
P. 75
Extended reality – How to boost quality of experience and interoperability
a separate development environment is needed. Here, the tutorials and forum articles. Vuforia can easily be imported
two tools Unity and Unreal usually stand out. According to to a Unity project after creating an account for both platforms.
Salama, both engines are not very different in their main After import, just a free license key must be entered in the
functionalities. If a project requires graphically intense Vuforia Engine settings.
performance, Unreal Engine seems to be the better option.
For small companies looking to target multiple platforms and Step 3: Before the actual development of the AR application,
monetize effectively, Unity is more suitable [14]. the most important step is the creation of 3D models for the
AR target and virtual content. For the application to track a
Step 3: The most important step of the development process real object, the exact 3D model of it is needed. The model
is the collection of data. To augment a three-dimensional can deviate by up to 20% from the real object according
object, a virtual model of this object is needed. In some to Vuforia. Additionally, these 3D models must not exceed
cases, a CAD model is already available, otherwise it can be 20 parts and 400,000 polygons because of the end device
created by 3D scanning it. One should ensure, that the object performance [15]. This is particularly a problem when the
has enough edges or clear textures for the tracking software 3D data comes from CAD data. In addition, a smaller number
to recognize. Furthermore, 3D models are shown using of polygons automatically leads to a smaller data size of the
polygons. Due to performance limitations of the end device, models. The number of polygons for the virtual content is not
the number of polygons per model is limited. explicitly limited, but also here the application performance
is much better if the models are smaller. As a practical hint,
Step 4: Some AR tools require a conversion from a 3D it can be said that it is best or advisable to already set up the
model to a trackable AR model. This procedure depends on position of the 3D model to the coordinates (0|0|0), as these
the chosen platform. can no longer be adjusted, and it makes subsequent editing
in Unity much easier. It is also important to distinguish that
Step 5: In the development environment, the 3D model and in most CAD programs the z-vector points upwards while in
the virtual content must be connected. This may be done via Unity it is the y-vector.
easy drag and drop or via scripts. Also, additional behavior
can be determined, or user interfaces can be created here. Step 4: For the real object to be tracked, its 3D model must
This step includes all programming-related steps. be converted to an MT, which is Vuforia’s term for 3D targets.
Therefore, the 3D model needs to be imported to the Vuforia
Step 6: After finishing with development, the application Model Target Generator, a separate program that converts an
can be tested and executed to the end device. The output is existing 3D model into a Vuforia Engine dataset. Several file
either a native application or a project that can be included in formats can be used for import, but experience has shown
an already existing application. Some platforms also offer that .fbx is the best, because it is most common and can also
WebAR, which can be accessed by a QR code for example, be used in Unity later. In the Model Target Generator, scale
and no mobile application is needed. Especially the tracking and texture might be adjusted. Next, the complexity of the
quality should be tested. model is shown inclusive of the number of polygons. If
required, the model can be automatically simplified here. After
4.2 Implementation that, it must be specified how much the object is moving. One
can choose the motion hint between static (no motion of
The implementation is described according to the above- object), adaptive (limited motion of object) and dynamic.
mentioned development process. For simplicity, it is not yet Using static motion will significantly improve tracking
implemented for the car but a 3D printed locomotive. quality and save power during tracking. Lastly, a guide view
can be selected. A guide view is a preview image of the real
Step 1: Our requirements towards the application were object which indicated to the user the distance and angle for
collected in an expert interview with the stakeholder. For the fastest tracking. When the AR system has successfully
first artifact, the requirements are to become familiar with the tracked the real object, the guide view disappears. Especially
technology and implement a first "Hello World" application for inexperienced users, it is a good assistance for tracking.
which displays random AR content on the locomotive. The Finally, the MT can be created, and a dataset is generated.
application should then be executed for Android and iOS.
Step 5: After creating the MT dataset, the next step is
Step 2: For this project, we used Vuforia and Unity for the actual programming of the application. A simple
development. While Vuforia provides the AR library and augmentation of an object can be done without writing a
all incoming functions regarding AR, Unity is a single line of code. In the Unity project, import the MT
multifunctional cross-platform game engine for the dataset, delete the camera and replace it with an AR camera.
development environment. As of now, Vuforia has a free In the hierarchy an MT object can be added, and the imported
basic plan for up to 20 Model Targets (MTs) and supports all dataset is automatically selected and appears in the scene
common platforms. Additionally, a detailed documentation view. From here, any AR content can be created. Our MT
and developer forum is available. Unity’s personal plan is is a locomotive, and the AR content are red wheels and a 3D
free, and they offer a free learning path with video tutorials and text. The AR content must be made as a child object of the
live sessions. Both platforms are intuitive to use and locomotive in the hierarchy. For demonstration, either a
especially Unity as beginner friendly as there are many
– 29 –