27,437

Downloads

1,531

Downloads of v 2018.2.0.653

2018-09-03

Last published

Unity Support

2018.2.0.653

Adds support for the Unity engine.

• Code completion of event function declarations in a class.

• Use Generate Code to create event functions, with parameters, or start typing for automatic completion.

• Highlights Unity event functions and serializable fields and marks as implicitly used by Unity.

• Supports Unity API 5.0 - 2018.2, plus undocumented functions.

• Inspections, Quick Fixes and Context Actions for Unity specific issues, with documented explantations.

• Navigate to external Unity documentation.

• Correctly updates .meta files.

• Code completion and rename support for "magic strings" in Invoke and Start/StopCoroutine methods.

• Code completion and rename support for "magic strings" in SyncVar attributes.

• Automatically adds FormerlySerializedAs attribute when renaming fields.

• Automatically sets Unity projects to C# 4 or C# 6. No more suggestions for features that won't compile!

• Highlights UnityEngine.Color and Color32. Edit via colour palette quick fix.

• Unity specific file and live templates.

Inspections, Quick Fixes and Context Actions:

• Marks empty event methods as dead code.

• Inspections and Quick Fixes for incorrect event function method signature and return types.

• Inspection for usage of Camera.main in Update methods.

• Inspection for incorrect usage of null propogation and coalescing operators with Unity types.

• Warns if a coroutine return value is unused.

• Context actions to add SerializeField or NonSerialized attributes to fields.

• Context actions to mark a field serialized or non-serialized.

• Context actions to mark a field with HideInInspector, or remove the attribute.

• Context action to convert auto-property to property with serialized backing field.

• Context action to convert event function method signature to/from coroutine.

• Event function descriptions for methods and parameters displayed in tooltips and QuickDoc

• Code completion, find usages and rename support for Invoke, InvokeRepeating, IsInvoking and CancelInvoke. Also Start/StopCoroutine.

• Inspections for incorrectly applied attributes.

• Inspection and Quick Fix to use CompareTag instead of string comparison.

• Inspection and Quick Fix for using new with ScriptableObject or MonoBehaviour.

• Inspection and Quick Fix for redundant SerializeField attribute usage.

• Inspection and Quick Fix for redundant HideInInspector attribute usage.

• Inspection and Quick Fix for redundant or mis-applied FormerlySerializedAs attribute usage.

• "Create serialized field" from usage Quick Fix.

• Inspections for incorrect SyncVarAttribute usage.

ShaderLab support:

• Parse ShaderLab files, with syntax highlighting and syntax error highlighting.

• Simple highlighting and code completion in Cg and HLSL code blocks and files.

• Brace matching, todo explorer and commenting support for ShaderLab files.

• Colour highlighting and editing in ShaderLab files.

• Code completion, navigation and find usages for ShaderLab variables.

Assembly Definition file support:

• Code completion and validation of references.

• Navigation to referenced assembly definition files.

• Rename of assembly definition files.

• JSON validation and code completion of e.g. allowed platforms.

Release Notes

