Search Unity

What do you want to see?

Discussion in 'BlackBerry' started by WaterlooErik, Oct 23, 2013.

  1. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    Hello all, I'm hoping for some community feedback here about the resources that would help you create that perfect game.

    Primarily, I am thinking along the lines of plugins, but this can extend to tutorials / learning resources, documentation, and so forth. I'll start with a list of what I've seen mentioned recently, and if you would like to weigh in on which are important to you, specific functionality (i.e. if Facebook plugin, which features exactly?), and what else you would like to see added; please let us know on this thread.

    The intent of the information gathered here is to take it back to our development teams here at BlackBerry and help drive future content for Unity/BlackBerry.

    I will do my best to keep this first post up to date as a consolidated list.

    Plugins
    • Cascades APIs
      • Can not be used for Unity Plugins due to technical limitations.
    • Advertising
      • Native-based community plugin currently available.
      • Currently fill-rate of native-based implementation is less than ideal; our teams are working to improve this.
      • 05-24-2014 See this thread for information on web-based ad services. zezba9000 has recently added a web-based implementation to the existing community plugin.
    • BlackBerry Messenger
      • Evaluating how this fits into the roadmap.
    • Facebook
      • Evaluating how this fits into the roadmap.
    • Sharing
    • Screenshot
    • Invocation
    • Scoreloop
      • Currently exists for BlackBerry 10; not likely to become cross-platform in the near future.
      • 07-17-2014 Scoreloop will reach end-of-life on December 1, 2014.
      • 08-14-2014 Potential alternatives (alphabetical order.)

    Learning Resources

    Other
    • Promotions
    • Device Seeding
      • 05-22-2014 If you do not have a physical BlackBerry 10 device for testing and need one, send me (eoros@blackberry.com) an email and I will do my best to have one sent to you.
     
    Last edited: Aug 14, 2014
  2. dberroa

    dberroa

    Joined:
    Dec 16, 2012
    Posts:
    146
    I think you hit the main things I am looking for, Cascades access and advertising plugins. A plugin tutorial would be awesome.

    Overall more documentation based on the Blackberry side of things.

    Maybe a promotion or offer that offers Z30s or Q10s?

    What would be SUPER awesome is if the Blackberry 10 game contest that gets you Blackberry Pro add on for free that is going on right now, allows you to keep the license for more than a year. In the fine print of the contest it says the Pro license is only for 1 year after granted. If you enjoy the platform and are making games for it, but are not making enough to warrant dropping $1,500 on something you have been using already, it kinda hurts developers IMO.
     
  3. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    Thanks dberroa, the feedback is appreciated. I'll bring these points up during my next gaming sync-up with the teams here, but by all means continue to fire feedback our way in the meantime. I can't promise overnight deliveries, but we do intend to take action based on what the community asks for :)
     
  4. daisySa

    daisySa

    Joined:
    Dec 29, 2011
    Posts:
    341
    Thanks for highlighting that dberroa, I didn't read the fine print. Yes, agree 100%.

    Also, I’ve built support for a 1:1 aspect ratio but I can’t test it, because I don’t have a Q10 and to use the simulator I need to buy VMWare. We really need a simulator that doesn’t require a purchase (or else an offer similar to the Z10 Unity promotion). In my case it would also help if we could use the simulator with Parallels, as I already have that and most Mac developers probably already have either Parallels or VMWare, but not both.
     
  5. icreate

    icreate

    Joined:
    Jul 13, 2012
    Posts:
    25
    Facebook plugin would be awesome. Preferably if it uses the same interface/API as the official Facebook SDK for Unity or extend it somehow.
     
  6. zezba9000

    zezba9000

    Joined:
    Sep 28, 2010
    Posts:
    985
    Yep Cascades don't run with Unity because of "std" C library naming conflicts with some other standard lib being used in Cascades. If there is a work around to this I would love to know. This is the NUMBER ONE reason I can't add in Cascade Ads into my plugin as well as other features I would like to look at.

    Also because Cascades don't work, were never going to be able to get any other Ad frameworks working that support interstitials either.
     
    Last edited: Oct 25, 2013
  7. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    Thanks you all.

    Yesterday we had a chat with the Unity team here at BlackBerry and I'll provide updates on what I can.

    Plugins
    • Cascades is a no-go. Both Unity and Cascades rely on being the application "container" which leads to the library conflicts that have been mentioned. Until Cascades in general can be accessed as a library, we'll need to stick to the native APIs for Unity plugins.
    • Facebook and BlackBerry Messenger: We provided feedback to the team that these were being requested. How they fit into the overall roadmap is still to be seen but we'll provide updates as we are able.

    Learning Resources
    • We will soon be posting a blog post with the information in this thread. Along with an update on the current status of the gamepad offer.
    • We'll also be updating the original DevBlog post to reflect accurate information on implementing gamepad support for BlackBerry 10 devices.
    • A blog post on how to write Unity Plugins is in the works which will revolve around the Advertising SDK.

    We're also trying to work out an online session where we'll have BlackBerry resources available to help people with their gamepad implementations. Sort of a virtual drop-in, ask questions, etc. deal. Still working out the details on this one but is that something you would be interested in?
     
    Last edited: Nov 5, 2013
  8. dberroa

    dberroa

    Joined:
    Dec 16, 2012
    Posts:
    146
    Very nice update.

    Any news on if we get to keep the Unity Pro contest license forever? According to this page it says it is forever: https://unity3d.com/contest/blackberry but the terms say one year.

    The blog post on plugins sounds great.

    In terms of the virtual dropin, is that something like every week at this certain time or is it a one time event? If it is a one time event, developers might not be ready to implement gamepad at the time but if its weekly at a certain time, they could drop by read fast and get help.
     
  9. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    Regarding the license, let me confirm with the Developer Program team but my understanding is as follows.

    Upon registering for the offer, you should immediately be issued a temporary Pro License add-on for BlackBerry. If you do not meet the requirements of the program by the end of the promotion, that temporary license expires.

    If you do meet the requirements of the program, your temporary license will be converted to a 1-year license.

    I do see how (and agree) that the wording on this page is contradicting though and before we take anything I say as fact, again let me confirm with the Developer Program team. I'll aim to follow-up here ASAP.


    I'll share that feedback regarding the drop-in event as we plan it out; you make a good point.
     
  10. dberroa

    dberroa

    Joined:
    Dec 16, 2012
    Posts:
    146
    If not a drop in event, I think a video series would also be cool.

    Few things I would like to know or see better implementations then the way I did it would be how to detect a controller has connected and to change the virtual controls to disappear and to use the gamepad and how to setup the controller with most of the setup in Input Manager rather then using Keycode.Joystick1.
     
  11. PuneetK

    PuneetK

    Joined:
    Sep 2, 2013
    Posts:
    75
    Eric, a share framework plugin would be great.
    Something which we have in Cascades already.

    A simple swipe on the right of the screen, and we get a share menu with options like bbm, bbm channel, bbm group, whatsapp, email, facebook, etc.
    And ofcourse the option to customize (as a developer) what the shared message would be :)
     
  12. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    I like the idea of the video series. Once I complete this blog post on the updated integration, I'll look to make some videos. Regarding the Input Manager vs. Keycode.Joystick usage, I've been using the latter myself. I'll look into how much we can hand off though.

    I like the idea of the Share plugin; I'll add it to the list.
     
  13. zezba9000

    zezba9000

    Joined:
    Sep 28, 2010
    Posts:
    985
    If cascades are a no go this is fine. But then I would highly highly recommend and request cleaning up the "Native" BB10 Advertising framework.
    There is almost no documentation on Native supported Ad sizes and no Fill-Rate. I get the feeling Native Ads are off in its own world even for the Advertisers making the Ads and thus they neglect to support a Native Ad version and thus no Fill-Rate?? If i'm correct, these Native BB10 Ads need to be up to pair and support the same "Image" Ad types as Cascades do. Otherwise this is a shot in the foot to everyone involved.
     
  14. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    Indeed, the fill-rate is something our native team is working on with the provider in an attempt to improve. Unfortunately my insight into that process is fairly limited but I will provide what updates I can. I'll see what I can dig up regarding ad sizes. At the heart though, the Cascades and Native implementations should be (as far as I know, "are") pulling from the same provider. We'll need to do some investigation here to find out why such differences are being seen between the the usage of both.


    On a good news front, regarding the BlackBerry 10 Pro License Add-On, please check out this thread:
    http://forum.unity3d.com/threads/20...Add-Ons-Will-Not-Expire?p=1410534#post1410534
     
  15. dberroa

    dberroa

    Joined:
    Dec 16, 2012
    Posts:
    146
    Yay on the license!!!!

    So about the ads, from what I hear you can't even hide them if they don't fill. So basically there will be a white "spot" on the screen until one an ad does device to pop up and you can't have it hide and reappear in the mean time.

    For an example of what I mean, check Zebra's docs: http://www.reign-studios.net/docs/unity-plugin/blackberry-10/

    Specifically:

    I believe cascades allows you to hide an ad if not filled.
     
  16. zezba9000

    zezba9000

    Joined:
    Sep 28, 2010
    Posts:
    985
    And I should also add even if you try to re-position the Ad off the screen(to fake hiding) after the Ad is created it will not work either. Its like after the Ad is created, thats it... can't change any property on it.

    Problem is the Ad framework is build directly into the BB10 device... so I don't see how this would even get fixed with out an OS update...
     
  17. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    I think I understand what you mean now then. Under the hood, the ad provider is the same for native and Cascades, however Cascades provides a little more API functionality which allows us to better handle certain scenarios (not necessarily a better fill-rate though); is that accurate?

    For reference, we are talking about these APIs for a native ad solution, correct?
    http://developer.blackberry.com/nat...rvice.lib_ref/topic/manual/about_bbads_h.html

    I will reach out to the advertising and native gurus to get their input. It sounds like what you're seeing is an inherent issue (I would expect at least hiding, etc. to work better, but it's outside of my usual day to day so I'm not aware of all the quirks.) I'll get the experts' feedback though and will see what they come up with. At the very least, how it "should" be being done and, if there are breaks, like you said we can ensure that the next OS release has the appropriate fixes at the very least.
     
  18. zezba9000

    zezba9000

    Joined:
    Sep 28, 2010
    Posts:
    985
    Yes and No. Yes to Cascades give us way more power like any normal UI framework does. No to the Fill-Rate, as its like non existent in the Core Native BB10 Ads (This may be to the fact Ad sizes are not documented and thus i'm doing them wrong, or some other peace of the API is not documented.


    Yes that is correct. We are talking about the BB10 Core Native Ads API.

    Thanks for the effort as this is something that took a lot of time to get working. I feel that only those who have access to the source code may be able to answer the AdSize, AdVisibility questions ect... as i've also ran into other parts of the Core API not being documented and by a miracle figured it out through old past bin posts.

    Its understandable there has been a lack of support for the core native stuff and realistically I can't see anybody needing it other then for Unity3D or similar. Thanks for the time.
     
  19. PuneetK

    PuneetK

    Joined:
    Sep 2, 2013
    Posts:
    75
    Another feature I've just realised we dont have is the ability to ask users for their reviews on the app world. Its there in some native games right now.
    Basically, prompt the user for an app world review and give options 'not now', 'no thanks' and 'sure'

    This would help us as devs to give our games some attention they deserve.

    By the way in the unity documentation there is a page on how to make android plugins.. I talked to a dev recently who has been porting in Google based achievements/scoreboards into unity using the method of exporting and eclipse project as a plugin into unity. Any heads up on something like this for blackberry?

    Just another question, is the unity scoreloop plugin ever going to work on other platforms? It says its currently bb10 only
     
  20. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    Hello all, a bit more information. Feel free to fire any questions along, I'm sure there will be some :) I'll do my best to answer.


    Advertising SDK

    Regarding the Ad SDK, both Native and Cascades leverage the same web service to request advertisements from the same ad provider. The fill-rate depends on many variables including (number of application downloads / requests being made overall, regions the application is being used in, demographics, and so forth.) Essentially, there may be a difference in fill-rate based on how popular your application is, where it's being used, etc. This could account for some differences. If you are seeing differences purely based on whether your application is setup as a Native application or Cascades application within the Advertising SDK portal, then that is a decision on the ad provider's side. I don't know that they do it, but if this seems to be a concern, you could potentially try re-configuring how the application is set up in the portal.

    That being said, bluntly, the fill-rate is very likely going to be low still. Our development teams are working to improve this, however there are some fundamental issues that must be addressed first. Priority-wise this is up there. But realistically, how early will a fix come, my ballpark would be "months" not "weeks". We do realize that in-app advertising can be a primary revenue stream for developers, which is why the priority on this is high. But again, it requires some pretty large changes which will take a bit of time.

    Cascades offers up some nice functionality to work with ads in non-ideal scenarios (hiding ads, etc.) and unfortunately there are no similar APIs available on the native side. The content of the ad is completely controlled by the provider in that scenario, and there aren't any (even undocumented) ways for native to provide the functionality that Cascades currently does.

    While not an option at all times, I would recommend in-app payments as a better alternative to advertising if you are looking for an additional revenue stream for the time being. Digital goods (premium content, levels, etc.) and aesthetics (skins, costumes, etc.) are very popular within games and will likely provide more return on the time investment. I do apologize for the current issues with the advertising SDK, and again know that we are working to bring it to the level of service that it should be.


    Plugin For App Reviews

    This might be a good sample one, as fundamentally we could create a plugin that ties into our Invocation Framework and could be made dynamic enough to not just invoke BlackBerry World, but other core applications and features (email composer, etc.) on the device. I'll add this to the list and will try to prioritize it; the list is growing quickly :)


    Plugin Export/Import

    I don't think we'll see this project-based export/import anytime soon. Currently, using the BlackBerry Native SDK you export a Shared Object (SO) file and import that into Unity. Similar idea, slightly different process. As far as I can tell, that will be the process for the time being.

    We're still working on the Unity Plugin Creation blog and perhaps once it's documented we can gather some questions/feedback to a) improve the documented process; and b) provide back to the development teams to consider for future improvements.


    Cross-Platform Scoreloop Plugin

    I am not aware of this being on the roadmap. I will provide the feedback but I would not expect it anytime soon.
     
    Last edited: Nov 11, 2013
  21. zezba9000

    zezba9000

    Joined:
    Sep 28, 2010
    Posts:
    985
    I have someone using my BB10 plugin for Ads and they said they have over 10,000+ Ad requests but no Fill... Are there any Ad sizes that I should be using to get Fill-Rates??
     
  22. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    I checked with the Ad team and less than or equal to 300x50‎ is needed. If you are requesting larger then none will come in which may explain the issue? This is another aspect being tackled as those dimensions (even at a full 300x50) don't quite cut it on native where scaling isn't an option.
     
  23. zezba9000

    zezba9000

    Joined:
    Sep 28, 2010
    Posts:
    985
    Ok well even the Core Native documentation is using "468x60" from GitHub... someone might want to fix that. The lowest I used was 320x50 from other docs. Guess I'll add in 300x50 and see if that works tnx.

    BTW Test Ads come up in any size almost... which makes testing very hard to know if something is wrong.
     
  24. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    Ah, sincere apologies for the confusion. My familiarity with these samples is pretty limited, I'm not sure why these values would be being used.

    Between Github and the docs, I see a few values being used (468x60, 320x50, 300x50, and 320x48.) It may actually be worth checking for each of these (though the 468x60 resolution has no inventory yet.) The others should have some fill-rate.

    I'll pass this along to the docs team, and thank you for your patience and taking the time to provide the feedback.
     
  25. dberroa

    dberroa

    Joined:
    Dec 16, 2012
    Posts:
    146
  26. Javier17

    Javier17

    Joined:
    Sep 6, 2013
    Posts:
    7
    Hi Erik,

    I am doing a kid's book so i cant use scoreloop and virtual goods (anything to score and anything to sell). I need to set a service integration as Facebook or BBM to be my game BUILT FOR BLACKBERRY. Is something like this ready for Unity and Blackberry?


    Best!!


    Javier
     
  27. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    Hi Javier,

    Unfortunately Facebook/BBM plugins aren't available as far as I know (unless some Community plugin has been developed recently, but I haven't heard of one.)

    What you could potentially do though is integrate Gamepad support (even just for basic navigation: next page, previous page, etc.) Gamepad integration satisfies the service integration component of the Built For BlackBerry requirements.

    We have an ongoing offer where we'll send you gamepad hardware to help with your integration, as well as a few articles to help get the integration going. The best starting point would be here:
    http://devblog.blackberry.com/2013/...ft-right-left-right-b-a-gamepad-offer-update/

    Would something like that meet your needs?
     
  28. Javier17

    Javier17

    Joined:
    Sep 6, 2013
    Posts:
    7
    The game is for kids, so... all is touchable... hard to use gamepad support.
     
  29. bem13

    bem13

    Joined:
    Jul 1, 2010
    Posts:
    64
    One thing I would always like to see, but I expect is platform dependent, is at least a progress indicator that satisfies common certification requirements/recomendations such as always showing a progress indicator if a process lasts longer than 3 seconds.

    LoadLevelAsync only gives a interactivity during a fraction of loading unfortunately. I have been trying to get my head around what is possible with Blackberry native SDK. iOS seems to manage it.
     
  30. zezba9000

    zezba9000

    Joined:
    Sep 28, 2010
    Posts:
    985
    Hi WaterlooErik,
    I was wondering if you knew the location for Core Native WebView documentation?
    I for the life of me can not find it, if it does even exist.
    I would like to have more advertising options in BB10 other then the Core Native ones, as there is literally no fill-rate at all.
     
  31. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    @Javier17:
    I understand. It should be possible to to create custom native extensions which could meet the Platform Service requirement; however those extensions do not exist today (unless a third-party one does that I'm not aware of.) You can find the native API reference here for BBM, for exampe:
    https://developer.blackberry.com/native/documentation/core/bbm_social_platform_apis.html

    EDIT: For reference, this may be a good starting point on writing plugins:
    http://devblog.blackberry.com/2014/02/diary-of-a-unity-3d-newbie-bluetooth-low-energy-plugins/

    @bem13:
    Agreed as activity indicators are a part of the Built For BlackBerry certification for longer loading scenarios. Perhaps someone from the community can share how they've overcome this in the past? Or is that a fairly widespread issue that during LoadLevelAsync, you simply can't have a reliable progress indicator?

    @zezba9000:
    I haven't been able to find any native WebView docs either; all I could find was the Cascades docs:
    https://developer.blackberry.com/native/reference/cascades/bb__cascades__webview.html

    Which obviously has some concerns as a Unity extension but raises two questions:
    1) Are there any generic "WebView" / HTML rendering extensions already available?
    2) My understanding was that the current BB Ad SDK renders the returned ads in a WebView. If so, we should be able to leverage the work done there. I'll reach out to the team to see if we can get any more information around that.
     
    Last edited: Mar 24, 2014
  32. zezba9000

    zezba9000

    Joined:
    Sep 28, 2010
    Posts:
    985
    You are correct as far as iv'e been told, but as you say there is no documentation for this API that must exist as the Ads framework is using it.

    Also it may be Core Native Ads work, but the setup process for the BB10 Advertisement console has so many options that default invalid values and give no errors or alerts if they are not set correctly.
     
  33. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    I've reached out to our teams to see what can be provided.


    On another note, I've updated the original post with a link to our DevBlog post about getting started with writing extensions for Unity for any that are interested.

    I've also updated the original post with: link to Gamepad sample, notice that all Unity Pro license holders now get BlackBerry Pro for free, and information about the Gamepad Compatible feature.
     
    Last edited: Mar 24, 2014
  34. WaterlooErik

    WaterlooErik

    Joined:
    Jul 22, 2013
    Posts:
    89
    Just a quick update.

    Shortly, there will be an Invocation plugin/sample being posted here:
    https://github.com/blackberry/Core-Native-Community-Samples/tree/master/UnityInvoke

    (Just going through final approvals.)

    There are instructions on building the library with Momentics, as well as a small sample on using the extension within Unity. It still needs to undergo some testing but if you do end up using it, don't hesitate to reach out to me with any questions or issues. Ultimately, our Docs team will be putting together a complete guide on writing an extension for Unity based on this invocation sample.

    For information on specific invocations, check out this doc here:
    https://developer.blackberry.com/na...e_platform/invocation/invoking_core_apps.html

    UPDATE: 25/05/2014

    The Unity Invocation extension is now live! Give it a shot and please provide any feedback to me so we can fix issues ASAP.

    You can check it out here:
    https://github.com/blackberry/Core-Native-Community-Samples/tree/master/UnityInvoke

    And information on invoking core applications can be found here:
    https://developer.blackberry.com/native/documentation/cascades/device_platform/invocation/invoking_core_apps.html
     
    Last edited: May 21, 2014
  35. stroker5

    stroker5

    Joined:
    Aug 29, 2014
    Posts:
    1
    Thank So Much Erick! Like in C2, I appreciate it very much!