I’m an animator and acting Project Manager of an interactive storybook project in Unity. I need to understand the various degrees of difficulty for the following tasks on the following platforms for my Unity project (because I am about to solicit bids for the scripting work):
iOS:
Pinch-zoom
Swiping to page-turn (when each page is a different Unity scene)
Linking to the app’s own iTunes page to prompt “gifting” the app (from within the app)
Trigger playing an audio track upon touching an actor
Trigger an animation upon touching an actor
Allowing the user to touch an actor with his/her finger, and drag it around the screen
Android:
Pinch-zoom
Swiping to page-turn (when each page is a different Unity scene)
Trigger playing an audio track upon touching an actor
Trigger an animation upon touching an actor
Allowing the user to touch an actor with his/her finger, and drag it around the screen
Pinch-zoom - Easy, very well documented all over the net.
Swiping to page-turn (when each page is a different Unity scene) - You want to do a page turn effect with changing scenes? I’d do it with mesh, and an array of textures (pages), and call them as needed as the page is turned. I love arrays. Sounds like you want this in 3D though, could pose a problem making images match up to the 3D scene. I don’t think you can render to texture on iOS/Android.
Linking to the app’s own iTunes page to prompt “gifting” the app (from within the app) - Easy. Well documented.
Trigger playing an audio track upon touching an actor - VERY, VERY well documented. Easy.
Trigger an animation upon touching an actor - Same as above. VERY WELL DOCUMENTED.
Allowing the user to touch an actor with his/her finger, and drag it around the screen - Again. It’s easy.
You should have no problem doing this yourself. If you have any bit of technical ability AND problem solving skills, chances are high.
iOS / Android do support RenderTextures, but only in the Unity Pro version for each platform. 3D page transitions from scene to scene can be accomplished by grabbing a whole screen and throwing it on an animated mesh of some sort.
Seamless transitions between unity scenes can be problematic when you want to do something with a “Smooth” feeling; even with pro we have difficulty here depending on the circumstances. There is a “Load additive” scene thing in Unity that can help a bit… but on mobile devices for the most part when you’re loading the next bit of content; your frame rate will drop to nothing.
Memory management is another concern without pro when talking about mobile devices. Games often have a contained virtual machine that you can play around with, books on the other hand are all about constantly loading/unloading content (Next page, next page next page, previous page, next page). We’ve made strong use of unity AssetBundles (pro only feature) to handle memory management.
Would I witness the worst of it if I had 3-4 pages linked up with a table of contents? (in other words, is this an issue that will get worse and worse as I go deeper into the book, or will some sort of garbage collection be going on automatically when I go from one scene to another?)
Unity indie doesnt really allow strong intentional garbage collection other than destroying assets and crossing your fingers. unity pro allows explicit unloading/loading of a given asset bundle. Take a look at the Resources class as it has a “UnloadAllUnusedAssets( )” function that can come in handy.
For the most part when you change scenes your junk will be cleaned up for you; in our project(s)’ case we rarely unload the scene but rather import a new custom file format for handling animations/events and what not so we need more finite control over it. So hopefully you’ll be ok if you’re just loading scenes.
Yeah, you need to have both, so it’s $800 bucks to get in on the iOS and 'Droid(Pro for both would be $3000). Then another $100 to get in on Apple, and if you don’t already, a Mac ($600 USD+, used would be $250+ for a Mac Mini Intel v.).
to answer your original question, or maybe more to confirm what the others have been saying, nothing you ask for is difficult. If you search UnityAnswers you’ll actually find most of these already explained in detail.
About the memory management: since you’re loading new scenes all the time you won’t have to worry about this too much, less then normally developing for a mobile device at least. The constant loading of a new scene will be annoying though. Experiment with having one scene contain several pages perhaps.
If you’re having problems with any of the issues you mentioned feel free to pm me, an interactive storybook sounds fun.
Thanks, I really appreciate that. I’m a long time game developer, first time app developer. This all makes sense. I do have an Apple dev account and a mac mini. Thanks for the stream of info everyone.
Seriously, you will be fine. There’s more than enough people here who will help you, just make a serious effort to find the answer yourself before asking. You can get by with the $400 versions of each app, but Pro would be nice (I want Pro… )