• Add support for .asmdef files (#283)
• Recognise custom serializable classes and handle serialized fields and usge (#419, RIDER-9341, RIDER-12239)
• Update API details to 2018.2.0b9 (#611, #613)
• Add undocumented API methods in AssetPostprocessor (OnGeneratedCSProject and OnGeneratedSlnSolution)
• Consolidate multiple incorrect method signature inspections into one, with quick fix (#534)
• Add redundant SerializeField attribute on readonly field inspection, plus quick fix (#503, #586)
• Add redundant HighlightInInspector attribute on serialised field, plus quick fix (#585, #586)
• Add context actions to toggle HideInInspector attribute on serialised fields (#494, #586)
• Rework make serialised/non-serialised field context actions (#583, #586)
• Serialised field context action and quick fixes work correctly with multiple field declarations (#586)
• Add FormerlySerializedAs attribute when renaming a serialised field (#54, #659, RIDER-12298, RIDER-17887)
• Add redundant FormerlySerializedAs attribute inspection and quick fix, with code wiki entry
• Add possible mis-application of FormerlySerializedAs attribute on multiple field declaration, with quick fix and code wiki entry
• Add inspection for usage of Camera.main in Update methods (#196)
• Mark potential event handler methods and property setters as in use (#625, RIDER-17276)
• Add sprop and sfield Live Templates (#565)
• Don't show incorrect "always false" warning for "this == null" in Unity types (#368)
• Remove highlighted background for Cg blocks in ShaderLab files (RIDER-16438)
• Add ShaderLab colour scheme settings page (RIDER-17305)
• Fix ShaderLab highlighting of keywords (RIDER-17287)
• Fix rename's "find in text" renaming non-text elements in ShaderLab files
• Fix Unity specific inspections not showing in Solution Wide Errors tool window (#680)

From 2018.1:
• Bumped version to 2018.1 to match Rider and ReSharper releases
• Add inspections for null coalescing and null propagation opertators (#342, #35, #148)
• Add go to definition, find usages, highlighting, code completion for ShaderLab variable references (#362)
• Add undocumented UIBehaviour APIs (#394, #395, RIDER-12649)
• Add code inspection wiki for most inspections
• Workaround Unity's old version of annotations and make [PublicAPI] mark all members as in use (#337)
• Change inspection for incorrectly applied attributes from error to redundant code (#325, #322, #376)
• Remove option to disable ShaderLab parsing from UI (#236)
• Fix ShaderLab colour reference handling with non-US cultures (#346)
• Fix ShaderLab vector properties showing colour highlighting or throwing exceptions (#384, #397)
• Fix parse error with trailing whitespace in ShaderLab variable references (#257, #357)
• Fix exceptions with existing features

From 2.1.3 (for ReSharper 2017.3):
• Add context action to convert auto-property to property with serialized backing field (#195, #302)
• Add context action to mark field as serialized or non-serizable (#191, #295)
* • Add inspection and quick fix for redundant SerializeField attribute (#295)
• Add inspections and quick fixes for method signature of methods with Unity attributes (#248)
• Add inspections for incorrectly applied attributes (#247)
• Fix code completion before a field with an attribute (#259, #286)
• Improve relevance of Unity event functions in code completion (#260, #273)
• Improve reliability of attaching debugger to Unity Editor (#262, #268)

From 2.1.2 (for ReSharper 2017.2):
• Fix code completion and generation not working with newer versions of Unity (#219)
• Support Unity API up to 2017.3.0b3 (#218)
• Recognise projects with modularised UnityEngine assembly references (#241)
• Add Unity specific file templates (#232, #237)
• Fix parsing of 2DArray (RIDER-9786)
• Add colour highlighting and editing to ShaderLab

From 2.1.1 (not released for ReSharper):
• Improve ShaderLab parsing (#228, #233, RIDER-9214, #222)
• Show event function descriptions in generate dialog (RIDER-4904)
   
From 2.1.0 (not released for ReSharper):
• Add annotations for modularised UnityEngine assemblies (#207)

From 2.0.3 (for ReSharper 2017.2):
• Support for ReSharper 2017.2 (#193)
• Parse pre-processor directives in ShaderLab (#186)
• Correctly handle property attributes in shader file (#187)
• Parse CGINCLUDE blocks at any point in shader file (#188)
• Parse property reference for BlendOp (RIDER-8386)

From 2.0.2 (not released for ReSharper):
• Add ability to disable advanced ShaderLab syntax (#183)

From 2.0.0 (for ReSharper 2017.1):
• Parse ShaderLab files, show syntax error highlighting (#3)
• Brace matching for ShaderLab files
• TODO comments support for ShaderLab files
• Add support for HLSL and GLSL blocks

From 1.9.1:
• Reduce logging and change tracking for non Unity projects

From 1.9.0:
• Only set C# language level if Unity project has an Assets folder (#150)
• Navigate to correct local documentation page, or Unity's search page (#152)

Merge Unity3dRider plugin

From 1.8.0:
• Inspection and quick fix for calling new on ScriptableObject and MonoBehaviour (#142)
• Inspections and quick fixes for incorrect method signature for InitializeOnLoad attributes (#143)
• Added base type required annotations for various attributes (#145)
• Added implicit use annotations for UnityEngine.Networking attributes (#136)
• Code completion, find usages and rename support for SyncVarAttribute hook function (#135)
• Inspection and quick fix to mark empty event functions as dead code (#137)
• Fixed bug in Invoke symbol resolution to check base class (#138)
• Support "hook" property of SyncVarAttribute (#136)

From 1.7.0:
• Support for ReSharper 2017.1 (#110)
• Fix incorrect signatures in known API (#128)
• Treats Assertion.Assert as assertion methods (#129)

From 1.6.2:
• Improve location of "Create serialized field" Quick Fix (#124)

From 1.6.1:
• Fix nasty bug that will recreate all .meta files when reloading projects. Sorry! (#118)

From 1.6.0:
• Correctly update .meta files when creating, renaming or refactoring (#56, #61)
• "Create serialized field" from usage Quick Fix (#111)
• Inspections and quick fixes for incorrect event function signature and return type
• Event functions that are coroutines are now recognised and marked as in use (#52)
• Context action to convert event function signature to/from coroutine
• Add coroutine and optional parameter information to API and tooltips
• Expand API support to 5.0 - 5.6
• Add regex annotations for EditorTestsWithLogParser.ExpectLogLineRegex (#95)
• Warn if coroutine return value is unused (#99)

From 1.5.0:
• ReSharper 2016.3 support (#80, #90)
• Add inspection and Quick Fix to use CompareTag instead of string comparison (#82)
• Support Unity API for 5.2 - 5.5 (#81)
• Support undocumented ScriptableObject.OnValidate and Reset (#79)
• Support method name in string literal of MonoBehaviour.IsInvoking (#85)
• Support method name in string literal for MonoBehaviour.Start/StopCoroutine (#83)
• Add gutter icon and "Create" context action for Unity classes (#77)
• Fix method generation for static event functions (#73)
• Improve recognition of serialised fields (#87)
• Remove duplicate items in auto complete list (#92)

From 1.4.0:
• Enable functionality in projects that reference Unity assemblies, not just those that have the VSTU project flavour GUID (#53)
• Improve handling of C# language version. Default is correctly set to C# 4, not 5. Uses C# 6 if option is enabled in Unity 5.5. Handles the CSharp60Support plugin. (#50, #60)
• Treat UnityEngine.Debug.Assert as assertion methods, so ReSharper includes asserts in control flow analysis. (#62, #63 - thanks @joshuaoconnor!)
• Add string formatting inspections for debug assertion messages.
• Renamed "message handlers" to "event functions", as per the Unity documentation.
• Display a "gutter" icon for implicitly used event functions and fields. (#58)
• Display colour highlights and the colour palette picker for UnityEngine.Color and UnityEngine.Color32. (#51)
• Fix MonoBehaviour.Invoke code completion and rename support in string literals to work with the correct class, not just the current class. (#66)
• Support undocumented messages, such as OnGeneratedCSProjectFiles. (#59)
• Fix namespace provider settings for Assets and Assets\Scripts folders. (#64)
• Sort event functions alphabetically by default in code completion.

From previous releases:
• ReSharper 2016.2 support. Thanks @cmcpasserby! (#44, #46)
• Added support for event functions for all Unity classes, not just MonoBehaviour. Thanks @swalex, @rorydriscoll! (#20, #29, #44)
• External annotations to improve ReSharper's analysis, e.g. implicit usage and nullability of Component.gameObject. Thanks @bigbadtrumpet! (#34, #13, #15, #23, #42, #43)
• Code completion, find usages and rename support for Invoke, InvokeRepeating and CancelInvoke (#41)
• Auto-suggest event function completion when creating methods
• Event function descriptions for methods and parameters displayed in tooltips and QuickDoc
• "Read more" in QuickDoc navigates to Unity API documentation
• Suppress naming consistency checks on event functions
• Add parameters to generated event functions (#8)
• Automatically sets Unity projects to C# 5. No more incompatible C# 6 suggestions! (#5)

Owners

Authors

JetBrains

Copyright

Copyright 2018 JetBrains, s.r.o

Tags

Dependencies

Version History

Version Downloads Last updated
Unity Support 2018.1.0.380 1985 Saturday, June 16 2018
Unity Support 2018.1.0.75 1429 Wednesday, April 18 2018
Unity Support 2.1.3.4208 2873 Friday, December 22 2017
Unity Support 2.1.2.1505 2444 Tuesday, October 17 2017
Unity Support 2.0.3.314 1041 Thursday, August 31 2017
Unity Support 2.0.0 991 Thursday, August 31 2017
Unity Support 1.9.1 1136 Friday, July 21 2017
Unity Support 1.9.0 33 Friday, July 21 2017
Unity Support 1.8.0 1732 Friday, May 19 2017
Unity Support 1.7.0 1195 Wednesday, April 05 2017
Unity Support 1.6.2 1060 Wednesday, March 22 2017
Unity Support 1.6.1 595 Wednesday, March 08 2017
Unity Support 1.6.0 322 Wednesday, March 01 2017
Unity Support 1.5.0 1215 Friday, December 30 2016
Unity Support 1.4.0 1233 Friday, November 18 2016
Unity Support 1.3.0 946 Monday, September 26 2016
Unity Support 1.2.1 1899 Saturday, April 16 2016
Unity Support 1.2.0 2683 Monday, November 16 2015
Unity Support 1.1.2 154 Friday, November 06 2015
Unity Support 1.1.2-EAP 106 Saturday, October 17 2015
Unity Support 1.0.0 770 Friday, October 16 2015