Search Unity

Script Inspector 3 - World's Fastest IDE for Unity

Discussion in 'Assets and Asset Store' started by Flipbookee, Jun 2, 2012.

?

What would you like to see in the next update?

Poll closed May 17, 2018.
  1. Line numbers

    140 vote(s)
    36.9%
  2. Code folding

    234 vote(s)
    61.7%
  3. More color schemes

    43 vote(s)
    11.3%
  4. Customizable color schemes

    71 vote(s)
    18.7%
  5. Search functionality

    152 vote(s)
    40.1%
  6. Lower price :D

    104 vote(s)
    27.4%
  7. No thanks, it's fine as it is :)

    11 vote(s)
    2.9%
Multiple votes are allowed.
  1. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Ah okay, I misunderstood... Then yes, that sounds as a bug and I'll should be able to reproduce it and then fixing it will be easy. Thanks a lot for reporting the issue!

    Having all tabs in a single Si3 window is also an option that has been requested and it may have some advantages, but also some disadvantages, like you won't be able to see two or more scripts side by side at the same time. That could be solved by allowing multiple Si3 windows, each containing multiple tabs...

    On another hand, having a single Si3 window with multiple tabs in it will also be beneficial for the debugger! So yeah, I have to seriously consider adding that as a new feature ;) (apart from the bug you described, that needs to be fixed anyway)
     
  2. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    @Wajdik, thanks for the suggestions! :)

    Yes, this is a great suggestion and very useful thing to have! I don't know about the others, but I personally miss that feature too.

    The reason this hasn't been added by now is the way how Si3 work and how it achieves its lightning fast speed :cool: - namely, Si3 doesn't resolve all the symbols in a script but only the ones which are visible in a view! The symbols outside of the visible view get resolved on demand and only when that's absolutely necessary. For example, if a field appears in the view but the definition of the field is somewhere up in the invisible part of the script, then the definition of the field has to be resolved as well to know what is the type of that field.

    Now to highlight all the references on the scrollbar I'd have to resolve considerably more symbols per frame, which may affect the performance. There are ways though to that incrementally so that there will be no performance penalty, but that's a bit more work than just doing it in a simple way... So, if there's enough interest for that feature I can totally up-prioritize that task? :)

    Yes, this has also been requested in the past. I think I can do that and I can also make that optional because some people may prefer to see more of the script name in the tabs titles instead of an X button that takes 20% or more of the already limited space in them.

    Note that the design of tabs titles comes from Unity and it may make more sense to request such feature to be done by Unity developers globally for all the tabs. The size of those tabs is also limited and hard-coded to a maximum of 100 pixels width regardless of what is the content in them. So far I've managed to change that to something like this:
    TooManyTabs.gif
    This is an optional feature which you can turn on in Si3 Preferences window. Note that there's absolutely no API in Unity to control how tabs titles are rendered and what you see here is result of a hack (a glorious one, to be honest). Adding an X button there might or might not be possible. I can try but I can't promise anything in advance ;)

    Did you know there are keyboard shortcuts for closing the tabs? That may be even easier than closing them with your mouse ;) ... Just saying :p

    On another hand, there's no reason to close the tabs if you don't mind them staying there. Once there are too many of them you can just close all of them with a single mouse right-click -> Close All SI Tabs... In theory, there should also be no impact on the performance of the Editor if you keep the tabs open for longer time.
     
    Victor_Kallai likes this.
  3. Victor_Kallai

    Victor_Kallai

    Joined:
    Mar 5, 2014
    Posts:
    123
    You can close tabs if you MIDDLE CLICK them, just like browser tabs, etc.
     
    Wadjey and Flipbookee like this.
  4. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Oh, nice! I didn't know Unity has added that, mostly because I'm using it on my laptop and there's no middle mouse button to click on my touchpad :)
     
  5. Wadjey

    Wadjey

    Joined:
    Feb 4, 2015
    Posts:
    244
    Hi,
    Thanks for your detailed response, but with the power of the nowadays computers I don't think highlighting all the references on the scrollbar will considerably affect the SI3 performance, and even I think that the benefits of such feature is greater than the slight performance drop. Anyway you can give it a try and see if the is a noticeable performance drop :)
    Also, you can add an option in the SI3 parameter to disable this feature if someone don't need it and want to stay with the lightning fast speed ;)
     
    Flipbookee likes this.
  6. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    @Wajdik, those are actually very true and valid points! Thanks for pointing that out :cool:
     
    Wadjey likes this.
  7. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,325
    That bug goes away after I restart unity and move the upper tabs below.
    One new bug: find all references on a class returns this 'var' that has nothing to do with performancemanager:
    Screen Shot 2016-10-20 at 11.31.53 PM.png
     
    Flipbookee likes this.
  8. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,325
    More bugs and questions:
    1. how do I turn off the tab zoom? Would love an option for instant tooltip :)
    2. if I open too many scripts the tabs disappear like so (extra incentive to manage tabs yourself ;) Screen Shot 2016-10-20 at 11.42.50 PM.png
    3. how do I create a custom color scheme?
    4. go to definition of a class or method that's inside a dll returns nothing, is it possible to show something similar to md? (no big deal if it's a herculean task)
    5. deleting the () in this line public static Dictionary <GameObject, Stack<GameObject>> poolAvailable = new Dictionary<GameObject, Stack<GameObject>>(); then typing ( should trigger the Dictionary autocomplete list:
    6. Screen Shot 2016-10-20 at 11.39.36 PM.png
    7. Is there an autocomplete for shaders?
    8. when I type one letter autocomplete takes a while before displaying the list, is it a limitation of how you build references on the fly or a bug? Autocomplete list usually takes a bit before displaying. I'm spoiled with md showing that list instantly (yes md, crazy uh?)
     
    Flipbookee and mcmorry like this.
  9. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Okay, good to know...

    Yeah, I see... That's because the type of that var was not recognized in that particular case, so Si3 shows it like that with a yellow highlight just in case, because that var might be a reference to the type you were searching. Si3 is not sure, so it goes the safer route - it shows it as a potential reference.

    That particular line did not resolve because of the * operator used in it, which is a custom operator between a Quaternion and a Vector3... Thanks, I'll fix that!

    I don't know what you mean? :s

    I see. Well, we should report that issue to Unity Technologies :p that's their code. Good point about managing tabs!

    All the themes are defined in FGTextEditor.cs - just search for all occurrences of an existing theme name and you'll see... Let me know if you create some cool new theme and share it with me so I can include it in the next release. Otherwise my updates may override your theme. But I'll change that and I'll move all those definitions outside if FGTextEditor.cs, each in its own script.

    Yes, I know about this. Argument list hints are not displayed for constructors... I'll fix it!

    Not yet, but Si3 was made with that in mind. Unfortunately, I never got the time to get to shaders or UnityScript autocompletion. :-\

    Yeah, the popup window shows up instantly on Windows, but it takes a little bit on OS X. This is not because of Si3 - I request a new window to be created and I get a reference to it instantly, but then either the OS or the Unity Editor is "slowly" creating an actual instance of the window in the OS, while from the perspective of editor scripts code it all looks like the window is already created and visible... I don't have a workaround for that. One thing worth trying would be to draw the content of the popup window inside the code editor window - that would work instantly, but it will be limited by the extents of the code window. I could still show the same content in the popup window once the window is created, so then the delay would only be visible in the part of the popup window that extends beyond the boundaries of the code window.

    Thanks for the bug reports! :cool:
     
    laurentlavigne likes this.
  10. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Yes, I know the floating windows don't stay always on top as they do on Windows. What's that other type of window? Is that dockable as well?

    Yes, but only in the Inspector window and only because those are menu items there are defined in a slightly different way than they are in the floating Si3 tabs and that way doesn't allow adding tick marks. :-\

    Isn't that (almost) exactly how it works? You type the opening brace and the closing brace appears right after the caret. Then you either type something here in that single line or you press Return and caret goes to the second line, while the closing brace goes to the third line... Or do you want that to happen without pressing Return? I'd say no man - how'd you type that all in a single line then? ;)

    I see... I think "this" is auto-selected there because "thisIsAVariable" starts exactly with "this", so now imagine if that got selected and then your fully type "this" and then press Space - "this" converts to "thisIsAVariable" even though you wanted to type only "this". Wouldn't you hate that? ;) I would :p

    That's not a bug - Si3 is a bit smarter than other IDE's :p it tries to avoid suggesting completions for code that wouldn't compile. At that particular place the "var" keyword is not allowed - you can't have and single embedded statement inside an if-block-statement which is a variable declaration statement. That wouldn't compile because the variable would go immediately out of scope and you'll never get a chance to use the variable, so C# doesn't allow that... Now I haven't tried the same thing if instead of a single statement in that if there were curly brackets - then Si3 should allow you to autocomplete the "var" keyword.

    Si3 should close the bracket when you type { and then Return should separate the brackets on different lines and place the caret in the middle empty line. I can't test that at the moment, but if this doesn't work like that then it's a bug and I'll fix it!

    Yeah, I see. :) It needs to filter the completion list to types only... I can fix that!

    Okay... This post is getting too long, I'll continue with the remaining points a bit later ;)
     
    laurentlavigne likes this.
  11. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Hey @laurentlavigne, that was quite a long list of things to answer ;) Here are the rest of them:

    Well, that's right, it will ask to save changes, but AFAIK any other editor would do that as well. ;) Si3 tracks changes properly in a sense that you can undo those changes and then Si3 will not ask to save changes because there are no change at that point. You can undo even more than that and then Si3 would ask to save changes. If you don't save them you redo the undone change and get to the point where the script matched the content with its last saved version and then Si3 won't ask to save that...

    The point here is, Si3 knows what was the last saved version of a script (or loaded if it was never saved after loading), and it uses its undo buffer history to "know" if it has any unsaved changes, but it doesn't compare the content of the saved script and the script in its editor text buffer. The situation you're questioning is a marginal case that's hardly an issue, but might also be intentionally done in case when you want to force enable saving for example. If the file is saved already you can't save it again because the save command is disabled, so you can type any character and delete it to force enable saving ;)

    I see, that's a good point! :) I'll do something about that... You've noticed that because you were editing scripts in the Inspector window, but once you get used to Si3 a bit more you'll rarely ever edit them there but instead you'll do that in SI tabs. That's much more convenient IMHO. Editing in the Inspector still exists only because of historical reasons and for convenience.

    Please note there's a nice way to disable those questions if they are annoying you! In Si3 Preferences under the Editor tab there's an option called "Don't ask to save, just 'Keep in Memory' - turn that on and see if that's fits you better. :)

    I really don't understand what you mean with this. There's only one algorithm for auto-closing parenthesis, square and curly brackets, or double quotes, so it works same for all of that. There are no inconsistencies here.

    Yes, I can add that! :)

    Wait, the "discard changes" pops up when you try to close SI tabs with unsaved changes or when you changes Unity selection and there are unsaved changes on a script done in the Inspector window. Is that what you refer to? If yes, see my comment above, there's an option to make that always default to "Keep Changes in Memory".

    I think this is same as in Visual Studio, but yeah, I guess allowing expansion of /// macro after the attributes would be okay too. The bad thing about that would be that then the attributes may end up separated too far from their target which would hurt the readability of your code, so I'll think about this. ;) It sounds like a good suggestion, but I'm in doubt is that's good in practice. :p

    Use Find in Files menu command from Window->Script Inspector or press Cmd-Shift-F. You can also do that from Si3's context menu - select some text and right-click it. :)

    Also consider making Cmd-Shift-F shortcut to be handled globally (not only when a Si3 view is focused) in the Si3 Preferences -> Editor tab -> Editor Keyboard section. :cool:

    I see... This is strange, sometimes it's very responsive and sometimes it takes a little bit. I'll investigate...

    Hehe, yes! Refactoring is already planned and it starts with Si3 version 3.1 :) so stay tuned for updates :cool:

    Thanks again for your awesome feedback!
     
  12. Alvaro_Spain

    Alvaro_Spain

    Joined:
    Sep 15, 2016
    Posts:
    13
    I bought SI3 some days ago during the 24h sale. I can say that for small projects and test scripts it is wonderful, fast and convenient, but without refactoring I don't even want to try it for larger projects. I am working right now on a project with more than 25.000 lines of code and many files, and I refactor (for changing names of variables and methods) several times a day. Contrary to the opinion of other people, for working with larger projects I don't care about debugging (I can do this with Monodevelop or Xamarin maybe 2 times a week, having an integrated debugger in SI3 is no problem for me), but refactoring is really a need.

    So I will wait some time before posting my review. The review will be very positive in any case, so please don't believe that I am trying to blackmail you with this comment, the only difference is that I will say that I use SI3 for small projects or for every kind of project.
     
    Flipbookee and mcmorry like this.
  13. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Thanks @Alvaro_Spain! :)

    Rename Refactoring will be the first refactoring feature in Si3 and it will be released in version 3.1 very soon. Debugging may take a bit more and that would be in Si4 which is much later than refactoring features. ;)

    Thanks a lot for sharing your opinion here! I don't see requesting features here as blackmailing, not at all. That's perfectly fine and indeed very valuable for me to know what people want, so I can prioritize the more important features first. :) Si3 is 90% result of user's requested features and it wouldn't be what it is at all without them doing that. :cool: On the other hand, posting a non-5-stars review and saying "Si3 is awesome but it lacks my favorite feature" is another story and that's not really nice as it looks like an attempt to bypass the opinion of everyone else and force the developer to focus on them... So thanks a lot for requesting the feature here :cool:
     
    Last edited: Oct 23, 2016
  14. DonLoquacious

    DonLoquacious

    Joined:
    Feb 24, 2013
    Posts:
    1,667
    Looks like delegate invokes are showing up as unknown symbols in the latest version- pretty trivial and easy to ignore, so I thought I'd mention it before I forgot about it. Haven't run into any other issues in the few hours since I've been trying it out- really enjoying using it.
     
    Flipbookee likes this.
  15. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Ah yes, if a delegate is invoked using its Invoke method then the Invoke method call is not recognized. Someone has mentioned that already, but I forgot to fix that. I normally invoke my delegates using their shorter syntax - myDelegate() instead of myDelegate.Invoke() so I don't notice the issue. Thanks for reminding me! :)

    Thanks @Lysander! :D
     
    Novack likes this.
  16. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Just an observation, the shortcut Ctrl+Shift+F opens the Find/Replace window even if there is no scripts open, we sometimes use this shortcut to position the camera in the scene :p
     
    Flipbookee likes this.
  17. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Right, that's kind of Unity's fault - they assigned the standard Find in Files shortcut to the Align With View command. :eek: It's a mystery why they have done that - there's no even a single F in that command name! :confused: That's just evil... Moreover they made that shortcut global ignoring what window is focussed even though it only makes sense to use the shortcut when the Scene view is focussed and eventually the Hierarchy view. So that's double-evil...

    Finding that out was quite shocking for me, so I found ways how to override that on both Windows and OS X :p and then I took over the control over the shortcut :p but I didn't want that to be seen as being even more evil, so I made that optional. ;) There's an option in Si3 Preferences to handle (or not) Find in Files globally and it's on by default:

    FindInFilesShortcut.png

    Just turn it off if you don't want to use Find in Files when Si3 is not in focus... Si3 still own the control over the shortcut but if this option is off and Si3 windows are not in focus then it executes the Align With View command instead of Find in Files. :cool:
     
    Novack and Invector like this.
  18. Invector

    Invector

    Joined:
    Jun 23, 2015
    Posts:
    966
    Perfect!
     
    Flipbookee likes this.
  19. sindrijo_

    sindrijo_

    Joined:
    Aug 15, 2016
    Posts:
    7
    Bug: Calling methods that require parameters with no arguments are not marked with a red squiggly.

    Example:
    Code (CSharp):
    1. Random.Range();

    Bug: Autocomplete does not add parentheses when auto-completing method calls.

    Ideally:
    Add a semicolon if the resolved method returns void.
    Place the caret inside the parentheses if it has any overloads that require parameters otherwise place it after the method if the method returns a value.
     
    Last edited: Oct 27, 2016
    Flipbookee likes this.
  20. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Good catch... Thanks, I'll fix that!

    Not really a bug but rather a missing feature ;) and also a particularly nice one! I'd love to get it in Si3 exactly in the way you described it! :cool:

    I have actually thought about that and the reason it's missing is because it isn't an easy feature to implement. Just adding the parentheses, eventually with a semicolon, and positioning the caret is the easy part, but it gets a bit complicated when it comes to "eating" the additional auto-inserted characters, so that people who are not used to such feature can still type in the parentheses and the semicolon and the caret must move accordingly during that. That's similar to how auto-closed parentheses, square brackets, curly brackets, and quotation marks work now, so I will be reusing that same logic but I have to extend it just a little bit... Thanks for the great suggestion! :)
     
  21. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    And, in case you haven't noticed yet...

    Script Inspector 3
    version 3.0.16
    was released on Asset Store a few hours ago :cool:
    Changes in version 3.0.16:
    - Applied all @broberson's changes to allow compiling Si3 as a DLL
    - Fixed exceptions when drawing uninitialized arrays of UnityEvent - thanks @thienhaflash
    - Added support for Tooltip attribute on UnityEvent field - thanks @JoeStrout
    - Fixed an exception on attempting to read a write-only property while constructing its tooltip text

    Please update your copy as that fix about UnityEvent fields is a critical one! ;)

    Also, don't miss the opportunity while you are on that page to post a review and say something nice about Si3 :) especially if you love Si3 and if it helps you be more productive! :D In case Si3 has made working in Unity more enjoyable, posting a nice review is mandatory :p and a great way to say thank you and to let me know I'm doing the right job :)

    Enjoy! :cool:
     
    docsavage likes this.
  22. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    And... if you don't see a fix for a bug you've reported or a feature you've requested is not there yet, don't panic! ;) This release was an urgent one to address the issue introduced in 3.0.15 with Si3's new UnityEvents PropertyDrawer, because that one could prevent you from editing properties of UnityEvent type in the Inspector. :rolleyes:

    Moreover, since I'm already wrapping the built-in PropertyDrawer, @JoeStrout proposed I could as well try to fix the missing support for Tooltip attribute on UnityEvents - so I did that as well! :D Next would be to add a button for invoking UnityEvents for testing purposes right from the Inspector, if anyone can see that as an interesting feature? :cool:
     
    JoeStrout likes this.
  23. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    9,859
    Yes, I don't expect I would use that very often, but I can certainly imagine using it now and then.

    Here's another annoying feature-lack that's been around since UnityEvents were first introduced: you can't make a Unity event that takes an Enum parameter, and get a nice enum pop-up like you do for ordinary public fields. Is that something you could fix while you're at it?
     
    Novack and Flipbookee like this.
  24. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Hmm, that sounds pretty easy, but let me check first before I promise anything ;)
     
    Novack likes this.
  25. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    @Flipbookee,

    Hi again. Sorry to pester you. Is there a Replace All/Rename tool?

    I have finished most of my coding for the game before getting Si3 but I estimate it's already saved me a ton of time. Wish had Si3 at the start.

    Thanks:)
     
    Flipbookee likes this.
  26. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    @docsavage yes, there's is Replace All already and it's way better than the one in MonoDevelop and also slightly better than in Visual Studio. :cool: Run it with the main menu from Window->Script Inspector 3->Replace in Files or press Shift+Ctrl+H on Windows, or Shift-Cmd-H on OS X :)

    The Rename Refactoring is still missing, but I've been working on that for a while already and it will be released very soon in Si3 version 3.1, so stay tuned for updates...
     
  27. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021

    Sounds great. I have looked for docs but can't find them for some reason. Mainly just a list of keyboard shortcuts would be useful as I suspect this app does more than is easily visible:)
     
    Flipbookee likes this.
  28. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Yes @docsavage, these are the lists of all keyboard shortcuts:
    https://www.cheatography.com/flipbookee/cheat-sheets/script-inspector-3-os-x/
    https://www.cheatography.com/sarper/cheat-sheets/script-inspector-3-windows/

    ... or just print the attached pdf's :cool:

    Well yes, Si3 converts your Unity Editor to an IDE you could only dream about - the IDE that has a fully blown game engine and game editor embedded inside it! :D
     

    Attached Files:

    docsavage likes this.
  29. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    Like it:)

    Thanks for these documents as well.
     
    Flipbookee likes this.
  30. julesd

    julesd

    Joined:
    Sep 30, 2016
    Posts:
    26
    Am I able to edit Source Forge shaders (.shader) When I double click on a .shader file it opens up Visual Studio and MonoDevelope.

    I t would be nice to work with .shader file in Script Inspector 3.

    I believe .shader is the same as a .cs file.
     
    Flipbookee likes this.
  31. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    9,859
    Yes, I edit shaders with Si3 all the time. Maybe check your preferences? When you have the shader selected, do you have the cool Si3 inspector where you can actually edit, or the old non-editable inspector?
     
    Flipbookee likes this.
  32. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,325
    I've never compiled to a dll, what are the steps to do that? from monodev or within si3?
     
    Flipbookee likes this.
  33. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    @julesd, check your settings in the gear toolbar button in one of the SI tabs:
    upload_2016-10-28_14-32-44.png

    Either "Open on Double-Click -> Shaders" or "Always open in Script Inspector" need to be on. In either case, you should be able to edit shaders in the Inspector tab - that's what @JoeStrout was asking. If you don't see the code there then most likely Si3 didn't get installed correctly, so then you should check the Console and fix all compile errors...

    Let us know if this helps! :)
     
  34. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    From MonoDevelop, but I'm not sure I remember all the steps now. :p However, there was a tricky part in it - setting the scripting define symbols. I made a tiny script to extract those from Unity and then I copy/pasted that to MD project options. I can check later when I get back home and post the list of those defines here...

    But my plan is to get all that automated and to make it run from a single menu command! :cool: Then you wouldn't have to that yourself.
     
    laurentlavigne likes this.
  35. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Novack likes this.
  36. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    9,859
    I didn't have any spare votes left, so I took some votes off of something else and put them on this one!
     
    Flipbookee likes this.
  37. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Thanks @JoeStrout for the votes and your awesome comment :cool:

    image.png
     
    Last edited: Oct 29, 2016
  38. sngdan

    sngdan

    Joined:
    Feb 7, 2014
    Posts:
    1,154
    I did not even know this voting existed, +10 from me... :)
     
    Flipbookee likes this.
  39. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Yay! Thanks @sngdan :D
     
  40. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Boo! It looks like UnityEvents taking enum parameters are not fully supported to the level as parameters of type int, string, float or Unity object are! The method target selector supports "dynamic enum" binding to methods taking that type of enum parameter, but I can't bind it to those methods using a static parameter value... I'm afraid I can't do anything about that. Even if I fix the editor part, there's also a part of UnityEvents used at runtime, and that's not customizable. :(
     
  41. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    9,859
    Alas. Well, thanks for letting us know!
     
    Flipbookee likes this.
  42. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Oh, wow! This has reached 149 votes now and it's number 23 most voted suggestion in the Editor category, the most crowded one with 1744 open suggestions currently :eek:

    Thank you all for your votes! :cool:
     
  43. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    If I had free votes I would definitely add them to this. Only reason not transferring current ones is they are on a vote for adjustable font sizes in the editor and this is major priority due to eyesight. Otherwise it's a definite
    .
     
    Last edited: Oct 31, 2016
    Flipbookee likes this.
  44. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Yeah, that would definitely help me as well. I found myself recently more often stopping for breaks because of that...

    Is it this one here?
    https://feedback.unity3d.com/suggestions/change-font-size-in-unity-editor

    All of the GUIStyles used in Editor are predefined and loaded from built-in resources. I can imagine making a script that runs on loading and then goes through all of those styles and adjusts the font sizes wouldn't be a too difficult thing to do. :) Making that script might also be much faster than waiting for Unity to get that feature... :p

    It may not work for everything but I assume it will work for most of the text in the Editor! :cool: If someone wants to try this, I can offer my help by sharing what I know so far about that. :)

    Edit: A similar hack can be used to swap the light skin with the dark one, or any other custom skin. Not sure if that would make Unity folks a bit angry, though ;)
     
    docsavage likes this.
  45. Frednaar

    Frednaar

    Joined:
    Apr 18, 2010
    Posts:
    153
    Script inspector is my favourite asset store addon and the first thing I install on any project... definitely I will vote for it right now !

    edit: added 5 votes..
     
    Flipbookee and JoeStrout like this.
  46. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    I can't see them being happy with the color theme changes either. Surely they'd understand an add on that caters for customers who need bigger fonts to be able to continue work/being more productive. If they are slow doing it then someone will. Only problem is asset store submission may not pass it.
     
  47. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,021
    Flipbookee likes this.
  48. Alvaro_Spain

    Alvaro_Spain

    Joined:
    Sep 15, 2016
    Posts:
    13
    I would buy an asset to increase font size in the editor. 9 of my votes have been used to ask UT for this feature. I own a 36'' monitor and the fonts in the editor are almost imposible to read for me.

    I don't believe that Unity Technologies will fix the too small font problem with the editor at least in the foreseeable future. People have been asking for a solution since 2009 and nothing has been done, so it is not rational to suppose that UT will solve it anytime soon.

    My impression is that UT mainly works in things that, according to their opinion, will bring them immediate money, such as porting Unity for consoles and other systems, etc (the console maker will pay UT to do this porting). For this reason, in my opinion, to increase the font size in the editor is one of the things with lowest priority for UT. They have no real concurrence in the games platform market and there is little or no money to be made helping the people who make games to work more comfortably. Since so many people use free Unity, I can understand this decision, at least as a businessman, but it has risks.
     
    docsavage and Novack like this.
  49. thienhaflash

    thienhaflash

    Joined:
    Jun 16, 2012
    Posts:
    513
    Bad news for today, I'm on SI v3.0.15f

    Code (CSharp):
    1. ArgumentOutOfRangeException: Argument is out of range.
    2. Parameter name: index
    3. System.Collections.Generic.List`1[UnityEngine.Events.PersistentCall].get_Item (Int32 index) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/List.cs:633)
    4. UnityEngine.Events.PersistentCallGroup.GetListener (Int32 index) (at /Users/builduser/buildslave/unity/build/Runtime/Export/UnityEvent.cs:460)
    5. System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
    6. Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
    7. System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:232)
    8. System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MethodBase.cs:115)
    9. ScriptInspector.Extensions.FlipbookGames.Si3UnityEventDrawer.DrawEventListener (Rect rect, Int32 index, Boolean isactive, Boolean isfocused) (at Assets/Plugins/Editor/ScriptInspector3/Si3 Extensions/Si3 UnityEventDrawer.cs:210)
    10. UnityEditorInternal.ReorderableList.DoListElements (Rect listRect) (at /Users/builduser/buildslave/unity/build/Editor/Mono/GUI/ReorderableList.cs:572)
    11. UnityEditorInternal.ReorderableList.DoList (Rect rect) (at /Users/builduser/buildslave/unity/build/Editor/Mono/GUI/ReorderableList.cs:399)
    12. UnityEditorInternal.UnityEventDrawer.OnGUI (Rect position) (at /Users/builduser/buildslave/unity/build/Editor/Mono/Inspector/UnityEventDrawer.cs:157)
    13. UnityEditorInternal.UnityEventDrawer.OnGUI (Rect position, UnityEditor.SerializedProperty property, UnityEngine.GUIContent label) (at /Users/builduser/buildslave/unity/build/Editor/Mono/Inspector/UnityEventDrawer.cs:123)
    14. ScriptInspector.Extensions.FlipbookGames.Si3UnityEventDrawer.OnGUI (Rect position, UnityEditor.SerializedProperty property, UnityEngine.GUIContent label) (at Assets/Plugins/Editor/ScriptInspector3/Si3 Extensions/Si3 UnityEventDrawer.cs:193)
    15. UnityEditor.PropertyDrawer.OnGUISafe (Rect position, UnityEditor.SerializedProperty property, UnityEngine.GUIContent label) (at /Users/builduser/buildslave/unity/build/Editor/Mono/ScriptAttributeGUI/PropertyDrawer.cs:23)
    16. UnityEditor.PropertyHandler.OnGUI (Rect position, UnityEditor.SerializedProperty property, UnityEngine.GUIContent label, Boolean includeChildren) (at /Users/builduser/buildslave/unity/build/Editor/Mono/ScriptAttributeGUI/PropertyHandler.cs:134)
    17. UnityEditor.EditorGUI.PropertyFieldInternal (Rect position, UnityEditor.SerializedProperty property, UnityEngine.GUIContent label, Boolean includeChildren) (at /Users/builduser/buildslave/unity/build/Editor/Mono/EditorGUI.cs:5158)
    18. UnityEditor.EditorGUI.PropertyField (Rect position, UnityEditor.SerializedProperty property, Boolean includeChildren) (at /Users/builduser/buildslave/unity/build/artifacts/generated/common/editor/EditorGUIBindings.gen.cs:1041)
    19. UnityEditor.EditorGUI.PropertyField (Rect position, UnityEditor.SerializedProperty property) (at /Users/builduser/buildslave/unity/build/artifacts/generated/common/editor/EditorGUIBindings.gen.cs:1036)
    20. ce2_GUI.InlineButton (Rect r, UnityEngine.UI.Button b) (at Assets/CompositeUI2/core/ce2_GUI.cs:113)
    21. CompositorEditor.DrawSimple (.CElement e) (at Assets/CompositeUI2/Editor/CompositorEditor.cs:172)
    22. CompositorEditor.OnInspectorGUI () (at Assets/CompositeUI2/Editor/CompositorEditor.cs:120)
    23. UnityEditor.InspectorWindow.DrawEditor (UnityEditor.Editor editor, Int32 editorIndex, Boolean rebuildOptimizedGUIBlock, System.Boolean& showImportedObjectBarNext, UnityEngine.Rect& importedObjectBarRect) (at /Users/builduser/buildslave/unity/build/Editor/Mono/Inspector/InspectorWindow.cs:1233)
    24. UnityEditor.DockArea:OnGUI()
    25.  
     
  50. Flipbookee

    Flipbookee

    Joined:
    Jun 2, 2012
    Posts:
    2,793
    Hehe, too late man ;) that got fixed last week with the release of Si3 version 3.0.16 :p