[Released] Draconus Icon Manager - Build icons made easy

Introducing

Draconus Icon Manager (DIM)

DIM in Asset Store | DIM Documentation

DIM Introduction (Youtube)

What is DIM?

Draconus Icon Manager is a tool for generating all high-quality build icons for your chosen platforms.

Some features and highlights:

• Easily generate all the icons for all platforms

• Superior image quality over Unity’s own scaling

• Add optional background and mask

• Supports Photoshop PSD files natively!

• Use PSD layers, masks and slices

• Directly use icon templates without extra exporting (Such as appicontemplate.com)

• Support for custom platforms

Who is DIM for?

Draconus Icon Manager is meant for anyone who wants to create and maintain build icons for multiple platforms easily. DIM shortens the time and extra steps you need to take to generate high quality build icons, so artists can use it to iterate their icon designs more easily.

One Icon for All Platforms

Use the same icon for multiple platforms, and decorate it with background and mask to have consistent look on each platform. For example iOS doesn’t support alpha, so if you have an icon with alpha, for iOS you can combine the icon with a background image. And to have that same look on Android as well, you can cut the combined icon with a mask.

Simple and Easy to Use

The UI is designed to be a minimalistic and easy to use. To generate all icons for standalone build from your own icon, you only need to drag the icon to place, enable “Generate Icon” checkbox and hit “Generate”.

You only need to maintain one high resolution source icon and have all the other icons generated from that. We recommend the resolution for the source icon to be at least 1024x1024 in size.

DIM helps you to set up correct texture format for your icons, and if you use the PSD support, you don’t even need to worry about that.

Native PSD Support

Thanks to the technology developed for our texture utility library (DTU), the Draconus Icon Manager is capable of reading Photoshop PSD files natively. This enables you to keep your icon designs in one single PSD file including masks and backgrounds.

Also thanks to the support for PSD slices, you can use icon templates such as one from AppIconTemplate.com to design the icon in Photoshop to finest detail, and the use that directly in DIM without need to export scripts or extra steps.

Support for Splash Screens

DIM also supports splash screens!

Simply choose a high resolution source image and specify supported splash orientations, and let DIM do the hard work for you!

Image Quality

Did you know how the built-in icon scaling work in Unity? It resamples the texture you add to build settings using nearest neighbour sampling, uses mipmaps and compressed textures. That is a recipe for disaster! High resolution uncompressed texture will actually look worse than compressed texture with mipmaps enabled due to heavy aliasing that happens in the filtering.

DIM, on the other hand, utilizes state-of-the-art Lanczos filtering to achieve best possible quality when scaling down your original icon. The filter has natural sharpening built in it, so resized images look sharp and crisp, preserving the details of full-size icon - even at very smallest icon sizes.

Version History

Version 1.3.1

  • NEW: iOS platform now includes a 512x512 AppStore icon for AppStore deployment
  • NEW: Android platform now includes a 114x114 Amazon Appstore icon for Amazon deployment
  • FIX: Invalid icon and splash descriptions for Unity 5.1
  • FIX: NPE when generating icons from scratch for Android

Version 1.3.0

  • NEW: Support for BlackBerry

  • FIX: WindowsStore jpg option was causing filename to grow with _jpg string indefinitely

  • FIX: WindowsStore square tiles were used in erroneously some icons

Version 1.2.3

  • FIX: WindowsStore splash 180% has now correct dimensions (1116x540, was 1116x548)
  • FIX: WindowsStore phone splash 140% is now using correct internal id (was using WindowsStore splash 140%, causing setting the splash texture to be rejected)

Version 1.2.2

  • FIX: WindowsStore platform page was failing because of bug in filesize check.

Version 1.2.1

  • NEW: Clicking generated icons and splashes now highlights them in the project view
  • FIX: Generated iOS splashes were misplaced in PlayerSettings

Version 1.2.0

  • NEW: Support for Windows Store (and Phone)
  • UPDATE: Minor tweaks to UI

Version 1.1.3

  • FIX: Fixed a startup crash on Unity 4
  • UPDATE: Assembly for Unity 4 version matches the assembly for Unity 5

