Search Unity

  1. If you have experience with import & exporting custom (.unitypackage) packages, please help complete a survey (open until May 15, 2024).
    Dismiss Notice
  2. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice

Is the Pipeline API the central interface to Reflect?

Discussion in 'Unity Reflect' started by garrido86, Nov 30, 2020.

  1. garrido86

    garrido86

    Joined:
    Dec 17, 2013
    Posts:
    233
    Once importing the Unity Reflect package, there is the ability to additionally import the Pipeline API samples.
    Unfortunately there is no further explanation what the central interface is with the Reflect SDK. Is the Pipeline API the central place? Where is the documentation/tutorial that comes along with the Pipeline API samples?

    I have a hard time finding a proper starting point that explains the core concepts with the Unity Reflect SDK.
     
  2. Murray_Zutari

    Murray_Zutari

    Joined:
    Jun 1, 2017
    Posts:
    45
    Hi Garrido86. If you are looking to write your own tools that act on the metadata coming in with the model, look at the 'Metadata Soft Filtering' sample and use those scripts to model your own nodes. You will seen the MetadataSoftFilterNode subscribes to a couple events at line 18 & 19. This I've found to be a decent access point into the pipeline. Personally I'm just looking for the metadata component of each object and then looking for specific data in each. So the OnGameObjectEvent is where I plug in my custom nodes and subsequent logic into the pipeline. Hope that helps.
     
    garrido86 likes this.
  3. garrido86

    garrido86

    Joined:
    Dec 17, 2013
    Posts:
    233
    I figured that out but I'm using the generated Prefab from the Reflect Importer and in that case I'm not directly using the Pipeline but I still need a way to query the Meta Data from a central place/API.
     
  4. Murray_Zutari

    Murray_Zutari

    Joined:
    Jun 1, 2017
    Posts:
    45
    Oh, so if I understand you correctly you've just imported the model directly to the editor, you are not trying to work with model that is being streamed in at run time? In your case, can you not just do a GetComponent call for the metadata on each syncobject and then do metadata.GetParameter() calls to get the actual data you want?
     
  5. garrido86

    garrido86

    Joined:
    Dec 17, 2013
    Posts:
    233
    Correct, I can do that and I also mentioned that in this other Thread as a last "fallback" option so to speak.

    But here is the thing, I realized that the MetaData-Explorer editor window from the Reflect-Extensions can also filter through an existing Prefab and looking through its code it even seems to using the ReflectMetadataManager which is strange, because the ReflectMetadataManager uses the Pipeline. So there is some kind of magic going on which I don't understand and that's why I'm bit reluctant to roll-out my own little Query-manager.

    //Edit
    I implemented now my own solution, but I rather liked to not have spending time on that when paying top-dollars for Reflect.
     
    Last edited: Dec 3, 2020
  6. FredMoreau

    FredMoreau

    Unity Technologies

    Joined:
    May 27, 2019
    Posts:
    171
    Hey,

    if all you want is to query all metadata and filter them, you can grab all metadata components.
    Taking a look at the Metadata Explorer (the other one) from the Reflect Extensions, will provide you with info.

    Hope this helps.
    Cheers,