ADR-0032 Magic Mirror App Services

Publication Date2022-02-07
Last Update2022-02-07
StatusRejected
ReferencesADR-0018 OS for Magic Mirror App
ReferencesADR-0027 Manual creation of avatar & garment models for UC3

This ADR was never accepted, plans moved on and made it unnecessary

Context

This ADR describes the process by which avatars and garment models will be incorporated in the Magic Mirror App for project Use Case 3.

For the utilization of the garment in the Magic Mirror Application (CERTH):

  1. Receives the garment in asset bundle format from Metail. The creation of the avatars and garments and the rest of the necessary files is described in ADR-0027.
  2. The textures and materials are incorporated in the garment.
  3. The Obi physics engine is integrated to the garment using
    1. the Obi blueprints,
    2. the Obi parameters texture files and
    3. the stitching of the different parts of the garment.
  4. With the utilization of the camera a person’s body is tracked in order for the garment to be materialized on their body correctly and be updated in the correct position when the user moves.
  5. The garment is presented within the iOS(ADR-0018) Application when the user selects the appropriate option in the garment detailed view menu.
  6. The presentation of the garment within the App is realized in 2 different ways with the assistance of an AR enabled camera:
    1. By tracking the movements of the user and materializing the garment on top of them.
    2. Showcasing the garment on empty space.
  7. In established time intervals the application will automatically check for new additions of garments in the database, so that it can be updated accordingly.

Decision

  1. The presentation of the garment will be possible with 2 different options: By tracking the movements of the user and materializing the garment on top of her and by showcasing the garment on an empty space.

Consequences

  1. We are in discussions about the implementation of the service that will create the Asset Bundles, which in turn will be able to be imported on the runtime of the application.