Version 1.1.2

  • UPDATE: iOS version no longer generates the shared mobile splash (320x480)
  • NEW: Android version now supports splash screen generation with no resizing
  • NEW: Added support for “Force Empty Splash” in the splash screen settings for each platform for overriding the defined splash with a black, 32x32 texture. Can be used to hide the splash in case you’ve using a custom bootloader scene.

Version 1.1.1

  • FIX: Added an error message when there’s nothing to do instead of nothing happening
  • FIX: Fixed some issues with building splashes regading iOS Pro license
  • FIX: Fixed bug where setting the splash screen PSD layer actually set PSD layer for source icon

Version 1.1.0

  • NEW: Support for Standalone resolution dialog banner, and iOS splashscreens
    (mobile splash screens require mobile Unity Pro licenses)

Version 1.0.1

  • Fixed a crash bug

Version 1.0.0

  • Initial version submitted to Asset Store

Got Interested?

Check out our documentation at http://tools.draconus.com/dim and the introduction video.

*Available now in Unity Asset Store!*

Hi!
I just got your package and when I open Xcode and go to the Images.xcassets it didn’t put icons in 9 of the slots

Hi, and thanks for purchasing DIM.

By default DIM only generates the icons Unity supports for iOS. In Unity 4.6.1p1 those icon sizes are 57x57, 72x72, 76x76, 114x114, 120x120, 144x144, 152x152 and 180x180. It seems that Unity ignores the Settings and Spotlight icons, and lets iOS do the scaling. This is not optimal but to my knowledge it should prevent you from submitting the app. It’s been while since I last did an iOS submission so unfortunately I don’t have the latest knowledge on this…

It might be possible to make an improved version for support for iOS in DIM, but as I’m not at the office and don’t have access to a Mac, I cannot work on this other than make a custom iOS platform support for DIM for you to try. This will generate the missing icons, but it can’t assign them in xcode for the time being.

EDIT: Currently custom platforms are not supported due to some major changes to the API. If you want to get your custom platform suported, please contact us at support@draconus.com

Okay, here is the extended iOS platform support script that will generate the missing icon sizes (29x29, 58x58, 40x40, 80x80, 50x50 and 100x100).
Just copy this script somewhere in your Assets folder under a Editor folder, e.g. MyProject/Assets/Editor or MyProject/Assets/DIM/Editor
After the scripts have compiled, you should see this new platform in the DIM window:
This script will only generate the icons and they get stored in the Assets folder. Depending on your new file saving policy they will be either in Assets/ root or some other place you’ve moved your generated icons into.
The new icons won’t be included in the xcode project at the time being so you will need to assign them manually. I will need to investigate how to make them included automatically (probably using some PostProcessBuild attribute…)
I hope this helps for now!
BTW there is also a custom script for BlackBerry, too.
At some point these “custom” platforms will be included in the assembly but as I haven’t been able to test everything yet I didn’t want to add them. If somebody needs support for Xbox/XBone/PS3/PS4 or so, just send me a message!

Awesome!
Yea if it could auto assign every size in Xcode that would be really cool.

Another awesome feature would be if it could take care of the splash images.
I don’t really know much about splash images, but it looks like there are a bunch of different sizes and it would be awesome if DIM could handle those too.

Yeah I’ve been thinking about the splash images, too, and it would kind of make sense. Making the splashes requires a bit different approach so I’m not sure if it should be included in DIM. Using splashes requires Unity Pro, and generating different splash screens requires more than just scaling down a square texture. You would need cropping and such.

But we will see how it turns out :slight_smile:

The latest version now includes support for splash screens. You can generate full iOS splashscreens, the one shared mobile splash screen (to be used by Android) and desktop resolution dialog banner.

Introduction to DIM splash screens:

I cannot generate for Windows Store. Everything is set, but I got this error:

