Difference between revisions of "HowTo:Configure Dynamic AR Content"
(→Results) |
(→Example) |
||
(23 intermediate revisions by 2 users not shown) | |||
Line 4: | Line 4: | ||
= Prerequisites = | = Prerequisites = | ||
− | In order to be able to use the feature properly, a certain folder structure is required and can be found at the following link | + | In order to be able to use the feature properly, a certain folder structure is required and can be found at the following link {{FileLink|Dynamic_AR_Content_Folder_Structure.rar|Dynamic_AR_Content_Folder_Structure.rar}}. Since version 2.4.4, the schema changed slightly (downwards compatible). The updated example package can be found here: {{FileLink|Dynamic_AR_Content_Folder_Structure_244.zip|Dynamic_AR_Content_Folder_Structure_244.zip}} |
+ | The setup folder contains: | ||
# A root folder, named ''UBIK'' | # A root folder, named ''UBIK'' | ||
# The ''UBIK'' root folder contains a child folder, named ''ARConfig'' | # The ''UBIK'' root folder contains a child folder, named ''ARConfig'' | ||
# The ''ARConfig'' contains two child folders named ''IDMarker'' and ''Markerless'' | # The ''ARConfig'' contains two child folders named ''IDMarker'' and ''Markerless'' | ||
− | ## ''IDMarker'' folder contains the resources and configuration files needed for scanning an | + | ## ''IDMarker'' folder contains the resources and configuration files needed for scanning an ID marker |
## ''Markerless'' folder contains the resources and configuration files needed for scanning a picture | ## ''Markerless'' folder contains the resources and configuration files needed for scanning a picture | ||
# ''IDMarker'' and ''Markerless'' folder contain a ''res'' and a ''conf'' folder | # ''IDMarker'' and ''Markerless'' folder contain a ''res'' and a ''conf'' folder | ||
## The ''res'' folder contains all the resources to be shown, like 3D objects, videos and links to {{UBIK}} objects | ## The ''res'' folder contains all the resources to be shown, like 3D objects, videos and links to {{UBIK}} objects | ||
## The ''conf'' folder contains all the configuration files | ## The ''conf'' folder contains all the configuration files | ||
+ | |||
+ | A senseful configuration always consists of a '''tracking configuration''' (in one of the TrackingData.xml) and a corresponding '''action configuration''' (in the parallel ActionMapping.xml). So when the pattern, configured in tracking, is recognized by the camera, the configured action is triggered. | ||
The following shows an exemplary sketch of the folder structure: | The following shows an exemplary sketch of the folder structure: | ||
− | < | + | <source lang="xml"> |
/UBIK/ARConfig/ | /UBIK/ARConfig/ | ||
− | + | IDMarker | |
− | + | conf | |
− | + | TrackingData_Marker.xml | |
− | + | Action_Mapping.xml | |
− | + | res | |
− | + | .obj | |
− | + | .png | |
− | + | .jpg | |
− | + | .mtl | |
− | + | .3g2 | |
− | + | .md2 | |
− | + | Markerless | |
− | + | conf | |
− | + | TrackingData_Game.xml | |
− | + | Action_Mapping.xml | |
− | + | res | |
− | + | .obj | |
− | + | .png | |
− | + | .jpg | |
− | + | .mtl | |
− | + | .3g2 | |
− | + | .md2 | |
− | </ | + | </source> |
− | + | ||
− | + | ||
= Tracking Setup = | = Tracking Setup = | ||
+ | The first step is to configure the tracking data Xml in order for {{UBIK}} to recognize scanned pictures and ID's. In case the marker is a picture (image), the location of the picture must also be provided. In the example it is '''../res/pic_name.(png, jpeg)'''. The ID located in the tracking data Xml should be the same as the order of the ID in the list of IDs. | ||
− | The | + | The example below show the configuration of the location of the image: |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
<source lang="xml"> | <source lang="xml"> | ||
<SensorCOS> | <SensorCOS> | ||
Line 64: | Line 62: | ||
= Action Setup = | = Action Setup = | ||
− | After the folder is configured, the next step is to validate the schema against an online validator. A solution can be found at [http://www.utilities-online.info/xsdvalidation/ Online XML Schema Validator]. The schema used to validate against can be found inside the | + | After the folder is configured, the next step is to validate the schema against an online validator. A solution can be found at [http://www.utilities-online.info/xsdvalidation/ Online XML Schema Validator]. The schema used to validate against can be found inside the example package provided in the prerequisites section (xml_schema_xsd). |
+ | Since version 2.4.4, GeometryAction derives from UBIKObjectAction. When a geometry is clicked, it will try to find the respective UBIK object and show a dialog for it. | ||
− | The action mapping | + | The action mapping Xml contains different actions such as |
+ | * GeometryAction (3D Object) | ||
+ | * MovieAction | ||
+ | * UBIKObjectAction | ||
− | + | The following Xml shows an example configuration: | |
<source lang="xml"> | <source lang="xml"> | ||
<TrackingActionMapping> | <TrackingActionMapping> | ||
<GeometryAction TrackingID="1"> | <GeometryAction TrackingID="1"> | ||
+ | <!-- Since 2.4.4, you can use a UBIK-UID for linking an POI dialog to the geometry. --> | ||
+ | <!-- Alternatively, you can configure (by customizing) an object with Marker Classification and its Marker ID set to the Tracking ID of this action. --> | ||
+ | <UBIK-UID>a5aa5a70-591f-11e3-949a-0800200c9a66</UBIK-UID> | ||
<GeometryResource> | <GeometryResource> | ||
<ResourcePath>pump.obj</ResourcePath> | <ResourcePath>pump.obj</ResourcePath> | ||
Line 89: | Line 94: | ||
<UBIKObjectAction TrackingID="3"> | <UBIKObjectAction TrackingID="3"> | ||
+ | <!-- Alternatively, you can configure (by customizing) an object with Marker Classification and its Marker ID set to the Tracking ID of this action. --> | ||
<UBIK-UID>a5aa5a70-591f-11e3-949a-0800200c9a66</UBIK-UID> | <UBIK-UID>a5aa5a70-591f-11e3-949a-0800200c9a66</UBIK-UID> | ||
</UBIKObjectAction> | </UBIKObjectAction> | ||
Line 95: | Line 101: | ||
</source> | </source> | ||
− | All Action tags must specify a | + | All Action tags must specify a TrackingID attribute, where ID value must exist in the corresponding tracking Xml within a ''<SensorCOSID>'' tag. |
{{Attention|If a texture is used for a geometry, the material (*.mtl file) and the texture (picture) must all exist in the same place in order for to have the 3D object displayed properly, Only the geometry has to be specified as a resource in the Action Mapping, though.}} | {{Attention|If a texture is used for a geometry, the material (*.mtl file) and the texture (picture) must all exist in the same place in order for to have the 3D object displayed properly, Only the geometry has to be specified as a resource in the Action Mapping, though.}} | ||
Line 102: | Line 108: | ||
3D objects can be displayed using the ''<GeometryAction>'' tag. The sub-tag ''<GeometryResource>'' defines the content and the parameters for displaying the 3D object. | 3D objects can be displayed using the ''<GeometryAction>'' tag. The sub-tag ''<GeometryResource>'' defines the content and the parameters for displaying the 3D object. | ||
+ | |||
+ | ==== UBIK-UID Tag ==== | ||
+ | |||
+ | Available since version 2.4.4: | ||
+ | Just like the UBIKObjectAction, this action allows the usage of a optional UBIK-UID tag, specifying the ID of a UBIK object. | ||
+ | If it is specified, the respective object is linked to this geometry; else, it is tried to find an object with a marker classification and the geometry action's tracking ID for it's marker id value. | ||
+ | When the user clicks on the geometry, a dialog is opened for the linked object (if found). | ||
==== GeometryResource Tag ==== | ==== GeometryResource Tag ==== | ||
Line 111: | Line 124: | ||
# '''RotationDegrees'''. if specified, the 3D object will be rotated by this value against the detected marker. | # '''RotationDegrees'''. if specified, the 3D object will be rotated by this value against the detected marker. | ||
− | * ''Resource path example'' | + | * ''Resource path example'' |
+ | <source lang="xml"> | ||
+ | pump/pump.obj | ||
+ | </source> | ||
* ''OffsetMillimeters example''. | * ''OffsetMillimeters example''. | ||
Line 132: | Line 148: | ||
=== Displaying movies === | === Displaying movies === | ||
− | Inside the ''MovieAction'' tag there can be two possible resources defined, a MovieResource and a PlayButton resource. | + | Inside the ''MovieAction'' tag there can be two possible resources defined, a '''MovieResource''' and a '''PlayButton''' resource. |
==== MovieResource Tag==== | ==== MovieResource Tag==== | ||
Line 146: | Line 162: | ||
... | ... | ||
</MovieResource> | </MovieResource> | ||
− | + | <PlayButton> | |
<Scale>150</Scale> | <Scale>150</Scale> | ||
<ResourcePath>plane/plane.obj</ResourcePath> | <ResourcePath>plane/plane.obj</ResourcePath> | ||
Line 152: | Line 168: | ||
<Z>3.14</Z> | <Z>3.14</Z> | ||
</RotationDegrees> | </RotationDegrees> | ||
− | + | </PlayButton> | |
− | + | </MovieAction> | |
</source> | </source> | ||
− | === Displaying | + | === Displaying an UBIK object dialog === |
− | The ''<UBIKObjectAction>'' allows to bring up a popup to navigate to | + | The ''<UBIKObjectAction>'' allows to bring up a popup to navigate to an {{UBIK}} object when scanning either a picture or an ID marker. The tag must contain the tracking ID attribute and, optional, the ''<UBIK-UID>'' tag. |
− | When configuring a tag without the ''UBIK-UID'' sub-tag, the object is searched based on the value of its ''MarkerID'' property, which is | + | When configuring a tag without the ''UBIK-UID'' sub-tag, the object is searched based on the value of its ''MarkerID'' property, which is compared to the value of the ''TrackingID'' attribute. If the ''UBIK-UID' tag exists the object is searched based on the value inside the ''UBIK-UID' tag. |
= Example = | = Example = | ||
Line 166: | Line 182: | ||
=== ID Marker Activity === | === ID Marker Activity === | ||
− | The | + | The ID markers used can be found at the following link {{FileLink|ID_Marker_Example_1_6.pdf|ID Marker Example Ids 1-6}}.<br> |
− | Having in mind the setup tracking | + | Having in mind the setup tracking IDs, you can now scan ID markers. |
− | * For an | + | * For an ID that has a 3D object mapped in the action xml, the object should be displayed on the screen as shown in the next picture. |
− | * If the | + | * If the ID has a video object mapped in the action xml, you should see a video object on the screen, depending on the existence of the play button. Clicking the play button starts the video. |
* If the play button exist you should see first see the play button, and after it's clicked the mapped video. If the play button doesn't exist, a movie preview image will be shown. Clicking the image starts the video. | * If the play button exist you should see first see the play button, and after it's clicked the mapped video. If the play button doesn't exist, a movie preview image will be shown. Clicking the image starts the video. | ||
=== Markerless Activity === | === Markerless Activity === | ||
− | The markerless photos used in this example can be found at the following link | + | The markerless photos used in this example can be found at the following link {{FileLink|Markerless_Examples._Pics_1-7.pdf|Markerless example pictures}}.<br> |
− | The scenario is very similar with the | + | The scenario is very similar with the ID marker activity with the only difference that instead of IDs you have to scan your tracking images. |
=== Results === | === Results === | ||
Line 197: | Line 213: | ||
:[[File:scanning_id6_movie.png|border]] <br> | :[[File:scanning_id6_movie.png|border]] <br> | ||
− | [[Category: | + | [[Category:Client|Configure Dynamic AR Content]] |
− | [[Category: | + | [[Category:How-To|Configure Dynamic AR Content]] |
− | [[Category: | + | [[Category:POI|Configure Dynamic AR Content]] |
Latest revision as of 09:28, 20 May 2015
The Dynamic AR Content feature allows the user to see different content according to a marker configuration. The configurable content are 3D objects, movies and UBIK® objects. Currently this feature is enabled for ID Markers and Markerless scanning, meaning image tracking. Therefore, every time the user has scanned an ID marker or a picture, the corresponding object (3D object, movie or UBIK® object) will be processed and, according to the configuration, displayed on the screen.