Search Unity

Unable to create User defined targets

Discussion in 'Vuforia' started by ak1132, Nov 27, 2018.

  1. ak1132

    ak1132

    Joined:
    Nov 27, 2018
    Posts:
    1
    I am trying to create a User Defined target on runtime using the below script.


    Code (CSharp):
    1. using System.Collections;
    2. using System.Collections.Generic;
    3. using UnityEngine;
    4. using Vuforia;
    5.  
    6. public class UserDefinedTargetScript : MonoBehaviour,IUserDefinedTargetEventHandler {
    7.  
    8.      UserDefinedTargetBuildingBehaviour userTargetBuildingBehaviour;
    9.      ObjectTracker objectTracker;
    10.      DataSet dataSet;
    11.  
    12.      ImageTargetBuilder.FrameQuality globalFrameQuality;
    13.      int track = 0;
    14.  
    15.     public ImageTargetBehaviour imageTargetBehaviour;
    16.  
    17.     void Start()
    18.     {
    19.         userTargetBuildingBehaviour = GetComponent<UserDefinedTargetBuildingBehaviour>();
    20.         if (userTargetBuildingBehaviour != null)
    21.         {
    22.             userTargetBuildingBehaviour.RegisterEventHandler(this);
    23.         }
    24.     }
    25.  
    26.     public void OnFrameQualityChanged(ImageTargetBuilder.FrameQuality frameQuality)
    27.     {
    28.         globalFrameQuality = frameQuality;
    29.     }
    30.  
    31.     public void OnInitialized()
    32.     {
    33.         objectTracker = TrackerManager.Instance.GetTracker<ObjectTracker>();
    34.         if (objectTracker != null)
    35.         {
    36.             dataSet = objectTracker.CreateDataSet();
    37.             objectTracker.ActivateDataSet(dataSet);
    38.         }
    39.     }
    40.  
    41.     public void OnNewTrackableSource(TrackableSource trackableSource)
    42.     {
    43.         track++;
    44.         objectTracker.DeactivateDataSet(dataSet);
    45.  
    46.         dataSet.CreateTrackable(trackableSource, imageTargetBehaviour.gameObject);
    47.  
    48.         objectTracker.ActivateDataSet(dataSet);
    49.  
    50.         userTargetBuildingBehaviour.StartScanning();
    51.     }
    52.  
    53.     public void BuildTarget()
    54.     {
    55.         if(globalFrameQuality == ImageTargetBuilder.FrameQuality.FRAME_QUALITY_HIGH)
    56.         {
    57.             userTargetBuildingBehaviour.BuildNewTarget(track.ToString(),imageTargetBehaviour.GetSize().x);
    58.             GetComponent<NNConnector>().SendDatatoModel();
    59.         }
    60.     }
    61.    
    62. }
    63.  
    I am unable to start my camera and receiving the below error :

    Dataset target could not be loaded and cannot be activated.
    UnityEngine.Debug:LogError(Object)
    Vuforia.DatabaseLoadARController:LoadDatasets()
    Vuforia.VuforiaARController:StartAfterInitializationCompleted()
    Vuforia.VuforiaARController:UpdateState(Boolean, Boolean)
    Vuforia.DigitalEyewearARController:Update()
    System.Delegate:DynamicInvoke(Object[])
    Vuforia.DelegateHelper:InvokeDelegate(Delegate, Object[])
    Vuforia.DelegateHelper:InvokeWithExceptionHandling(Action)
    Vuforia.VuforiaBehaviour:Update()

    Attached is the vuforia configuration.
     

    Attached Files:

  2. meedabit

    meedabit

    Official Vuforia Employee Vuforia

    Joined:
    Dec 8, 2016
    Posts:
    266
    Hello,

    How does your script compare to our sample code?

    Thanks,
    Vuforia Engine Support