1. Help us improve the editor usability and artist workflows. Join our discussion to provide your feedback.
    Dismiss Notice
  2. Unity 5.6 is now released.
    Dismiss Notice
  3. Check out all the fixes for 5.5 in patch releases 1 & 2.
    Dismiss Notice
  4. Get further faster with the Unity Plus Accelerator Pack, free for new Unity Plus subscribers for a limited time. Click here for more details.
    Dismiss Notice
  5. Learn how you'll soon be able to publish your games to China in four simple steps with Xiaomi. Sign up now for early access.
    Dismiss Notice

uIntelliSense — Unity API Assistant

Discussion in 'Assets and Asset Store' started by ZimM, Oct 27, 2014.

  1. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840

    uIntelliSense brings all the power of IntelliSense code hints to your Unity code.

    Have you ever forgot the exact meaning of some method parameter, or stumbled upon a method you’ve never used before? Don't you think that searching through Scripting Reference is way too much work when all you really have to do is to hover over the code with your mouse?..

    And this is exactly what uIntelliSense is about, providing useful hints for the Unity API — descriptions for types, variables, methods, method parameters etc.

    Once you’ll try it, you’ll get used to it immediately. It is extremely helpful and time-saving, especially if you are a beginner who doesn’t knows the Unity API very well.

    Second part of uIntelliSense is a Visual Studio extension for Visual Studio 2012 and newer, for even better experience: in-IDE integrated Scripting Reference browser, Quick Search for Unity API and more! See details in the PDF manual below.

    Unity 4.6.x - 5.x, both Windows and macOS editors. Pro license is not required.

    Support:
    For any questions regarding this plugin, feel free to contact me at contact at lostpolygon.com or post in this thread.​

    If you like the asset, please review/rate it on the Asset Store, I'll greatly appreciate that :)
     
    Last edited: Apr 10, 2017
  2. thienhaflash

    thienhaflash

    Joined:
    Jun 16, 2012
    Posts:
    479
    Hey, great idea, man :) but the second link to asset store is wrong, you may need to change that :), this one
     
  3. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
  4. red2blue

    red2blue

    Joined:
    Feb 26, 2013
    Posts:
    171
    Hi,

    i am very interessted in your asset. I really like this kind of intellisense. I have one question. Is the tool creating the intellisense file out of the actual API (I can allways create an up-todate one) or do you have to maintain the asset with every upcomming change (Unity 4.6 or 5.0)?

    Thanks a lot.
    Cheers!
     
  5. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Yes, it generates the data from the documentation of Unity version it is running on, so it is always up-to-date by design. It already works as-is on 4.6 and 5.0 beta (though some documentation files are still missing in 5.0 beta, but that's not my fault, and it doesn't really affects the output). Probably someday Unity will decide to change the format for documentation, and then I'll have to do some specific fixes to support future versions, but as it is now - it just works.
     
    Last edited: Oct 30, 2014
  6. FriendlyHo

    FriendlyHo

    Joined:
    Aug 18, 2014
    Posts:
    23
    Amazing.
     
  7. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Hey, thanks!
     
  8. Zeblote

    Zeblote

    Joined:
    Feb 8, 2013
    Posts:
    1,151
    Does this work with Resharper intellisense?
     
  9. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Sure it does, I am using it with ReSharper personally. I am also going to add some ReSharper-specific info in a future update.
     
  10. Saxi

    Saxi

    Joined:
    Jun 28, 2013
    Posts:
    380
    When using UnityVS you have to add it to every project right? Will this ever change?
    I assume you should run the index creation every major release of Unity so it can update the documentation?
     
  11. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Yes, you have to add it to every project that uses UnityVS. It is unlikely to change, as this isn't something I can fix at all because of how UnityVS works. It maintains it's own version of VS project with its own incomplete version of documentation data, so uIntelliSense needs to be present to prevent UnityVS from doing this.
    The documentation data is saved in Unity installation instance from which you run uIntelliSense, it is not global. Basically, you have to regenerate the documentation data for each Unity release you use. This isn't something I can fix either because of the way IDEs detect documentation data.
     
  12. adi4x

    adi4x

    Joined:
    Jan 9, 2014
    Posts:
    5
    Is this plugin adding support also for Javascript (Unityscript) on Monodevelop ?
     
  13. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Just tested it and it doesn't seems to work. This is not an issue of the plugin, though, but of quirky IntelliSense implementation for UnityScript on MonoDevelop. C# works just fine.
     
  14. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    uIntelliSense is on 50% sale now for Cyber Monday! Go grab it now while you can ;)
    Asset Store link
     
    twobob likes this.
  15. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    1,528

    I did. but no window is showing up. Working on it...
     
  16. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Strange. Do you have the menu item?
    Tools → Lost Polygon → uIntelliSense
    What Unity version and OS do you use? Could you please try creating a new project, import just uIntelliSense into it and try again?
     
  17. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    1,528
    4.6 Pro, windows. will do.

    EDIT: Yup , that works.

    So.. this doesn't work for existing projects?
    Ouch
     
  18. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    It should, actually, and it always worked for me and for a lot of people, but apparently it doesn't sometimes... I'll try to investigate the reason, but meanwhile - once documentation data is installed, it'll work in every project (exception is if you use UnityVS, in that case you'll have to keep uIntelliSense inside the project).
     
  19. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    1,528
    The new dll works for existing projects.

    Happy days. Many thanks
     
  20. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Great, thanks! I've updated the asset to 1.0.2c that includes just this fix, the issue should be gone now.
     
    twobob likes this.
  21. Gamegen

    Gamegen

    Joined:
    Dec 1, 2014
    Posts:
    1
    Hi!
    Important hint! New version works for existing projects. If not, try to run Unity as Administrator and only then import uIntelliSense and generate files.

    (Works for Windows 7 32-bit)
     
  22. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Thanks for the workaround, but it should work as-is now. Please report if it does not, so I can actually fix this.
     
    twobob likes this.
  23. MikeTon

    MikeTon

    Joined:
    Jan 10, 2013
    Posts:
    57
    Hey ZimM, just bought this and are looking forward to trying it. Unfortunately I'm locked into Unity 5.0 beta, and uIntellisense doesn't run(I understand as only support for 4.0-4.6 is currently available). Any hints on how the roadmap for 5.0 support is looking. A tool like this would make my life much easier. Thanks.
     
  24. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    @MikeTon
    Just released an 1.1.0 update that adds experimental support for Unity 5 Beta (tested on beta 14 only). Note that Unity 5 Beta documentation is still full of missing links, especially for new APIs, but uIntelliSense still works fine for everything else.
     
    MikeTon and twobob like this.
  25. MikeTon

    MikeTon

    Joined:
    Jan 10, 2013
    Posts:
    57
    Wow. Amazingly fast. Using it now and are loving it. Thanks ZimM!

    -Mike
     
  26. JAMiller

    JAMiller

    Joined:
    Apr 2, 2009
    Posts:
    63
    Hello, I purchased this today and am having trouble getting it to work in Visual Studio Community with UnityVS and Unity 4.5.5p5 (C#).

    I generated the documentation, said yes to the UAC but noticed this error:
    Followed by
    I restarted VS, tried synching mododevelop and generating visual studio project files again with no luck so far.

    Inside VS when hovering on things like GameObject and Application at first I see a "Please wait...generating..." message but then they go away with no extra information under them.

    Any ideas how I can fix it?
     
  27. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    What Windows version are you using? I haven't encountered this error before and the error message is quite uninformative, unfortunately...
    Here's an idea: launch Unity with administrator privileges and try generating documentation again. uIntelliSense will then disable the UAC workaround and install the files directly.
     
  28. JAMiller

    JAMiller

    Joined:
    Apr 2, 2009
    Posts:
    63
    Hey running Unity as administrator worked!

    I'm on Windows 8.1, if that matters.

    This is great, I've always wanted this kind of in-line help since I started using Unity like 5 years ago! Thanks!
     
  29. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Glad it worked for you! I was asking the Windows version because UAC is a bit different from version to version, so maybe I've missed something... I'll recheck on Windows 8.1.
     
  30. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    1,528
    Hi, two things

    1) Can I override the default place it searches for the files please? I install to the D drive, and it doesn't find the Beta 5.0's files correctly in this instance.

    2) The layout looks a bit mangled on my screen, Dunno why. (see button squished etc.)
    Thanks :)

    mangled.JPG
     
  31. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    1) It should work automatically, and if it doesn't - then that's a bug. I actually don't know how can it not work, as it doesn't searches for anything, it uses paths that Unity provides, which are always correct, no matter where you install Unity. Do you get any errors?..
    2) Ouch. I'll recheck that.
     
  32. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    1,528
    1) yes. I get like.. err.. "Can't find files are you sure you installed unity you Dimwit" or something...

    Hang on Ill kill this build and go check

    THUS:

    Error while processing documentation. Are you sure you have Unity documentation installed and intact?
    System.IO.DirectoryNotFoundException: Could not find a part of the path "D:\Unity 5.0\Editor\Data\Documentation\html\en\StaticFiles\classList.js".
    at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean anonymous, FileOptions options) [0x001be] in /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.IO/FileStream.cs:292
    at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share) [0x00000] in <filename unknown>:0
    at (wrapper remoting-invoke-with-check) System.IO.FileStream:.ctor (string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare)
    at System.IO.File.OpenRead (System.String path) [0x00000] in /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.IO/File.cs:363
    at System.IO.StreamReader..ctor (System.String path, System.Text.Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize) [0x00077] in /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.IO/StreamReader.cs:167
    at System.IO.StreamReader..ctor (System.String path, System.Text.Encoding encoding) [0x00000] in <filename unknown>:0
    at (wrapper remoting-invoke-with-check) System.IO.StreamReader:.ctor (string,System.Text.Encoding)
    at System.IO.File.ReadAllText (System.String path, System.Text.Encoding encoding) [0x00000] in /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.IO/File.cs:587
    at System.IO.File.ReadAllText (System.String path) [0x00000] in /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.IO/File.cs:582
    at LostPolygon.uIntelliSense.Internal.ScriptingReferenceParser45.ParseScriptingReference () [0x00000] in <filename unknown>:0
    at LostPolygon.uIntelliSense.Internal.XmlDocsGenerator45.BuildXmlDocumentation () [0x00000] in <filename unknown>:0
    UnityEngine.Debug:LogError(Object)
    LostPolygon.uIntelliSense.Internal.XmlDocsGenerator45:BuildXmlDocumentation()
    LostPolygon.uIntelliSense.XmlDocsGeneratorWindow:BuildXmlDocumentation()
    LostPolygon.uIntelliSense.XmlDocsGeneratorWindow:Update()
    UnityEditor.EditorApplication:Internal_CallUpdateFunctions()
    ? clueless. Ill go see if that file is there

    EDIT: Hah. no it isn't

    They dropped the "html" from the path. Who knew. Breaking changes. gotta hurt.

    NoHTML.JPG
     
    Last edited: Dec 5, 2014
  33. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Um, have you updated to 1.1.0? Are you using beta 14? uIntelliSense knows about that change. This isn't the only breaking change actually, so just changing the path won't help anyway.
     
  34. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    1,528
    yeah. beta 14. pretty sure that is the latest version.

    But I will try again :)
     
  35. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    I'm asking because pretty much the only change done in 1.1.0 is fix the paths for Unity 5b14, so it makes me think that you still have 1.0.2c for some reason.
     
    twobob likes this.
  36. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    1,528
    hmm yeah. that is a fair point. I am currently headbanging on ACTUALLY serving gzipped data via IIS (sigh webGL speedbumps) will give this a double check then. Undoubtedly pebkac. Thanks for your time.
     
  37. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    4,411
    This is awesome, buying today. But I'm wondering why this is in Editor Extensions category. Seems like it should be in Scripting to me? Is it just because you want to use a 1-seat license?
     
  38. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Thanks! Scripting category, as far as I understand, is for scripts that are included in the build, while uIntelliSense can only be used from Editor, so I really can't see it in any other category than Editor Extensions. One-seat license also makes all kinds of sense for uIntelliSense as it isn't usually constantly installed into the project, and is a tool for personal convenience.
     
  39. zaphr

    zaphr

    Joined:
    May 9, 2014
    Posts:
    1
    Looks brilliant! I realise this is a stretch, but any chance this would work with Sublime Text on OSX?
     
  40. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Can't say for sure, but I really doubt it. While there are some plugins that transform Sublime Text into something like a C# IDE, I haven't seen any that shows the inline documentation even for the standard .NET types. Then again, I'm probably missing something, since I don't really use Sublime as an IDE.
     
  41. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    1,528
    yup pebcak. works fine on beta 16.
     
  42. sailro

    sailro

    Joined:
    Jul 30, 2014
    Posts:
    12
    VSTU/UnityVS 2.0 preview had a bug when generating XML documentation, this is fixed and will be released with 2.0.
    VSTU is already able to generate the full documentation for intellisense (and for free).
     
  43. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Interesting, would have to compare the quality of documentation generated by VSTU with uIntelliSense. Still, uIntelliSense is also available for MonoDevelop, and even on Windows not everyone uses VS+VSTU.
     
    Last edited: Dec 8, 2014
  44. zee_ola05

    zee_ola05

    Joined:
    Feb 2, 2014
    Posts:
    143
    I get this error when I hit Tools -> Lost Polygon -> uIntelliSense

    Code (CSharp):
    1. NullReferenceException: Object reference not set to an instance of an object
    2. LostPolygon.uIntelliSense.Internal.UnityVsUpdater.IsUnityVsUsed ()
    3. LostPolygon.uIntelliSense.XmlDocsGeneratorWindow.OnGUI ()
    4. 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-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
    5. Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
    6. 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-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:232)
    7. System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MethodBase.cs:115)
    8. UnityEditor.HostView.Invoke (System.String methodName, System.Object obj)
    9. UnityEditor.HostView.Invoke (System.String methodName)
    10. UnityEditor.HostView.OnGUI ()
    The window does not get rendered properly too. See attachment for photo.

    Please help me resolve this ASAP. This is kinda frustrating when you just bought the asset. Thanks!

    Edit: I'm using Unity 4.5.5p5. Mac Yosemite OSX.
     

    Attached Files:

  45. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Just a moment, let me take a look. I'm sure this'll be an easy fix.
     
  46. zee_ola05

    zee_ola05

    Joined:
    Feb 2, 2014
    Posts:
    143
    ZimM sent me a fix and it works! Thank you!

    +1 for great support! :D
     
  47. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Just to clarify, a fix to 1.1.2 is already available on the Asset Store for everyone, so if anyone else faced the same issue - just grab the latest update :)
     
  48. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Little something I'm coding now for some future update. This is not directly related to code hints, but still reduces the need to manually open your browser. It is a Unity Scripting Reference search provider for Visual Studio 2012 and newer:
    2014-12-11_20-48-28.png

    Right now, clicking on a item opens a local documentation page in your browser. But I'm also thinking about making a small window that'll show the full content of documentation page with a more compact design. Ideally, that way you won't need to open documentation in your browser ever again :)
    I'm pretty satisfied with how the search works already. For example, it is clever enough that if you type "mat ort", the first result would be "UnityEngine.Matrix4x4.Ortho".
    I'll also investigate if it'd be possible to do something similar with MonoDevelop.
     
    Last edited: Dec 11, 2014
  49. Zeblote

    Zeblote

    Joined:
    Feb 8, 2013
    Posts:
    1,151
    Forget monodevelop. With vs community out there no serious unity developer is ever going to use it again.
     
  50. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    840
    Well, this isn't exactly true. While most serious Unity developers that use Windows surely won't, but... There's still a lot of beginners who use MonoDevelop and even code in UnityScript (18.9% according to this blog post). Also, don't forget a ton of Mac users - they literally have no better option than to use MonoDevelop (except maybe running VS in a virtual machine).