A week had already passed by from releasing Stickman World to the App Store and I couldn't stop wondering about a conversation I had with a fellow developer about what kind of features specific to the iOS platform could help my game do something more, something that would also attract more attention, or something that at the end of the day was just cool and I would use even for my own benefit.
Well when I say my own benefit I really meant it, I never ever make phone calls anymore, I feel that phone calls are those things I do when I really need to get on the phone to make an appointment or it is really required, but other than that I am text messaging everyone for the most part.
What kind of things do we all do when we text message people?
Yes we send text, images, and A LOT of emoticons! we're millennials, we want to find the shortest way to communicate our feelings and also if you're not millennial it also applies to you.
We now live in a society where time is so valuable and sending a happy face has so much meaning than typing a long sentence or you may even be in a hurry, anyways you get my point.
After realizing that I had to do something with text messaging I asked myself the following question:
Why don't I just add Stickers to Stickman World ?
I already had added a new iOS target to my game which was to support WatchOS which you can read here if you haven't done so already, but to keep on this topic, adding a Sticker target didn't seem to be too challenging to me, instead it excited me to be able to create my own Stickers while using my own game assets.
How to create a Stickers target in iOS while using Unity3d ?
By now you more likely have built your iOS application dozen times, you've built to your iOS device or even to the simulator, but if you haven't follow step 1-2 otherwise start right from 3 below:
- Make sure all of your scenes are added under File > Build Settings
- Under File > Build Settings > Select iOS > Build And Run - and select the location of your Unity game build directory.
- Open the generated XCode project called "Unity-iPhone.xcodeproj"
- Within XCode go to File > New > Target - then select Sticker Pack Entension
- Provide a name for your Sticker Pack Entension which normally should be similar to your game name. For instance do "[GAME_NAME] Stickers" then replace [GAME_NAME] with your real game name.
- Click finish and a newly target will be created.
- Under the project navigator find your "[GAME_NAME] Stickers" folder then expand it and click on "Stickers.xcassets", this file contains a "iMessage App Icon" and also a "Stickers Pack" folder which is where you will add all of your sticker files to. By default the "Stickers Pack" folder can be used to add single frame images (or images that do not animate) - if you want to have animations just right click on the "Stickers Pack" folder and select "New Sticker Sequence" - here you will be able to add all the frames for your sprite animations.
- Determine which sizes works best for your content. The following sizes are available and supported by iMessage:
- Small size - 300px × 300px
- Regular size - 408px × 408px
- Large size - 618px × 618px
- Add your Stickers to the "Stickers Pack" folder and then run the iOS application to test your new stickers!
- Create your own Stickers project in XCode and follow previous step 4-9 if you rather isolate your Stickers project testing from Unity. This way also allows you to quickly test your Stickers through the simulator.
- Keep a folder in source control specific to your Sticker(s) project. In my case I have few folders now:
- StickmanWorld_iOS (This gets generated by Unity - Not in Source Control)
- StickmanWorld_WatchOS (Manually created project - In Source Control)
- StickmanWorld_iMessage (Manually created project - In Source Control)
- Keep a PSD file containing your Stickers. I keep one called Stickers and inside I have 12 layers, where each layer is a different Sticker.
Well that's honestly all about Stickers with Unity3d and I hope you found this helpful as I did by going through this process a couple of times.
Thank you for your time and don't forget to subscribe to my newsletter, also be sure to find me at @dilmerv and stop by and say hi as I love to chat with everyone.