cloud based augmented reality

Post on 13-Jan-2017

304 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Cloud Based Augmented RealityDAV CLOUD MOBILE SYSTEM ARCHITECTUREDAV CONTENT GUIDELINE FOR DEVELOPER

By Gia MuhammadWIR R&D

Outline Presentation

Problems Proposed Solution Overall design architecture between control center and devices Launcher for APK Update Image Tracking based Cloud News / Image Slide of Advertise based Cloud Content based Cloud Development Guideline Test Result Conclusion and Future Works

Problems

DAV Devices have been assembled at convenience store such as Alfamart, Alfamidi and Lawson. Each stores have different shelf categories so it’s have different contents category which has been decided by control center but the devices limited by some factors such as internet connection, memory, storage, category boundary etc. The category boundary is one of the most critical problem to limit products from AR scanner.

News or Image slide of advertise always changes in close time range. Updating APK is disturbing devices operation which not get news update.

Sometime the main application has changed that affected all contents in devices so the main application should be updated.

A little change could make greedy bandwidth (not efficient)

Proposed Solution

All depended file which will use must stored at cloud Files which will use are controlled by Server in case of different

shelf and store/convenience store There must be main application that handled cloud mechanism in

each devices, the main application also should have update so that must have launcher application that will update the main application.

Overall System Architecture

Launcher for APK Update

Launcher or “DAV Launcher” is a first executor application which will handling some task before a main DAV application launches.

There are several tasks which will execute in DAV Launcher Registering new device serial number to server Latest update check Download and installing the updated latest apk Store and Shelf assignment QR Code generator for QC DAV (Main Apps) crash backup or substitute

Launcher for APK UpdateWorkflow

The Launcher always try to launch DAV apps (loop) After DAV apps launch, DAV Launcher will standby

and wait until DAV apps exit or crash, if exit,Launcher will recall to the first state of procedure

Launcher for APK UpdateHow to Upload

Launcher for APK UpdateHow to Upload

Image Tracking based Cloud

Image Tracking is a media which will intermediate between real world and virtual environment (apps)

The Image tracking should be recognized before it deployed into the apps

image trackings are depending on many image of products but each products are stored in different place or shelf so not all image trackings are deployed in the same devices.

Consequently the image tracking should deploy dynamically, the image tracking had applied with cloud-based mechanism that have been handled by DAV Control Center.

Image Tracking based CloudWorkflow

Image Tracking based CloudHow to Upload

Image Tracking based CloudHow to Upload

News / Image Slide of Advertise based Cloud

When the main application launches, the application will show idle mode that there image shows a captured image from camera in real-time.

This idle mode used for showing some advertisement such as image slide or video.

These image slides and videos are deployed by store and shelf in other words called dynamic.

Consequently, these advertises also should run with cloud-based mechanism that have been handled by DAV Control Center.

OGV and MP3 as DataType

News / Image Slide of Advertise based CloudHow to Upload

Content based Cloud

Same as Image Tracking, content deployed into device and must be handled by DAV Control Center.

These contents are deployed by store and shelf in other words called dynamic.

Sometime many image tracking can load only one content. Unity3D format & dll as Data Type

News and Content CloudWorkflow

Content Workflow in Device

Image Recognized

Find Asset by Web Service

Info.

Load Asset by Scene

Name

Preload Content

From Cloud Storage

Asset Loaded into

Memory

Is Asset Available?

Load Scene and Run

Asset

DAV Asset Script Loader

DAV Asset Script LoaderWorkflow Asset

Loaded

Script (dll) Load into Memory

Checklist script will load into

asset

Find scene path at each

scripts

Load script into scene

by path info. one-by-one

Script run on each loaded

scriptsReady to

Play

Content Development GuideUnity

Always use mirror object because DAV device using front camera. Every material such as shader, mat, etc should be gathered in

one directory with format same as namespace, store in assets/resources/{content name} path directory and build in asset bundle (unity3d) as additional file

The content that built can’t attach script in object scene, it must develope separately and not recommended to place script into deep hierarchy.

Content Development GuideVisual C#

Every script in content must give a namespace with format [ContentName]_[Year&Month]. Ex : Pocari_201506

In middle of content scene always give times at least 10 second to prepare back to main/idle scene.

If any ‘PAUSE’ scenario, the content game supposes to run timer that will back to main/idle scene if the timer time out.

Main/idle scene located at index 1 so the content must be loaded to index 1 if the content want to back to idle/main scene (including exit scenario). Don‘t use scene name.

Content Development GuideCreate Main Script to define script will load

Content Development GuideDetermine Object Scene Path

Content Development GuideDetermine Object at Variable

Since object attached into script and the script loaded cloudly, object should re-defined

Common Development Cloud Development

Content Development GuideArray Case

Since object attached into script and the script loaded cloudly, object should re-defined

Common Development Cloud Development

Content Development GuideButton Function Case

Since object attached into script and the script loaded cloudly, object should re-defined

Common Development

Cloud Development

It’s recommended to put the script in the same file script as button function

Content Development GuideGetting Image Tracking Status

SimpleJSON library already compiled within DAV Script Loader DLL file

Content Development GuideRun a script when not in startup condition

WhereParameter 1 : NamespaceParameter 2 : Class NameParameter 3 : Object Scene Path

Content Development GuideLoad File from Additional Asset

Since object attached into script and the script loaded cloudly, object should re-defined Call DAV.Asset before load

particular file in Additional asset

Loaded from png as Texture2DLoaded from wav/mp3 as AudioClip

Loaded from prefab as GameObject

Content Development GuidePlugin Reference

LeanTween and Mobile Movie Texture have found the solution but No solution for Object Pool Plugin

Content Development GuideObject Pool Substitute

Content Development GuideLeanTween Utilization

No change, same as common development

Content Development GuideMobile Movie Texture (MMT) Utilization

MMT using dll that have been compiled and ready to use

Lets path empty, path would filled by script

Content Development GuideMobile Movie Texture (MMT) Utilization

Content ID, determined by DAV Control Center

Generated File Name, determined by DAV Control Center

Test Result

Build a script and update to control center Script Loader in DAV Cloud (Editor) Build Asset and Additional Asset

Conclusion and Future Works

Image Tracking / Augmented Reality SDK switch to EasyAR Image match function for Image that upload to DAV Control

Center as image tracking to avoid same image. If the part of data content updates, old file of data content won’t

be deleted. The apps should have sync procedure after content update.

top related