Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

Unity iPhone enhancement pack

Discussion in 'iOS and tvOS' started by bliprob, Feb 2, 2009.

  1. cheezorg

    cheezorg

    Joined:
    Jun 5, 2008
    Posts:
    392
    Nice job silentchujo. Thanks for posting this.
     
  2. RazorCut

    RazorCut

    Joined:
    May 7, 2009
    Posts:
    393
    I went ahead and just made my own splash screens in scenes because I now feel that for my game it's more appropriate due to some other things I'm required to do. Feel free to use this simple code:

    Code (csharp):
    1.  
    2. using UnityEngine;
    3. using System.Collections;
    4.  
    5. public class SplashScreen : MonoBehaviour
    6. {
    7.     public float displayTime = 2;
    8.     public bool fadeIn = true;
    9.     public bool fadeOut = true;
    10.     public float fadeInTime = 1;
    11.     public float fadeOutTime = 1;
    12.     public float endDelay = 0.5f;
    13.    
    14.     public int nextScene = 0;
    15.    
    16.     public GameObject splash;
    17.     private Material material;
    18.    
    19.     public bool permitTouchToBypass = true;
    20.    
    21.     void Awake()
    22.     {
    23.         material = splash.renderer.material;
    24.        
    25.         if (!permitTouchToBypass)
    26.             enabled = false;
    27.        
    28.         if (fadeIn || fadeOut)
    29.         {
    30.             if (fadeIn)
    31.                 material.color = new Color(material.color.r, material.color.g, material.color.b, 0);
    32.             StartCoroutine("FadeInAndOut");
    33.         }
    34.         else
    35.             StartCoroutine("ShowAndLoad");
    36.     }
    37.    
    38.     IEnumerator FadeInAndOut()
    39.     {
    40.         float startTime, currTime;
    41.         Color start, end;
    42.        
    43.         // fade in
    44.         if (fadeIn)
    45.         {
    46.             startTime = Time.time;
    47.             currTime = 0;
    48.             start = new Color(material.color.r, material.color.g, material.color.b, 0);
    49.             end = new Color(material.color.r, material.color.g, material.color.b, 1);
    50.             while (currTime <= 1.0f)
    51.             {
    52.                 currTime = (Time.time - startTime) / fadeInTime;
    53.                 material.color = Color.Lerp(start, end, currTime);
    54.                 yield return true;
    55.             }          
    56.         }
    57.        
    58.         // show
    59.         yield return new WaitForSeconds(displayTime);
    60.  
    61.         // fade out
    62.         if (fadeOut)
    63.         {
    64.             startTime = Time.time;
    65.             currTime = 0;
    66.             start = new Color(material.color.r, material.color.g, material.color.b, 1);
    67.             end = new Color(material.color.r, material.color.g, material.color.b, 0);
    68.             while (currTime <= 1.0f)
    69.             {
    70.                 currTime = (Time.time - startTime) / fadeOutTime;
    71.                 material.color = Color.Lerp(start, end, currTime);
    72.                 yield return true;
    73.             }          
    74.         }
    75.  
    76.         // delay
    77.         yield return new WaitForSeconds(endDelay);
    78.  
    79.         // load
    80.         Application.LoadLevel(nextScene);
    81.     }
    82.    
    83.     IEnumerator ShowAndLoad()
    84.     {
    85.         // show
    86.         yield return new WaitForSeconds(displayTime);
    87.  
    88.         // delay
    89.         yield return new WaitForSeconds(endDelay);
    90.  
    91.         // load
    92.         Application.LoadLevel(nextScene);      
    93.     }
    94.    
    95.     void Update()
    96.     {
    97.         if (iPhoneInput.touchCount > 0 || Input.GetMouseButtonDown(0))
    98.         {
    99.             // load
    100.             Application.LoadLevel(nextScene);          
    101.         }
    102.     }
    103. }
    104.  
     
  3. nikko

    nikko

    Joined:
    Mar 20, 2009
    Posts:
    436
    This 'enhancement' pack seems to have no more support from the Author, I purchased it to work on iPhone 1.5, but never got it to work from the author.

    I spent $100 and got screwed.

    I just wanted everyone to know.
     
  4. Brady

    Brady

    Joined:
    Sep 25, 2008
    Posts:
    2,469
    Well, I for one can say that until lately, his support record had been pretty good - adding features all the time, sometimes even when they weren't requested - all for no additional charge. So this latest stretch of silence seems out of character. I sincerely hope it is not because something bad has befallen him.
     
  5. jtbentley

    jtbentley

    Joined:
    Jun 30, 2009
    Posts:
    1,397
    I think a disgruntled customer ran him over in their car :)

    (It wasn't me)
     
  6. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    There was actually 1 update to it, so not really all the time.

    But I agree with all posting, that nothing bad has happened to him or his family and that he is just focused on something instead of wasting too much time here.

    Looking forward to an 1.5 compatible version.
     
  7. cheezorg

    cheezorg

    Joined:
    Jun 5, 2008
    Posts:
    392
    Also getting a little worried about Rob. Tomorrow marks two weeks since his last post, which I agree is uncharacteristic of him, especially strange following a major update.

    It only takes a couple of minutes to check the boards, and maybe a few more to say a quick hello.

    On a practical matter, maybe the Unity team will see what happens when many of its users rely so heavily on a 3rd party plugin for "mission critical" features. AdMob integration is one that comes to mind.

    If someone at Unity has to drop everything for an emergency or gets busy, others can pick up their workload or at least provide communication to the users of the product.

    With Rob's pack, we're all waiting anxiously for the his return. For indie devs making AdMob supported Unity games, that's a scary proposition.
     
  8. Brady

    Brady

    Joined:
    Sep 25, 2008
    Posts:
    2,469
    Well, on the AdMob front, can't we pull off AdMob without the enhancement pack now that 1.5 is out? I haven't dug into it enough to see for myself yet.
     
  9. HiggyB

    HiggyB

    Unity Product Evangelist

    Joined:
    Dec 8, 2006
    Posts:
    6,183
    No worries, I pinged him directly and he should be here to reply shortly. He's alive and well, just a very busy guy so give him a touch of breathing room and I'm sure he'll reappear and address all your (not just yours cheezorg, but everyone's) concerns.
     
  10. cheezorg

    cheezorg

    Joined:
    Jun 5, 2008
    Posts:
    392
    Very cool, thanks for the update Higgy.

    @Brady - Probably, but not for the Basic license. Like many other Basic users (and n00bish devs like myself) my goal is to hack away at this until I'm able to upgrade, but until then... :(
     
  11. Brady

    Brady

    Joined:
    Sep 25, 2008
    Posts:
    2,469
    Ahh yes, sorry, forgot about that Basic limitation. For what it's worth, I've been using the Enhancement Pack for AdMob myself and just hadn't done a re-release yet. The Enhancement Pack has already paid for itself in my case. So I hope it all gets worked out for 1.5 soon and all will be right with the world again.

    Glad to hear he's okay!
     
  12. EricJ13

    EricJ13

    Joined:
    Feb 28, 2009
    Posts:
    354
    I'm in the same boat. I do want to use the Expansion pack on my current project to access the photo album, but I've got plenty of other stuff to work on before I worry about that.
     
  13. Jacob-Williams

    Jacob-Williams

    Joined:
    Jan 30, 2009
    Posts:
    267
    I am not an ObjC expert by any means, but I found it pretty easy to implement AdMob in a couple of my iPhone Basic projects. The instructions are scattered throughout the forums, but a quick search should do the trick. If I have time, I will add the instructions I have to the wiki.
     
  14. jtbentley

    jtbentley

    Joined:
    Jun 30, 2009
    Posts:
    1,397
    Horay!
     
  15. Randy-Edmonds

    Randy-Edmonds

    Joined:
    Oct 10, 2005
    Posts:
    1,122
    i think we should calm down a bit and wait for the update that stinkbot said he would deliver.
     
  16. bliprob

    bliprob

    Joined:
    May 13, 2007
    Posts:
    901
    The latest version of the Enhancement Pack (for Unity 1.5) is not yet complete. Here is a status update.

    First things first: Need to contact me? Email is the best bet. As I've posted before on this thread, robterrell@gmail.com is best. Other email addresses will work, but that is first in the queue.

    Upset with the state of things? Email me with your paypal transaction ID and I'll get you a refund, no questions asked.

    A lot of work has been done. The pack has been split into modules, as many here suggested. The modules allow you to pick only the features you need. This has been tested and in its beta form it's already been in a couple of shipping games. In fact, I thought the pack was almost ready to go previously. Great, Rob, so why the holdup?

    There are three reasons why the Enhancement Pack has not been released: adding support for Unity Basic; completing the automated building process for OpenFeint, FaceBook, Flurry, Scoreloop, etc.; and adding documentation.

    A big issue I did not anticipate was the number of users with Unity Basic instead of Unity Advanced. The new Enhancement Pack was redesigned to use the native function calls in Unity 1.5 Advanced, but Unity 1.5 Basic does not have this capability. When I sent out beta releases of the Enhancement Pack, I was surprised to learn that few users had Advanced or cared about native function calls. For these people, *nothing* worked. In the past ten days or so I have added the older PlayerPrefs method of making calls back into the Enhancement Pack for the Main, iPod, and Email modules. I have created a system where additional modules can register their Basic calls with the primary app controller, so the modules can be added to the project as you need them.

    The second issue has become complicated, as some of these libraries are very large and require complex changes to the XCode project (i.e. OpenFeint requires including dozens of files and changing several build configuration settings.) This has become even more complex as newer versions of these libraries are released (i.e. OpenFeint released a new build a week ago) and now, of course, the automated build scripts need to be tested in the new XCode 3.2 as well as the older XCode 3.1.3. The test matrix for 3rd party libraries, frameworks, Xcode versions, iPhone OS versions, and Unity versions has become very large and time-consuming. (Did I mention that some users haven't switched to Unity 1.5 yet? Incredible but true.)

    Further, I have had to work to convince two or three of these upstream library vendors to build their code to be more compatible with Unity, because of an issue with the linker when linking functions across 4 MB boundaries in Thumb mode. This is typically not an issue for developers writing iPhone apps in straight XCode, but Unity generates apps that cross *two* 4 MB boundaries before your code even shows up.

    The final issue is documentation; I am planning documentation and sample code for all 55 functions the Enhancement Pack adds. That's up from 9 functions in the original Enhancement Pack. Documentation was high on the wish list for many here.

    When will it be ready? Not this week. But based on the feedback here, I will try like hell to make a release with just the main functions and the iPod and Email modules. Reducing the complexity of the third party libraries and build scripts will help a lot in getting it out the door.

    I love Unity and I love the Enhancement Pack. I'm not getting rich off the Enhancement Pack. I'm doing this because I like Unity and iPhone development, and I like the community here.

    JTBentley: your boss has already emailed me directly to call me an ass. Which I highly recommend to everyone. (Not the calling me an ass part -- the emailing me part -- but if you must, go for it.)

    Brady: thanks for the concern, just busy, both work and life.

    Nikko: email me with your paypal # for a refund. Keep the upgrade if you like when it comes out.
     
  17. snowzerko

    snowzerko

    Joined:
    Apr 24, 2007
    Posts:
    33
    Rob, I've had the Enhancement Pack since you first released it (I think; from v1.0, at least). I would be more than happy to pay you another $100 for the update when it's ready, if for no other reason than to express my gratitude for the fantastic product and support you've provided. You've certainly saved me far in excess of $200 worth of my time.
     
  18. jtbentley

    jtbentley

    Joined:
    Jun 30, 2009
    Posts:
    1,397
    He lives!
     
  19. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    Actually more than some I get the feeling. The current issues with static on iphone basic 1.5 seem to cause a lot of concerns. Would assume to see temporally a growing amount of downgrades (good thing for you though as the 1.1 version works with 1.0.3 so a few less who bug you that the build process blows up on the sound).
    I have a dual installation of Unity iPhone right now so I can work with 1.0.3 and 1.5 at the same time.

    Question would be who is compiling in thumb mode?
    We already have performance problems due to the Mono 1.2.5 Mathf implementations, no need to make it even slower with thumb mode ...

    Don't know what others exactly expected but I basically am happy with something that lists the function with all possible parameters without checking the mm in XCode.
    But its great to hear that you are working on expanding it. I've currently some time open so if you want someone to check through it or create / suggest small examples drop me a mail. Thought about doing the documentation as a Wiki actually so the "examples" can be user added / suggested in a way that does not flood your mail?


    Will drop you a mail directly once my game is out (by its current luck in 2010 after my "artist puff" theorem beeing proofen true) to thank you and likely more if the game works out any better than place 2M on the appstore listing
    Don't think that non-construtive direct mails are of any use unless they are directly related to a serious problem or thanking someone.
     
  20. cheezorg

    cheezorg

    Joined:
    Jun 5, 2008
    Posts:
    392
    Thanks for the status update.

    Exactly the right track. I would bet that most here simply want to get the previous version fully working on 1.5, and will explore the new features after that. The module approach sounds great, and even if the first phase of the new EP rollout is nothing more than the original 9 features, I'm betting almost everyone would be just fine with that.

    As for email, the address you have on the EP website is rob@stinkbot.com, so you can see how there might be confusion in that regard.
     
  21. heiko.s

    heiko.s

    Joined:
    Jul 25, 2009
    Posts:
    43
    With the current feature set, is it possible to create a screenshot from your application and insert that image directly into a new email or mms?
    (With Unity Indie iPhone Basic)
     
  22. bliprob

    bliprob

    Joined:
    May 13, 2007
    Posts:
    901
    I think eZone is doing that. Simon, any thoughts?

    You can use the message composer interface, but I'm not sure how to add an attachment to an email. I'll check the docs, there must be a way.

    Other than that, you could do it by using the sendEmailHtml() function and pass in HTML with a base64 encoded version of the screenshot embedded inside the email, like how some spam embeds images inside HTML email. Or simpler, upload the screenshot to a web server first, and then make an IMG tag in the HTML email that references it.

    Re MMS: we in the US don't have MMS yet, so I don't have any experience with sending those with image attachments.
     
  23. zoonyzone

    zoonyzone

    Joined:
    Feb 21, 2008
    Posts:
    18
    Just checking to see if there is any status on the updated enhancement pack. I have left a PM message and emailed directly and have heard nothing. :(

    Hope to hear something soon.
     
  24. neo

    neo

    Joined:
    Apr 22, 2009
    Posts:
    167
    I know there's a huge raft of features being worked on, but wanted to propose one for the next release, though in theory it should be very easy (in practice it might not be.) The suggestion is to integrate the PinchMedia analytics library.

    I believe this is the most widely used iPhone analytics library. Its API is essentially the same as the one you've already integrated. It has at least one feature that might be unique- and that is that it will save analytics data even when the device is not connected to a network and transmit it later.

    I don't yet have the enhancement pack, but will be buying it when the new release is out as several of the new features (plus some of the old ones) make it compelling for our product. Just waiting till the products ready for those features. (and I'm good enough at objective-c that I can add pinchmedia if necessary by myself so this is NOT a "add this or you don't get my $100 post"!)
     
  25. RazorCut

    RazorCut

    Joined:
    May 7, 2009
    Posts:
    393
    With no support and no respectable release schedule, this stuff should just become open source. :)
     
  26. mlapin

    mlapin

    Joined:
    Nov 25, 2008
    Posts:
    18
    Any news on an EP update to work with 1.5? I wouldn't mind to wait more for the new features, but supporting what was previously done sounds essential...!

    @silentchujo - thank you for the workaround! You saved me (and probably lots of us) from being mad beating head against wall :D gee your post is more than one month old now!
     
  27. AmazingRuss

    AmazingRuss

    Joined:
    May 25, 2008
    Posts:
    933
    I'm going to have a need for the second splash screen bit of that in the next week, for a project that will be releasing soon. I'm a little worried about plugging in a bunch of brand new code.

    Does the second splash screen work with the old pack and 1.5?
     
  28. mlapin

    mlapin

    Joined:
    Nov 25, 2008
    Posts:
    18
    No, it doesn't.

    Actually, the old pack 'as is' does not work at all with 1.5 (at least not for me). It will compile and install, but throw an exception during startup.

    The patch proposed 2-3 pages ago by silentchujo worked well on getting my previous projects with EP to run, although the second splash was disabled.
     
  29. CogCode

    CogCode

    Joined:
    Mar 8, 2009
    Posts:
    143
    I had this problem and came up with a much more simple fix for my project. This may not work for everyone, but before you jump through the above hoops, try this:

    Change the line in AppController+additions.mm from:

    #define kShowSecondSplashScreen YES

    to

    #define kShowSecondSplashScreen NO


    My original 1.02 + Enhancement Pack project ran just fine as a 1.5 + Enhancement Pack project after making the above single line change. I didn't need to rename the PostProcessBuildPlayer either.

    I can't promise this will work for everyone, but if it worked for me, it's worth a try before doing any more difficult fixes.
     
  30. Jeremy-Alessi

    Jeremy-Alessi

    Joined:
    Oct 18, 2007
    Posts:
    125
    First of all, this thread should be sticky ;)

    Now down to business, can anyone reach Rob? I shot him an email to no avail. I'd like to get my hands on the early version of the 1.5 enhancement pack. I don't need the prefs version of the pack. Thanks in advance for any leads!
     
  31. MattCarr

    MattCarr

    Joined:
    Jul 5, 2009
    Posts:
    337
    I emailed Rob recently to see if I could get some info on the status of the Enhancement Pack. He sent me an early version to try out, but haven't yet had the opportunity.

    As he himself recommended in an earlier post, you should try emailing him. Hopefully he'll find the time soon to deliver a new version.
     
  32. sumner

    sumner

    Joined:
    Jul 1, 2008
    Posts:
    40
    So...

    Been "about" to buy enhancement pack, but wanted to get an official word on the "plan" for v.1.5, etc.

    So far, no answer to multiple emails that are like, "I know you are busy. Please just respond even just to say 'Leave me alone' "

    Anyway... my biggest worry is that I would spend $100 with nothing to show for it.

    But it seems as though now you can get 1.5 to work with enh. pack? (and further goodies from Rob would be bonus).

    Cheers!
     
  33. RazorCut

    RazorCut

    Joined:
    May 7, 2009
    Posts:
    393
    Stay far far away from the allure of this alleged Enhancement Pack. I seriously recommend not supporting this product.

    If anybody who has participated in this forum has an interest in helping me do an open-source version of what this now defunct product had to offer, drop me a line; I'm interested in working it into my schedule. But it needs to be open-source so that suffering is kept to a bare minimum. :)
     
  34. mindlube

    mindlube

    Joined:
    Oct 3, 2008
    Posts:
    993
    I am glad I bought the enhancement pack a while back. It definitely helped my game which is in the app store since June. I used these features:
    -keyboard
    -openURL
    -hack detection
    -2nd splash screen

    Today I ported my game to Unity iPhone 1.5 and discovered most of these things are now in Unity iPhone Basic anyways! So I actually removed the stinkbot kit.

    However, I changed my event loop back to NSTimer and am going to crank up XCode and try getting the 2nd splash screen working again. Should be feasible :wink:

    Admittedly I am not using very many features of the 'pack. But I just don't think stinkbot deserves so much flack. It's a real niche market, and a moving target. I guess the alternative is we learn Objective-C and/or upgrade to Advanced.

    Rob, if you are reading this- maybe an alternative model would be to deliver it as an Obj-C Framework. That way people could link with it and invoke only the stuff they have licensed/bought from you. Might save some headaches.

    Anyhow just wanted to share my experience,
     
  35. Big Pig

    Big Pig

    Joined:
    Feb 21, 2009
    Posts:
    92
    Any luck on getting the second splash screen working? I'm considering buying the enhancement pack just for this.

    Alex
     
  36. minevr

    minevr

    Joined:
    Mar 4, 2008
    Posts:
    1,018
    The new version is still the one hundred U.S. dollars? I hope so. If you are too expensive. I can not afford.

    I have seen some very interesting features, e-mail and high score table. Great!
     
  37. mindlube

    mindlube

    Joined:
    Oct 3, 2008
    Posts:
    993
    The way Unity launches from Obj-C seems to have changed quite a bit in 1.5. So, I've had no luck getting the 2nd splash screen to work.
     
  38. minevr

    minevr

    Joined:
    Mar 4, 2008
    Posts:
    1,018
    Long time no news :?
     
  39. Deleted User

    Deleted User

    Guest

    Just received an email from Rob with the last beta.
    So the support for this project is very good for me.

    Andrea
     
  40. minevr

    minevr

    Joined:
    Mar 4, 2008
    Posts:
    1,018
    8) I would like to have it immediately!
     
  41. dacloo

    dacloo

    Joined:
    Jun 30, 2005
    Posts:
    469
    I do not recommend buying this pack, support is non-existent, waste of money IMHO.
     
  42. Gaspedal

    Gaspedal

    Joined:
    Mar 29, 2009
    Posts:
    376
    Stinkbot has us given in the past very good support. I think, we don't need en.Pack longer the main Features like OpenURL,Keyboard,Hack detection are in Unity iPhone already avaiable.

    I hope that Stinkbot continues his work.
     
  43. rand1815

    rand1815

    Joined:
    Apr 7, 2009
    Posts:
    27
    well I have a completed game that relies on the photo picker. The game is finished. I have literally been sitting on it waiting for an updated version of this enhancement pack for over a month. I am really annoyed that this is what my $100 bucks gets me, especially when I designed the game around the enhancement pack. Granted people have been kind enough to supply work arounds and what not (can't use second splash screen) The point is that people shouldnt have to do this.
    I also understand that these things take time and everyone has other things going on, but a month and a half ago Rob said he would have something for us in a week then dropped off the planet again. This is why software companies aren't usually just one person, now all of us hang on the frailties of that person. My two sense.
     
  44. Esila

    Esila

    Joined:
    Mar 22, 2009
    Posts:
    105
    :( :(
    Hi, rob

    I dont know how to use this pack, could you write a detail tutorial doc about it.

    thank you.
     
  45. VIC20

    VIC20

    Joined:
    Jan 19, 2008
    Posts:
    2,681
    I'm new to this - his website says "The Unity iPhone Enhancement Pack is turning 1.5. There's lots of new features."

    Does that mean there is finally a 1.5 version out or will i get the old one if i order?
     
  46. minevr

    minevr

    Joined:
    Mar 4, 2008
    Posts:
    1,018
    I've bought it, I want to have a more detailed tutorial, such as step by step to know.
     
  47. bliprob

    bliprob

    Joined:
    May 13, 2007
    Posts:
    901
    Whoops. I didn't realize anyone would see that page before I announced here. Sorry.

    I have sent a beta of the 1.5 version of the pack to some users for beta testing. I'll be releasing the final version once it's been tested by someone (several someones) other than me.

    The new version will support web view (i.e. open a web page inside your game), StoreKit (make in-app purchases), Flurry (for analytics), FaceBook Connect, and more.

    dacloo: email me at robterrell@gmail.com for assistance.

    Right now support is only available through my personal email address. For reasons too stupid to explain, support@stinkbot.com is not working right now. I thought I'd made that clear previously, but if not, just email me.
     
  48. Randy-Edmonds

    Randy-Edmonds

    Joined:
    Oct 10, 2005
    Posts:
    1,122
    StoreKit and WebViews.. awesome, that will be a real time saver! Tomorrow is my b'day... I'll consider this a gift. ... Yeah, I'm that lame. :)
     
  49. mlapin

    mlapin

    Joined:
    Nov 25, 2008
    Posts:
    18
    I noticed the kSplashVideoName define while checking the last beta... That is a truly great feature IMHO! But I just can't figure if it was supposed to work, and how...

    Any clues, please?!
     
  50. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    Thats great to hear :)

    Sweet
    I would guess anyone is able to find at least one thing among the new things he/she likes :)