Pages

Sunday, April 30, 2017

Unity3D - UI Sprite Manager

Introduction

After spending some years in Game Industry, I realize managing sprites in large projects is a headache, as artists have to iterate images a lot to make them better, cool and according to demand. While developers have to integrate those images and to show the feel of those images in the game.

Also, due to this hassle, artists and developers choose a messy workaround, and instead of working in sprite sheet, they start working in individual sprites.

Purpose

In big Unity projects, artists have to modify images frequently to make it better, and developers have to reflect that change, as the old reference becomes Missing (if the name of the updated sprite is not the same)

Unity Asset Store Link

http://u3d.as/PKH 

Features

  • Easily make reskin of your game, if the game is made using UI Sprite Manager
  • Promotes the use of sprite sheet/atlas
  • Get full use of sprite sheet and packaging tag
  • Decrease the size of your game using sprite sheet
  • Place images anywhere in Assets/, as if the images are placed in Assets/Resources packaging tag don't work
  • Still you can change the sprite on runtime with ImageExtension public methods
  • Easy to use, Plug n play
  • Open Source code without any DLL
  • Done by using asset file and extending Image component

Usage

  • Import plugin
  • Add enum against your sprite in SpriteEnum.cs
  • Add respective sprite in SpriteData.asset file
  • Now, just add component ImageExtension.cs instead of Image in Unity UI and use it as is










Remember

  • Just drag UISpriteManager.prefab in the first scene and it will persist 

Special Thanks

  • All the users who provide feedback and suggestions to improve
  • All the users who gave reviews on Asset store


Thanks for your support!

7 comments:

  1. Is it possible to use this extension to handle switching HD/SD assets at runtime ?

    ReplyDelete
    Replies
    1. No. Right now, in the extension you have to drag & drop you images in edit mode to place them in runtime.

      By the way, you introduced a really good feature, I will give it in the update (coming really soon, stay tuned). But in that case, you can't use the sprite sheet, then you have to use single sprites. Thanks!

      Delete
    2. I'm trying to find a way to load assets on demand from server or disk cache, do you have any idea how I could do that with unity ? (I need sprite sheet support)

      Delete
    3. TexturePacker (https://www.codeandweb.com/texturepacker/unity) seems to work in your case

      Delete
    4. thank you very mush, i'll try this out

      Delete

Your valuable comments are appreciated...!