Search Unity

Addressables are here!

Discussion in 'Addressables' started by audrey-unity, Jun 15, 2018.

  1. unity_bill

    unity_bill

    Unity Technologies

    Joined:
    Apr 11, 2017
    Posts:
    955
    We got a prototype of it working a long while ago, but haven't had time to look at it again. So it should be possible for you to get it working, but odds are you'd need to jump through some hoops. Having out-of-the-box functionality should be coming next year (hopefully in the first half).
     
    rizu likes this.
  2. OscarLeif

    OscarLeif

    Joined:
    Jul 17, 2016
    Posts:
    7
    Hello I try addressables systems version 0.5.3 but I cannot create new labels.
    When I Right Click the labels it only appear the default label, while in most of the video tutorials there was an input text.
    I don't know if there is another way to create a new label.
     
  3. AAK_Lebanon

    AAK_Lebanon

    Joined:
    May 30, 2015
    Posts:
    59
    Sorry but I still cannot figure out how to use this system :( I am totally lost. I don't know if anyone can describe for me in simple steps what I am supposed to do, if I have let's say an app that I should deploy once to the app store, and that app, is simply an AR viewer, that can download augmented content (AR scene) for a specific image target.
    So I added my augmented scene to a group in the Addressable window. now let's say that I want to update the augmented scene, what I am supposed to do ?? should I build again the 'Player Content' ? and copy the output to the hosting server? and what is that button 'Prepare for the content update? and 'build for the content update? and why they asked me always about the 'addressables_content_state.bin' file?
    and when I should tick the 'Static Content' checkbox?
    and why I should put my assets into groups? as I know, I can change the active profile to a created one named let's say 'Remote Hosted' where I set the path to a remote location. so what are the benefits of creating a group named 'Remote Contents' for example?
     
  4. EG-Cookie

    EG-Cookie

    Joined:
    Dec 12, 2018
    Posts:
    6
    Hello everyone, I have a problem with this system ^^
    Yeah that's pretty common on a forum.
    I downloaded Trash dash project, and made the tutorial with it. But my goal was to test a problem I had on my project, undefined assembly when you use your own asm file. I added AdressableAssets reference, but it's telling me it need Unity.ResourceManager assembly :(
     
  5. EG-Cookie

    EG-Cookie

    Joined:
    Dec 12, 2018
    Posts:
    6
    Oh seems like it was there :
    Code (CSharp):
    1. "com.unity.resourcemanager": "2.4.4-preview"
     
    aurelien-morel-ubiant likes this.
  6. Milfeulle9

    Milfeulle9

    Joined:
    Aug 2, 2015
    Posts:
    6
    It seems this was moved to the AddressableAssetSettings object instead of the quick text field in the addressables window. It was pretty handy having it there so I hope it comes back.

     

    Attached Files:

    • addr.png
      addr.png
      File size:
      45.6 KB
      Views:
      354
    OscarLeif likes this.
  7. AAK_Lebanon

    AAK_Lebanon

    Joined:
    May 30, 2015
    Posts:
    59
    I think that the 'Prepare For Content Update" is not working (even the Build For Content Update). when it asks me about the "addressables_content_state.bin'" file, I select the one created in the project assets folder under the AddressableAssetsData folder (is that correct ?) and it shows me an empty window (that means that there is nothing to update ??) Knowing that I have made some changes in one of the remote prefabs. I also have a local group set to static (just in case, and I really don't know yet why I should mark a group as static)...
     
  8. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    207
    Its now time to begin working on this.

    I have a pooling system in place that pulls all objects into the game.

    it appears this would be a good injection point - it sounds like I don't need to manage the pooling any longer - is this correct?
     
  9. EG-Cookie

    EG-Cookie

    Joined:
    Dec 12, 2018
    Posts:
    6
    How do you work with subfolders and addressables guys?
    I mean I have a bunch of fbx and probably some config files inside subfolders of subfolders of... And when I drag and drop my main folder (which correspond to something logic in my game) only the folder become adressable and nothing inside it is.

    And this is the start of a larger problem:
    I have a program which load a lot of fbx shared across a lot of subfolders which have meanings and correspond to a specific part of the data structure. That's why I was loading part of the data struct knowing which subfolders or fbx I should load and used Ressource.Load on them. I think that loading the whole bunch of fbx async is interresting but I would need it to be loaded into a kind of map which the path as the key to not lose all the informations I need. I can drag and drop my folder and use "Simplify entries" to get key as path starting from my folder, which is nice. So how could I load all my data into a kind of map like I described?
     
    Last edited: Jan 5, 2019
    Milfeulle9 and MNNoxMortem like this.
  10. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    2,014
    The Addressables window doesn't appear to enforce any kind of uniqueness among Addresses. For example, I can set the Address of two assets to "ABC", and the UI doesn't care. If I try to LoadAsset("ABC"), only one of them loads, maybe randomly. This seems like a problem. I would have hoped to get a warning if I was about to duplicate some entries.

    I was excited about the "Simplify Entry Names" option when right clicking an address, but this could use a bit more customization to be really useful, such as an option to prefix the simplified address with the name of the group. If I try to simplify things right now, I'll just end up with a ton of dupes between the different groups.

    Could someone explain the scope of the behavior of Groups of a completely offline game? If I put two assets in a group, is an Asset Bundle created containing those two assets? And therefore, if I LoadAsset one of those assets, will that loads all of the contents of that group? I'm trying to understand how granular my groups should be.
     
    MNNoxMortem and AAK_Lebanon like this.
  11. AAK_Lebanon

    AAK_Lebanon

    Joined:
    May 30, 2015
    Posts:
    59
    upload_2019-1-10_14-55-11.png
     
    dgoyette likes this.
  12. AAK_Lebanon

    AAK_Lebanon

    Joined:
    May 30, 2015
    Posts:
    59
    Anyone knows what is that number in the profiler?

    upload_2019-1-11_14-15-39.png
     
  13. diego_mp

    diego_mp

    Joined:
    Jun 12, 2017
    Posts:
    23
    Any news about the problem with UnityBuiltInShaders?
    I am affected from this too.

    Cheers

    Diego
     
  14. xxTheStuFactorxx

    xxTheStuFactorxx

    Joined:
    Mar 6, 2017
    Posts:
    8
    I'm having a shader problem on Android when trying to load an addressable asset. IOS works fine and I rebuilt the assets for each platform. It's set to Packed. Is this a known issue?

    Screenshot_20190115-104424.jpg Screen Shot 2019-01-15 at 10.48.27 AM.png
     
  15. outer_dan

    outer_dan

    Joined:
    Jul 23, 2018
    Posts:
    3
    Which AA version are you using?
    I have a similar issue where all the sprites in one of my scenes have gone pink since I updated from 0.4.8 to 0.5.3. I've been trying to isolate the problem for 2 days to provide a repro sample... without success so far.
     
  16. xxTheStuFactorxx

    xxTheStuFactorxx

    Joined:
    Mar 6, 2017
    Posts:
    8
    0.5.3
     
  17. diego_mp

    diego_mp

    Joined:
    Jun 12, 2017
    Posts:
    23
    Are you running in packet mode?
    That error shows only in the editor if you run on a device it should be ok.
    Not ideal but it's something. Try to run in fast mode in the editor.
     
  18. xxTheStuFactorxx

    xxTheStuFactorxx

    Joined:
    Mar 6, 2017
    Posts:
    8
    That screenshot is from my mobile device.

    When I run in Packed mode in the editor it looks the same. Fast mode looks correct.
     
  19. diego_mp

    diego_mp

    Joined:
    Jun 12, 2017
    Posts:
    23
    Have you resolved the dependencies?

    Click Analyze then Fix All until you have no issue left.
     
  20. xxTheStuFactorxx

    xxTheStuFactorxx

    Joined:
    Mar 6, 2017
    Posts:
    8
    There are no dependencies. It's just the Andy Android model with a Mobile/diffuse shader. The same issue occurs when using a cube primitive with standard shader.

    I've been testing and moved it to default local group and same thing. I'm thinking this is android specific.

    IOS works fine
     

    Attached Files:

  21. diego_mp

    diego_mp

    Joined:
    Jun 12, 2017
    Posts:
    23
    I don't know without seeing the project. It looks ok for what I can see.
    I can tell you that I am running the project on a crappy Android and it works (after killing the UnityBuiltInShader, link) but I guess your problem could be different since I got a proper error that crashed the App.
     
  22. xxTheStuFactorxx

    xxTheStuFactorxx

    Joined:
    Mar 6, 2017
    Posts:
    8
    I created a new project that just spawns a cube. 'm assigning an AssetReference and instantiating it on Start.

    Code (CSharp):
    1. using UnityEngine;
    2. using UnityEngine.AddressableAssets;
    3.  
    4. public class SpawnAddressable : MonoBehaviour
    5. {
    6.     public AssetReference placeableObject;
    7.  
    8.     private void Start()
    9.     {
    10.         placeableObject.Instantiate<GameObject>();
    11.     }
    12. }
    13.  
    Works on IOS, not on android.

    In the editor I'm getting the following errors:


    Exception encounterd in operation UnityEngine.ResourceManagement.RawDataProvider+InternalOp`1[System.Object], result='', status='None', valid=True, location=LocalCatalogHash2e5effbde1b5c4ff6833b9119d03e8c4..
    UnityEngine.ResourceManagement.DelayedActionManager:LateUpdate()

    Exception: Invalid path in RawDataProvider: '/Users/sbuchbinder/Library/Application Support/DefaultCompany/Addressables/com.unity.addressables/catalog_2019.01.16.17.14.39.hash'.
    UnityEngine.ResourceManagement.DelayedActionManager:LateUpdate()
     
  23. MNNoxMortem

    MNNoxMortem

    Joined:
    Sep 11, 2016
    Posts:
    410
    @xxTheStuFactorx, stupid questions, but in any case: Have you made sure the load path is correct? Have you made sure to build the bundles for android as well?
     
  24. xxTheStuFactorxx

    xxTheStuFactorxx

    Joined:
    Mar 6, 2017
    Posts:
    8
    I believe the load path is correct. I'm just using the Packed Asset Group that you create by right clicking in the addressable window. The cube spawns but is magenta (pink). On IOS it looks correct

    I would upload the project but file size restrictions do not allow it. I will post a link shortly.
     
  25. xxTheStuFactorxx

    xxTheStuFactorxx

    Joined:
    Mar 6, 2017
    Posts:
    8
  26. xxTheStuFactorxx

    xxTheStuFactorxx

    Joined:
    Mar 6, 2017
    Posts:
    8
    It works using a custom shader!! I just renamed the mobile/diffuse shader and killed the fallback. So it's definitely a shader issue with AA and Android
     
  27. MNNoxMortem

    MNNoxMortem

    Joined:
    Sep 11, 2016
    Posts:
    410
    @unity_bill Could we get ANY timetable which is a bit finer grained as "Don't use it before mid 2019", "Use it after mid 2019".
     
  28. borispavlov0

    borispavlov0

    Joined:
    Apr 19, 2015
    Posts:
    2
    I have set up the Hosting server, and followed the steps here:



    But it doesn't do any of the things shown in the video. First I cannot get the server running properly and if I do a standalone mac client, none of the assets work. Same with local directories.

    I cannot get the "Prepare Content" thing to work. I have the .bin file from the previous build (I had to copy/paste this manually) but it never recognises that any of the prefabs have changed ever.

    Also, virtual mode works, but it always updates my assets to the latest one, even if I haven't pushed it to the "CDN" directory.
     
  29. unity_bill

    unity_bill

    Unity Technologies

    Joined:
    Apr 11, 2017
    Posts:
    955
    Looks like a couple of the comments here are asking me a question. The problem is that this thread has so many conversations going that I can't tell who has replied to whom about what.

    So if you have a question you're hoping I specifically will read and reply to, please make it into a dedicated thread. This one has gotten too convoluted for me to follow.

    -Bill
     
  30. D3m0n

    D3m0n

    Joined:
    Nov 11, 2014
    Posts:
    100
    Is it possible to retrieve by code the names of all the assets in a group of addressable? If it's possible, how?
     
  31. MNNoxMortem

    MNNoxMortem

    Joined:
    Sep 11, 2016
    Posts:
    410
    @D3m0n

    Code (CSharp):
    1. foreach (var group in AddressableAssetSettingsDefaultObject.Settings.groups)
    2. {
    3.   if("Blub".Equals(group.name)){
    4.     foreach(var entry in group.entries){
    5.       Debug.Log(entry);
    6.     }
    7.   }
    8. }
    Entry has all the information.
     
    D3m0n likes this.
  32. D3m0n

    D3m0n

    Joined:
    Nov 11, 2014
    Posts:
    100
    Thanks a lot!
     
    MNNoxMortem likes this.
  33. AAK_Lebanon

    AAK_Lebanon

    Joined:
    May 30, 2015
    Posts:
    59

    Actually, this will work only on the editor. if you want to get, let's say, the key at runtime, here is my code that I use:

    Code (CSharp):
    1. using System.Collections.Generic;
    2. using System.Linq;
    3. using UnityEngine.AddressableAssets;
    4.  
    5. public static class AddressablesUtilities
    6. {
    7.     static IEnumerable<string> keys;
    8.  
    9.     static AddressablesUtilities()
    10.     {
    11.         keys = Addressables.ResourceLocators.OfType<ResourceLocationMap>().SelectMany(locationMap => locationMap.Locations.Keys.Select(key => key.ToString()));
    12.     }
    13.  
    14.     public static bool IsKeyExist(string key)
    15.     {
    16.         return keys.Contains(key);
    17.     }
    18. }
     
    dd_ss, hopeful, D3m0n and 1 other person like this.
  34. AA-Matt

    AA-Matt

    Joined:
    Oct 1, 2016
    Posts:
    2
    Can Addressable assets be used to download variations of assets based on platform? For instance: can a texture deploying to Android device, that does not support ASTC texture compression format, fall back and download ATC or ETC2 versions?
     
    LarsGameloft likes this.
  35. Dawar

    Dawar

    Joined:
    Dec 7, 2014
    Posts:
    122
    Field of AIData not Show in inspector.just show Array indexes

    Code (CSharp):
    1. public class MissionAIData : ScriptableObject {
    2.  
    3.     public AssetReferenceGameObject Asset;
    4.     public AIData[] AIData;
    5. }
    6.  
    7. [Serializable]
    8. public class AIData
    9. {
    10.     public List<AssetReference> aaa = new List<AssetReference>();
    11.     [SerializeField]
    12.     public AssetReferenceGameObject uu;
    13. }
    14.  
    Screenshot 2019-02-22 at 11.52.42 PM.png
     
    D3m0n likes this.
  36. Rotary-Heart

    Rotary-Heart

    Joined:
    Dec 18, 2012
    Posts:
    481
    It's a known bug: https://forum.unity.com/threads/assetreferencedrawer-does-not-dirty-the-serialziedproperty.568894/
     
  37. Dawar

    Dawar

    Joined:
    Dec 7, 2014
    Posts:
    122
  38. D3m0n

    D3m0n

    Joined:
    Nov 11, 2014
    Posts:
    100
    Yeah, same problem.
     
  39. m-nakayama

    m-nakayama

    Joined:
    Jun 12, 2018
    Posts:
    8
    When do you release Version 1.0.0 ?
     
    apexsoftworks and LeonardoADS like this.
  40. Dawar

    Dawar

    Joined:
    Dec 7, 2014
    Posts:
    122
  41. aaaaa6224

    aaaaa6224

    Joined:
    Sep 19, 2017
    Posts:
    5
    help!!

    i want change to [AddressableAssetSettings Profile Entries value] with server value at running App!!

    can i this?
     

    Attached Files:

    Last edited: Feb 28, 2019
  42. MrCool92

    MrCool92

    Joined:
    Jul 13, 2015
    Posts:
    15
    You can make a static getter for Version like for BuildTarget.
     
  43. aaaaa6224

    aaaaa6224

    Joined:
    Sep 19, 2017
    Posts:
    5
    I want to change RemoteLoadPath during application execution.
    eg)
    RemoteLoadPath: http: // localhost / iOS /
    URL at Runtime: http: //localhost/iOS/v1.0.0/

    v1.0.0 is an assumption of a character string retrieved from the server.
     
  44. MrCool92

    MrCool92

    Joined:
    Jul 13, 2015
    Posts:
    15
    something like this...

    Code (CSharp):
    1. public class GameVersion
    2. {
    3.     public static string Version { get { return "1.0.0"; } }
    4. }
    upload_2019-2-28_10-2-5.png

    edit: oh now I see.. you can have editor only version getter like this
    Code (CSharp):
    1.  public static string Version
    2.     {
    3.         get
    4.         {
    5. #if UNITY_EDITOR
    6.             return "";
    7. #else
    8.             return "1.0.0";
    9. #endif
    10.         }
    11.     }
    this gives you "http://localhost/iOS/" in editor and "http://localhost/iOS/1.0.0" in build

    I think you can't change profile paths directly in addressable settings in runtime (well maybe only with reflection - someone correct me if I'm wrong). Just use your custom defined variables like Version in this example to get different paths...
     
    Last edited: Feb 28, 2019
  45. aaaaa6224

    aaaaa6224

    Joined:
    Sep 19, 2017
    Posts:
    5
    tttthx!!!!

    i try this!
     
  46. AlkisFortuneFish

    AlkisFortuneFish

    Joined:
    Apr 26, 2013
    Posts:
    673
    You can, by loading custom settings and/or catalogue files. The way we deal with this is by disabling autoinitialization of the addressables system, initialising it with an empty settings file then loading settings files that we obtained from our server manually.
     
    MNNoxMortem and MrCool92 like this.
  47. Quatum1000

    Quatum1000

    Joined:
    Oct 5, 2014
    Posts:
    724
    The Addressables need a separate forum entry as fast as possible. Here some very critical issues addressed and also logical important questions and statements, but they are completely lost.

    Anther ugly thing is, if you can't decide if its a bug or simply a code logic issue. I download nearly all project files here are posted to see how the stuff should work. Would very efficient for all devs here if ppl upload a tiny project zip on having issues, if possible. I' assured other devs will help as well, and the uploader get help faster then waiting until the unity devs have some time to.

    And for the unity devs its also much easier to recognize the importance if a lot ppl apply to a thread.
     
  48. AlkisFortuneFish

    AlkisFortuneFish

    Joined:
    Apr 26, 2013
    Posts:
    673
    Ehm...

    addressablesforumpath.PNG
     
    MNNoxMortem likes this.
  49. ecurtz

    ecurtz

    Joined:
    May 13, 2009
    Posts:
    612
    This really should be built in. It's absurd for every single project to implement their own manifest/catalogue on top of the addressable system.
     
    MNNoxMortem likes this.
  50. AlkisFortuneFish

    AlkisFortuneFish

    Joined:
    Apr 26, 2013
    Posts:
    673
    By custom I do not mean our own ones, I mean different versions of the ones the addressables system produces. In our case, the catalogues are pointing to different servers, versions etc. Agreed though, there should be a nicer way of doing this.
     
    MNNoxMortem and ecurtz like this.