Search Unity

SRDebugger - On-Device Console, Options Panel, and Bug Reporter.

Discussion in 'Assets and Asset Store' started by Simie, Feb 7, 2015.

  1. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456

    SRDebugger is a tool to help you track down bugs while on the target device.
    Access to the Unity Console in any build of your game allows you to diagnose problems without deploying a debug build tethered to the Unity Editor.
    The options tab can help you tweak parameters and invoke methods, enabling fast iteration of gameplay features.
    Designed from the ground up for performance, SRDebugger can be included in all builds of your product with minimal footprint.


    Key Features

    - Unity 2017/2018 Compatible. Supports Unity 5.6 and greater.
    - View the Unity3D console log at runtime on your mobile device, without tethering to your laptop.
    - Console can be docked to view the log while in-game. (NEW)
    - Configure keyboard shortcuts for quick access on desktop platforms.
    - Allow users to send bug reports directly to your email address with console log and screenshot attached.
    - Tweak properties in the options panel, test out new parameters without redeploying to your device.
    - Create toggles to enable debug features - god mode, debug hud, etc.
    - Setup actions that can be executed to perform useful tasks. Go to level, restart game, player, etc.
    - Pin any option to the in-game view to tweak values without opening SRDebugger.
    - Profile tab presents an approximated breakdown of how long each step of the frame took to execute.
    - Examine specs of the device your game is running on.
    - Display build manifest when using Unity Cloud Build.
    - High performance. Console supports hundreds of messages. With the debug panel closed, monitoring footprint is tiny.
    - Responsive design supports any resolution or orientation.
    - Implemented in the new Unity UI.
    - Works in Unity Free/Personal and Unity Professional.
    - Full C# source code included.

    Currently supports Standalone, iOS, Android, Windows 8 and Web Player platforms.

    Screenshots









    Demonstration

    SRDebugger is accessed via a hot-spot in the corner of the display. Simply triple tap to open.



    Optionally, this hot-spot can be disabled and the debug panel opened from script.
    Code (csharp):
    1. SRDebug.Instance.ShowDebugPanel();

    The options tab provides a simple interface for tweaking properties or invoking actions.



    Any properties of supported types defined in the SROptions class this tab.
    Code (csharp):
    1. public partial class SROptions {
    2.     private float _myProperty = 0.5f; // Default Value
    3.  
    4.     [Category("My Category"]
    5.     public float MyProperty {
    6.         get { return _myProperty; }
    7.         set { _myProperty = value; }
    8.     }
    9. }
    Any property or action from the options tab can be pinned, so it will appear even when the debug panel is closed. This is perfect for fine-tuning gameplay related parameters.



    Any questions, please don't hesitate to post below or shoot me an email at simon@stompyrobot.uk. Check out our website for more information about SRDebugger! Thank you for reading :)


     
    Last edited: Feb 7, 2021
  2. TokyoDan

    TokyoDan

    Joined:
    Jun 16, 2012
    Posts:
    1,080
    Hi. I just bought SRDebugger but I get this error when I import the SRDebugger asset:

    Assets/StompyRobot/SRF/Scripts/Helpers/RealTime.cs(6,21): error CS0101: The namespace `global::' already contains a definition for `RealTime'

    It seems that NGUI also has a 'RealTime' class:

    Code (CSharp):
    1.  
    2. //----------------------------------------------
    3. //NGUI: Next-GenUIkit
    4. //Copyright©2011-2014TasharenEntertainment
    5. //----------------------------------------------
    6.  
    7. usingUnityEngine;
    8.  
    9. ///<summary>
    10. ///Time class has no timeScale-independent time. This class fixes that.
    11. ///</summary>
    12.  
    13. public class RealTime : MonoBehaviour
    14. {
    15. #ifUNITY_4_3
     
  3. TokyoDan

    TokyoDan

    Joined:
    Jun 16, 2012
    Posts:
    1,080
    To get around this problem I just deleted Assets/StompyRobot/SRF/Scripts/Helpers/RealTime.cs. But when I build (Or try to run in the Editor) tapping three times in the specified corner does not bring up the debugger. Also It is causing my project to crash on load so often that I have to delete the project, and reopen my old project and re-import SRDebugger from the Asset Store.
     
  4. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Hi @TokyoDan, thanks for purchasing. I'm sorry you're having problems.

    The next update will remove the RealTime class (it's part of SRF, my supporting library, and isn't used by SRDebugger specifically, so can safely be removed as you have done).

    Re. the debugger not showing, have you added the SRDebugger.Init prefab to the scene you are running? You can take a look at StompyRobot/SRDebugger/Scenes/Sample.unity to see a simple setup of how it should look.

    The crashing bug is strange, I've never encountered the kind of editor crashes you seem to be getting. Do you have any error messages or a stack trace of a crash I could take a look at?

    Simon
     
  5. TokyoDan

    TokyoDan

    Joined:
    Jun 16, 2012
    Posts:
    1,080
    Hello Simon.

    Forget the crashing. Although when I imported SRDebugger into my project I was using Unity 4.6.2. Later when I went to work on it again I was getting confused and loading my project (with SRDebugger) in an older version of Unity (4.5.5). I got 3 versions installed and sometimes I start up the wrong one. When I do this the project hangs on load (spinning BeachBall) and I have to Force Quit it. Sorry to alarm you.

    My problem now is that it just doesn't work when I add the SRDebugger.Init prefab to my scene. In the Editor it runs with no errors but it seems that it is not acknowledging my triple-tap to start up SRDebugger. Nothing happens. BUT If I load the sample scene that is included with SRDebugger it works fine and looks real nice.

    Maybe not acknowledging my triple-tap is a conflict...

    Although I use Unity 4.6.2 I am not yet using any of Unity's 2D stuff. As for UI I am using NGUI because my project is too far along to change to a different UI system right now. I started my project two years ago long before Unity's 2D GUI came out.

    Another possible conflict may be because I am using FingerGestures http://fingergestures.fatalfrog.com OnTap() on my Default layer and that may be masking the tap from getting to SRDebugger:

    Code (CSharp):
    1.    
    2.  void OnTap(TapGesture gesture)
    3.     {
    4.         if(gesture.Selection != null)
    5.         {
    6.             if(gesture.Selection.name == "TOTplayButton")
    7.             {
    8.             }
    9.             else if(gesture.Selection.name == "TOTsettingsButton")
    10.             {
    11.             }
    12.  
    Maybe SRDebugger should use it's own layer so as not to conflict.

    Regards,
    Dan
     
  6. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Hi Dan,

    Good to hear you resolved the crashing issue, that had me pretty concerned for a moment!

    Does the debugger appear correctly if your scene camera has a culling mask that includes the built-in UI layer? I've got an idea to include an option in the SRDebugger Settings window to select the layer that SRDebugger will use for rendering and input, which could help in situations such as yours.

    Regarding compatibility with NGUI and FingerGestures, the new Unity UI event system provides a IsPointerOverGameObject() function which you can use to check if the debugger panel is blocking a touch, before your NGUI or FG code responds to it.

    For FingerGestures you can use the FingerGestures.GlobalTouchFilter delegate to filter out touches that are interacting with the Unity UI. In my own games I use this, feel free to use it in your project:

    Code (CSharp):
    1.     public class FingerGesturesUnityEventsFilter : MonoBehaviour
    2.     {
    3.  
    4.         void Awake()
    5.         {
    6.  
    7.             FingerGestures.GlobalTouchFilter = GlobalTouchFilter;
    8.  
    9.         }
    10.  
    11.         private bool GlobalTouchFilter(int fingerIndex, Vector2 position)
    12.         {
    13.  
    14.             var isMouse = FingerGestures.Instance.InputProvider is FGMouseInputProvider;
    15.  
    16.             if (isMouse) {
    17.  
    18.                 if (fingerIndex == 0)
    19.                     fingerIndex = -1;
    20.  
    21.                 if (fingerIndex == 1)
    22.                     fingerIndex = -2;
    23.  
    24.                 if (fingerIndex == 2)
    25.                     fingerIndex = -3;
    26.  
    27.             }
    28.  
    29.             if (EventSystem.current.IsPointerOverGameObject(fingerIndex))
    30.                 return false;
    31.  
    32.             return true;
    33.  
    34.         }
    35.  
    36.     }
    Something similar might be possible for NGUI.
     
    Last edited: Feb 9, 2015
  7. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Hi @Dosetsu, SRDebugger should be fully namespaced. Are you talking about the Util class in SRDebugger/Scripts/Internal/Util.cs? That appears to be in the SRDebugger.Internal namespace.
     
  8. Dosetsu

    Dosetsu

    Joined:
    Dec 22, 2011
    Posts:
    39
    Yes, i see my error now - thanks so much for the reply!
     
  9. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    I'm glad it's resolved. Thank you for your purchase! :)
     
  10. Dosetsu

    Dosetsu

    Joined:
    Dec 22, 2011
    Posts:
    39
    Great package - highly recommend for everyone :)
     
  11. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Version 1.0.1 has just been submitted to the Asset Store for approval, with Unity 5.0 support and bug fixes.

    Code (csharp):
    1. 1.0.1
    2. ----------
    3.  
    4. - Unity 5.0 Support.
    5. - Added option to Settings pane to require the entry code for every time the panel opens, instead of just the first time.
    6.  
    7. Fixed:
    8. - Removed debug message when opening Options tab for first time.
    9. - Fixed conflict with NGUI RealTime class.
    10. - Fixed layout of pinned options when number of items exceeds screen width.
    Thanks all for your purchases and messages so far. If you find it useful it would be great if you could leave a review on the Asset Store :)

    The next update will include Windows Store support, and hopefully IL2CPP support for iOS (I'm waiting on a few bug fixes on Unity's side before this can be finished)
     
  12. TokyoDan

    TokyoDan

    Joined:
    Jun 16, 2012
    Posts:
    1,080
    I included 'UI' in my scene camera's culling mask. And that doesn't help.

    And I don't think my problem is the debugger panel blocking a touch, before my NGUI or FG code responds to it. It's the other way around as the debugger panel never appears. I think maybe NGUI or FG are blocking touches from hitting that little square area in the corner that you tap on to bring up the debugger panel.

     
  13. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    @TokyoDan, here is a list of things that might help us track down the issue:

    - If you disable the NGUI root GameObject does the corner-trigger work?
    - Can you try selecting the EventSystem gameobject that is created at runtime (example screenshot) and checking if it's responding to input correctly?
    - If you select SRDebugger/Trigger/Trigger(Clone) at runtime and set the GraphicRaycaster "BlockingObjects" field to None does that help?

    If none of these help, if you could package up a repro project that demonstrates the issue that would be the quickest way to solve this.

    A bit more info. As far as I'm aware, NGUI and FG shouldn't interfere with the Unity UI EventSystem directly. It's possible that they might be blocking raycasts of some kind, but I was under the impression that the GraphicRaycaster component didn't use the physics system for raycasting, so it's a bit odd that we're seeing probems here.

    EDIT:

    I've just finished porting a project of mine that uses NGUI and FingerGestures extensively to use the latest version of SRDebugger, and it seems to work fine without any problems.

    Could you also screenshot for me the camera you have in the scene that is having problems? (Specifically, I want to see the Culling Mask). I might have a few ideas for changes that might fix your problem, if none of this helps I'll see about getting you a beta version of the next update with those changes in place.
     
    Last edited: Feb 10, 2015
  14. TokyoDan

    TokyoDan

    Joined:
    Jun 16, 2012
    Posts:
    1,080
    My game starts with a 1st 'DontDestroyOnLoad' scene (TOTinit) which just has some initialization scripts (no camera) and quickly loads a 2nd scene (TOTinit2) which has a Main Camera and also has some initialization scripts and animation. In this 2nd scene there is also a PLAY button that starts the game by loading the 3rd scene (Play).

    I don't have to go as far as loading the 3rd (Play) scene to experience my problem

    Since my 1st scene does not have a camera I also tried putting the SRDebugger.Init prefab in my second scene so that I could add 'UI' layer to my Main Camera's culling mask.

    NGUI is not used in these 1st two scenes. But I forgot to mention that PlayMaker is. Also FingerGestures is used. Anyway I disabled the PlayMaker root objects and that didn't help.

    I selected the EventSystem gameobject that is created at runtime. And at the bottom on the Inspector I could see it updating pointer position and mouse clicks.

    I selected SRDebugger/Trigger/Trigger(Clone) at runtime and set the GraphicRaycaster "BlockingObjects" field to None. That didn't help either.

    As far as packaging up a repro project that demonstrates the issue the only thing I could do is send you my whole project. I see no value in trying to pare it down to isolate the problem as I'd end up getting rid of so much of my game that I'd find that SRDebugger is incompatible in my game and will not suit the purpose for which I bought it tis time. (although I do plan to use it in future games or once we figure out why it's not working in my project)

    I'd need an email address so I could sen you a Dropbox URL to the project.

    Anyway I'm sure the problem is not due to any deficiency in SRDebugger. It is caused by the complexity and probably unorthodox way I use scenes in my project.

    Thanks for your great support.
     
  15. TokyoDan

    TokyoDan

    Joined:
    Jun 16, 2012
    Posts:
    1,080
    I'm starting to think that the size, placement (Y position), and rotation of the trigger for SRDbugger may be the problem. My game is a board game in 3D space. The board is orientated is such a way that X= width, Z=height, Y= the face on which pieces are placed. When you look at the board you are looking down, and if the pieces are forced off the board they fall (-Y). I think in normal 2D, X= width, and Y=height and there is no Z (except for depth and parallax scrolling effects)

    To achieve certain effects I do animation of planes. For example I have a blank plane at startup which just fills the screen. Then another plane with 3D game objects (start button, settings button, title, etc) slides in from the -Y direction and 'pokes' through the blank startup plane. (You can see this effect at http://www.azumachogames.com/the-octagon-theory/#Example )

    I think the trigger is not is a position that is unobstructed, sized or facing properly.

    In SRDebugger Settings when I set the corner for the trigger position. Of what object is that the corner of? What determines the actual size, rotation and x,y,z position of that trigger?

    Maybe there should be more settings for that trigger to allow positioning in 3D space, in addition to its default 2D positioning.
     
  16. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    @TokyoDan, if you're fine with sending me the entire project that is having the problem, I'm fine with that. I've sent you an email with my Dropbox email address.
     
  17. TokyoDan

    TokyoDan

    Joined:
    Jun 16, 2012
    Posts:
    1,080
    Hmmm. I didn't get any email. Did you send it to the one that starts with tokyo or the one that starts with huffman?
     
  18. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    I sent it to the one starting with Huffman. If you're just sending a shareable link, sending it to simon@stompyrobot.uk will reach me.
     
  19. TokyoDan

    TokyoDan

    Joined:
    Jun 16, 2012
    Posts:
    1,080
    OK. Thanks. I'll send it in a minute. To simply things all it does is start up with the 1st Scene (TOTinit) which has no camera and quickly loads the 2nd scene (TOTinit2) which does have a camera. I stop it there with a blank screen as it doesn't load any other scenes or any game objects. SRDebugger.Init is in scene TOTinit2 because scene TOTinit has no camera. The Main camera culling mask is set to Default & UI. The Trigger position is set to bottom left.

    The project is named TOT 3 SRDebug and is zipped.
     
  20. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    @TokyoDan, just replied to your email. Let me know if it helps.
     
  21. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    SRDebugger 1.0.1 has been approved and is now available on the asset store.

    Here is the changelog:

    1.0.1
    ----------
    New:
    - Unity 5.0 Support.
    - Added option to Settings pane to require the entry code for every time the panel opens, instead of just the first time.

    Fixed:
    - Removed debug message when opening Options tab for first time.
    - Fixed conflict with NGUI RealTime class.
    - Fixed layout of pinned options when number of items exceeds screen width.
     
  22. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Just a quick note to say I've created a webplayer page to demonstrate the responsive design and basic usage.

    Check it out here.
     
  23. TokyoDan

    TokyoDan

    Joined:
    Jun 16, 2012
    Posts:
    1,080
    I just wrote my Asset Store review for this asset:

    ----------------------------------------------------------
    Absolutely the Best Asset of its Kind!

    SRDebugger is absolutely the best asset of its kind on the Asset Store. I've been looking for a way to see debugging info on device since I started developing with Unity a bit over two years ago. Since then I found two assest that handle this in various ways. But neither of them work as well, as easily, nor do half as much as SRDebugger does. It is pretty much a drag and drop solution. Just drag the main prefab into a scene, build, install on your device, and start using it. The amount of info it lets you see is amazing. And all of your Debug.Log output can be seen in its on-screen console. It works in the Unity editor too. And talk about great support! The developer is most responsive and helpful and fixes/improves things right away and puts them in the next release.

    SRDebugger is invaluable for any developer. I'll never go without this asset and I'll include it in all of my production builds so I'll be able to work with users having problems to get me the info that I need to fix the problem.

    Very professionally done. And just wait till you see what is coming. In one of the developer's replies to my email he awed me with some of the new features he'll be implementing soon.

    Don't wait for any sale. This is worth WAY more than it's current price. Get SRDebugger now. Believe me. You need it!
    ----------------------------------------------------------

    I guess anybody can tell that I like it.
     
    Dosetsu and Simie like this.
  24. Gekigengar

    Gekigengar

    Joined:
    Jan 20, 2013
    Posts:
    738
    Thi is a bit unrelated, but what font did you use on the system? Its really attractive.
     
  25. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Orbitron is the primary font.
    Source Code Pro for mono-space.

    @TokyoDan, as I said via email, thanks very much for the review. I'm glad you're finding SRDebugger useful!
     
  26. thienhaflash

    thienhaflash

    Joined:
    Jun 16, 2012
    Posts:
    513
    Looks really nice and polish, congratz man :)
     
  27. tosiabunio

    tosiabunio

    Joined:
    Jun 29, 2010
    Posts:
    115
    Great tool! I was about to build my own debug options and you saved me a lot of work.

    My only complaint at this moment is this parenthesis pair visible on option buttons - they don't offer any useful information - I know a function is called then, so what's the point. They take space and look butt ugly :)
     
  28. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    @thienhaflash, thanks!

    @tosiabunio, thanks for purchasing. It's good to hear this is going to save you having to create your own!

    Re. the parenthesis, you know, now that you mention it, I agree. It's hard to believe I didn't notice before... I'll likely make some changes there for the next version.

    Known Issues
    - In 4.6.2p2 onwards (including 4.6.3) the console list layout is handled incorrectly. I have a fix in place, and the next version will include it.
    - Trigger position setting in the Settings window is not checked on startup. Setting SRDebug.Instance.TriggerPosition at runtime works correctly. This will also be fixed in the next version.
    - SRDebugger does not support IL2CPP yet. I'm working on this, but waiting on fixes from Unity before this can be supported.
     
    Last edited: Feb 20, 2015
    thienhaflash likes this.
  29. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Hey All,

    The next feature update isn't due for a few weeks yet, but the console layout bug is a pretty urgent problem in my mind. It renders the console tab useless in 4.6.3. So, I've just submitted a small patch release to the Asset Store today which fixes that. This isn't the feature update, which will include the bug reporter and Windows Store support.

    I'll post again when it's available. :)
     
  30. tosiabunio

    tosiabunio

    Joined:
    Jun 29, 2010
    Posts:
    115
    Another small suggestion - it would be great to have the option (in settings for example) to decide which panel active when SRDebugger is activated for the first time. For me the most important and most frequently used panel is the options and I need to switch to it every time I run the game and activate the debugger. During development we run quick sessions very often and this doesn't allow us benefit much from the fact that it remembers the last used panel in the same session - new session restores defaults.
     
  31. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Good idea, I've added it to the roadmap.
     
  32. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Just posting to say 1.0.2 is now up on the Asset Store. Upgrading is recommended if you are using Unity 4.6.3 (Or Unity 4.6.2p2+)
     
  33. Mangas

    Mangas

    Joined:
    Jan 16, 2013
    Posts:
    17
    Hi, I was developing a game for Windows and when I saw your asset I bought it thinking that it would be as good for Desktop debugging as for mobile devices, which I don't plan to build for. The problem is, whenever I open the debugger it gets the focus of my keyboard and doesn't let me type (left + space) without opening the debugger again.

    It makes the asset impossible to use for me, so if there's any way of getting back the focus of the input I would really appreciate it.
     
  34. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Hi @Mangas, thanks for purchasing.

    What are you using to get keyboard input in your game? SRDebugger uses the new Unity Event System added in 4.6, I suppose that could be conflicting with what you use.

    If you're also using the Unity EventSystem, you could try adding this to an Awake()/Start() script in your scene to see if forcing unity to deselect the focused object when the panel closes helps.

    Code (CSharp):
    1. SRDebugger.Internal.Service.Panel.VisibilityChanged += (panel, visible) => {
    2.     if(!visible) UnityEngine.EventSystems.EventSystem.current.SetSelectedGameObject(null);
    3. };
    If so, I'll make SRDebugger do that automatically in the next version.

    EDIT: I should also add, I'm using SRDebugger myself for a first-person desktop game and will be adding some more desktop-focused features (keyboard shortcuts in particular) in an update sometime.
     
    Last edited: Feb 27, 2015
    Mangas likes this.
  35. Mangas

    Mangas

    Joined:
    Jan 16, 2013
    Posts:
    17
    I didn't realize the asset was ussing the Event System, now everything is working fine.

    Thank you very much!

    PS: Have you considered adding custom debug tags to the console, apart from Log, Warning and Error?
     
  36. djfrail

    djfrail

    Joined:
    Jan 16, 2014
    Posts:
    124
    Hi - this is a quite handy asset! Slight issue - I seem to be getting an error when I go from a scene that doesn't have the SRDebugger.Init prefab in the scene into a scene that does have it. Here's the error:

    NotSupportedException: The invoked member is not supported in a dynamic module.
    System.Reflection.Emit.AssemblyBuilder.GetExportedTypes () (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection.Emit/AssemblyBuilder.cs:680)
    SRF.Service.SRServiceManager.UpdateStubs () (at Assets/StompyRobot/SRF/Scripts/Service/SRServiceManager.cs:262)
    SRF.Service.SRServiceManager.AutoCreateService (System.Type t) (at Assets/StompyRobot/SRF/Scripts/Service/SRServiceManager.cs:287)
    SRF.Service.SRServiceManager.GetServiceInternal (System.Type t) (at Assets/StompyRobot/SRF/Scripts/Service/SRServiceManager.cs:85)
    SRF.Service.SRServiceManager.GetService[IDebugService] () (at Assets/StompyRobot/SRF/Scripts/Service/SRServiceManager.cs:37)
    SRDebugger.SRDebuggerInit.Start () (at Assets/StompyRobot/SRDebugger/Scripts/SRDebuggerInit.cs:44)

    Any thoughts? I'm running Unity 4.6.3f1
     
  37. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Hi @djfrail, thanks for purchasing.

    Does the error occur in the editor or in the built player? If player, what platform was it on?

    I'm glad it's all working!

    As to custom tags, it's a feature I've considered. It might be included in a future version, but no guarantee yet.
     
  38. djfrail

    djfrail

    Joined:
    Jan 16, 2014
    Posts:
    124
    Error is in the editor. I'm on PC.
     
  39. Mangas

    Mangas

    Joined:
    Jan 16, 2013
    Posts:
    17
    Hi again,

    it seems that your asset it's not currently supported on Unity 5, the scripts of the UI break when trying to compile, the main reason seems to be this:

    The type or namespace name 'UI' does not exist in the namespace 'UnityEditor' (are you missing an assembly reference?) in \stompyrobot\srf\scripts\ui\editor\srnumberbuttoneditor.cs
     
    tosiabunio likes this.
  40. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Hi Mangas, does that error occur in the Unity Editor or in Visual Studio? I've noticed that compile error occurring when using UnityVS (Visual Studio Tools for Unity), but it doesn't affect compiling in the Unity Editor itself.

    @djfrail, I'm looking into the error.
     
  41. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    @djfrail, I think I've narrowed it down to the assembly scanning portion of SRDebugger trying to scan editor-only assemblies that are not compatible with reflection.

    Could you try replacing Assets/StompyRobot/SRF/Scripts/Service/SRServiceManager.cs with the following gist: https://gist.github.com/Simie/297fa9d0940ef54f52be

    If you still get the error, if you could send over the editor log that would be very helpful.

    Thanks!

    EDIT:

    We've resolved the crash via PM and the fix will be included in the next update.
     
    Last edited: Mar 4, 2015
  42. tosiabunio

    tosiabunio

    Joined:
    Jun 29, 2010
    Posts:
    115
    Well, what is the resolution then? I also can't compile SRDebugger with Visual Studio because UnityEditor.UI assembly isn't included in the references.
     
  43. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Sorry, the crash I was referring to was unrelated to the Visual Studio bug. I believe the compile error in Visual Studio is a bug with UnityVS not referencing the UnityEditor.UI DLL correctly. Since it compiles fine in the Unity Editor, I'm not sure what I can do to fix this. As a temporary work around I would recommend simply deleting the editor scripts which have this error, since they do not affect SRDebugger at runtime (They are part of SRF, our framework we used to develop SRDebugger and our own games).

    EDIT: You could also reference C:\{Unity5InstallDirectory}\Editor\Data\UnityExtensions\Unity\GUISystem\Editor\UnityEditor.UI.dll in the projects with errors in Visual Studio.

    I've just posted on the UnityVS product page to try and get this bug resolved in their next version.
     
    Last edited: Mar 5, 2015
    tosiabunio likes this.
  44. djfrail

    djfrail

    Joined:
    Jan 16, 2014
    Posts:
    124
    I noticed an issue on Android device where if I have SRDebugger.init in the scene and enabled, the first press of a 2D Toolkit button in the scene is either ignored or delayed. I checked what's going on in the profiler and EventSystem.Update() gets a huge CPU spike on that first button press. Doesn't happen on further button presses. If I disable SRDeugger.Init in the scene, there's no problem.
     
  45. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Hi @djfrail,

    If you place an EventSystem object in the scene (GameObject/UI/Event System in the menu bar) does the same spike occur on the first press?
     
  46. djfrail

    djfrail

    Joined:
    Jan 16, 2014
    Posts:
    124
    Ran the scene with SRDebugger.init active and added the EventSystem object to the scene - spike still occurs.
     
  47. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Does the spike occur if SRDebugger.Init is disabled and the EventSystem is present? I'm trying to determine if the cause is Unity's event system or something specific to SRDebugger.
     
  48. djfrail

    djfrail

    Joined:
    Jan 16, 2014
    Posts:
    124
    Yeah when the EventSystem object is on and SRDebugger.init is off the spike still occurs.
     
  49. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Hi All,

    I've been working on the new update for SRDebugger (v1.1). Here is a WIP changelog of the new version:



    I'll be submitting this update to the Asset Store this week. This will also be the end of the introductory discount, so keep that in mind if you are thinking of purchasing!
     
    Last edited: Mar 17, 2015
    tosiabunio likes this.
  50. Simie

    Simie

    Joined:
    Oct 26, 2012
    Posts:
    456
    Sorry, I left this hanging. This looks likely to be a problem on Unity's side if it still occurs without SRDebugger in the scene. It might be best to report a bug to Unity via the 'Help -> Report a Bug' menu option in the Unity Editor and they could look into it.