ArgumentException: An empty file name is not valid.
System.IO.FileSystemInfo.CheckPath (System.String path) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.IO/FileSystemInfo.cs:255)
System.IO.FileInfo…ctor (System.String fileName) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.IO/FileInfo.cs:58)
(wrapper remoting-invoke-with-check) System.IO.FileInfo:.ctor (string)
DIMTargetPlatform_Internal_WindowsStore.GetTextureForSP (UnityEditor.SerializedProperty sp, System.Boolean& oversize)
DIMTargetPlatform_Internal_WindowsStore.GetIconDefinitions ()
DIMWindow.t ()
DIMWindow.o ()
UnityEngine.Debug:LogException(Exception)
DIMWindow:hushed:()
DIM.g:h()
UnityEditor.EditorApplication:Internal_CallUpdateFunctions()

Using Unity 5 - Personal Edition

Hi, I was able to pinpoint the problem. Can you contact us at support@draconus.com and I’ll send you an updated version.

Version 1.2.2 has been submitted to Asset Store that fixes that FileInfo error.

Edit: It’s now live

I was not able to create Icon using Unity 5.1. I got this error when I click GENERATE.

NullReferenceException: Object reference not set to an instance of an object
DIMWindow.p (Int32 a, System.Int32& a, .PlatformSettings a, Nullable`1 a, DIMTargetPlatform a)
DIMWindow.o ()
UnityEngine.Debug:LogException(Exception)
DIMWindow:o()
DIM.g:h()
UnityEditor.EditorApplication:Internal_CallUpdateFunctions()

Any advice?

Thanks Cezar, I send you a reply via email.

This has been fixed and submitted (version 1.3.1). It will take some unknown amount of time for Unity to process it, so if anyone needs the fixed version sooner, please contact us at support@draconus.com

Thanks!

Well… I use icons with a border and alpha for iOS/Android but for Windows Store the icons should not have border at all.

It will be possible to configure a different icon for WindowsPhone/WindowsStore different from another platforms?

I assume the border is a graphic that is a part of the actual icon, right? And having the border on square non alpha icon wouldn’t then make sense. I think I get it.

Currently it’s not possible to override the icon per platform, but that has long been in my backlog. I’ll try to get that done asap!

Hi!
This asset is not working anymore on Unity 5.3.

Please, fix it, I can’t live without it! =)

Property not found for metroPackageLogo
UnityEngine.Debug:LogError(Object)
DIMTargetPlatform_Internal_WindowsStore:AddTempIcon(SerializedObject, List`1, MethodInfo, String, String, String, String, Int32, Int32, Int32, String)
DIMTargetPlatform_Internal_WindowsStore:GetIconDefinitionsImpl()
DIMTargetPlatform_Internal_WindowsStore:GetIconDefinitions()
DIMWindow:ap()
DIMWindow:l(Int32)
DIMWindow:k()
DIMWindow:OnGUI()
UnityEditor.HostView:OnGUI()

Hi, thanks for your message. To be honest I don’t know what’s going on with Unity 5.3. I tried checking out the platform settings for Windows Store, but they’re not longer there.

In the build settings I can see Windows Store, but it says “Windows Store module not loaded”. When I click the Module Manager, I can see bunch of modules but I don’t see Windows Store there. No info in the net how to get such module. In fact, the whole Module Manager system became as a surprise to me :frowning:

Can you verify that you’re able to make Windows Store builds at all, and if so, how do you get them to build?

Cheers,
Sampsa

When installing Unity, you need now to select to download Windows Store Modules, among others. Only Win32 is by default installed now.

2460224--169203--install.jpg

Yeah I figured it out pretty soon after sending that message. I’ve been refactoring the DIM now, but it will still take it bit of time. Unfortunately Unity keeps changing the API regarding icons and splashes quite often, and things break down. And because I need to support multiple Unity versions (even inside Unity 5 there are a lot of API changes) AND dll’s cannot have version specific code in them… the only solution is to use reflection, and it ain’t pretty :wink:

Anyway, I’m working on it. Should be done by the end of the week. Sorry for the delay.

How can I access this file: tools.draconus.com/dim/DIMTargetPlatform_iOSExtended.cs ? I doesn’t work, I want to add more size options. Thank you.

Is there a new update planned for Unity 5.4? I still got errors when creating icons for Windows Store.