Search Unity

  1. Engage, network and learn at Unite Austin 2017, Oct 3 - 5. Get your ticket today!
    Dismiss Notice
  2. Introducing the Unity Essentials Packs! Find out more.
    Dismiss Notice
  3. Check out all the fixes for 5.6 on the patch releases page.
    Dismiss Notice
  4. Unity 2017.1 is now released.
    Dismiss Notice
  5. Unity 2017.2 beta is now available for download.
    Dismiss Notice

The new spriteatlas always change make the version control conflict very easyly.

Discussion in 'Unity UI & TextMesh Pro' started by watsonsong, Sep 12, 2017.

  1. watsonsong

    watsonsong

    Joined:
    May 13, 2015
    Posts:
    141
    The spriteatlas in 2017 is good for the artist pipeline. But it met some problem in daily usage.
    When I create a spriteatlas, and specify the folders it need to pack. But the spriteatlas not just store the folder, but also the GUID of each sprite in the folder.
    So when I commit this spriteatlas onto the version control system, and the other two people add different image to this folder, the spriteatlas will different in the two person's computer. When they commit they work without touch any about the spriteatlas, the spriteatlas will make conflict.
    It really make the work pipeline hard, and we consider to drawback to the sprite tag solution.
    Is there any way to resolve this?
     
  2. ykurokawa

    ykurokawa

    Unity Technologies

    Joined:
    Jan 6, 2016
    Posts:
    1
    Is the conflict like this?
    ======
    - Hash: 9c993de5b783baff11adfa162e2984ab
    + Hash: ddcb887be55d6403f1baafd598828e22

    - hashString: 9c993de5b783baff11adfa162e2984ab
    + hashString: ddcb887be55d6403f1baafd598828e22
    ======

    The "Hash" is calculated when the spriteatlas is packed.
    If each of you work on same target platform and same OS( Editor is running) , there is no problem.

    However working on different target platform or different OS( Editor is running) , different "Hash" will be generated.

    > Is there any way to resolve this?

    The simple way is changing the Sprite Packer Mode to None.spriteatlas won't be packed , and won't conflict...
    ( *plaese turn on when you build packages or assetbundles)
     
  3. watsonsong

    watsonsong

    Joined:
    May 13, 2015
    Posts:
    141
    Yes I met this conflect. So I can not Always Enabled in Sprite Packer Mode, but using Only Enabled For Building.
    But this result I can not see the correct draw call for my game, as the ugui will not combine drawcall anymore. The the performance for render and ugui rebuild is not correct in editor mode.