Search Unity

Some requests and questions

Discussion in 'Addressables' started by mf_andreich, Jul 22, 2018.

  1. mf_andreich

    mf_andreich

    Joined:
    Jul 7, 2017
    Posts:
    38
    First of all... Nice work guys! This system still buggy sometimes... But its very intresting and useful! Our team want use it and we start research some points. And now I can ask some questions (and if answer is "no its not possible right now" question transform to request automaticly)... And yes, sorry for my bad English... its not my native language I prefer use it in "read only" mode =)

    Questions:
    1. No syncs? I suppose that really no... But its trully needed. Yes, async operations very powerfull... but sometimes we dont care about lags, we just need load object right now and let main thread wait for it. I think its very important. I see that your async operations its IEnumarator... So if I iterrate it in C# plain while cicle instead courotine... Its will work fine or its will be broken?
    2. How I can get list of all labels in editor? Yes I can Add and Remove labels... but not get full list... Its strange.
    3. How I can get all IResourceLocation (or something simillar) with some label (better than if with set of labels) attached? For example if I need load object labeled with 3 different labels... I dont know how I can achive that.
    4. How I can get something like IResourceLocation with information which labels attached to it? Its usefull in case when I need get all locations with "RoomPreset" labels and select from it only "Graveyard" lebeled for examle...
    5. How I can get in runtime information about groups (get all IResourceLocation from group, get IResourceLocation by label/labels etc)?
    6. How I can use analogue of AsyncOperation.allowSceneActivation with your system? Yes load scenes without dirty bundle work its nice, but in most case I want know that my scene almost loaded, I need fade out my load screen... activate scene and continue work.
    Its look like all questions on that moment. =)
     
  2. unity_bill

    unity_bill

    Joined:
    Apr 11, 2017
    Posts:
    1,053
    Thanks for the feedback..

    1. No sync, but we realize this is a common request. We are looking into the various ways to setup a waiting system
    2. You mean you have editor code that needs all the labels? Or at runtime you need the full list? Runtime would be harder for us to provide. At edit-time, I believe we currently have that hidden as "internal" because we haven't locked in an API. So we should eventually expose that, but haven't been ready yet.
    3. There are two parts to this. First, LoadAsset can take an IList of keys (addresses, labels, whatever), and can return items that match any or all keys. If you use MergeMode.Intersection you'll only get the assets that match all labels. Secondly, to get the IResourceLocation instead of the asset itself, you can just use that type of LoadAsset... LoadAssets<IResourceLocation>(). This will "load" the location (not the asset itself).
    4. We don't have something like this for now. If you do LoadAssets<IResourceLocation>() with both labels sent in, that can give you only the overlap. But you cannont do LoadAssets with one label, then later reduce the set yourself. We are looking into ways to do something like this.
    5. Similarly we don't have something like this now, but we are considering it.
    6. Right now we've hidden most options on the loading operations for simplicity (things like what you've mentioned, as well as bundle caching). We intend to expose those but are working on solidifying the base API first, before extending it.

    Thanks for your feedback, we'll be sure to note the items above that are requests,
    Bill
     
    optimise likes this.