- Home /
Easily cleaning up \ deleting unused variables?
During the course of completing a project I generally end up with several variables throughout my scripts that are declared but end up not being needed.
Is there anything out there that can run through scripts, find which variables are declared but not used, and then give a list of what and where they are?
I'm about to write my own little .exe or editor script (maybe even an UltraEdit or TextPad macro) that does that but before I spend the time I wasn't sure if something like that already existed. Anyone know of one?
Answer by Michael La Voie · May 08, 2010 at 02:21 AM
If you use C#, then there are plenty of refactoring tools available. I would strongly recommend ReSharper. It will help you do hundreds of things to improve your code, including deleting unused variables.
Its even smart enough to detect variables that are assigned to, but never read from and other esoteric cases that you may not think of if you roll your own script.
I'm using Javascript on this project so ReSharper won't work on this, but thanks for the heads-up. I'll check it out when I work more with C#.
Answer by duck · May 10, 2010 at 03:27 PM
You shouldn't need any external tools to do this. Unity should show you any unused variables in the console window as an warning (with a yellow warning icon). In particular it warns you about:
- variables which are never used at all
- variables which are assigned, but their value is never used
- unreachable code
- cases where your code compiles, but is probably wrong (i.e. where a comparison will always evaluate to false)
If you double click a warning message in the console, it will open the script editor and take you to the relevant line.
Edit:
Actually it seems as though these errors are only generated for C# scripts in unity, not Javascript scripts.
Is there something I need to set somewhere to have it do this? As of right now it shows neither variables which are never used at all, nor variables which are assigned but their value is never used. It shows code errors, etc. of course, but nothing in there with warnings about unused variables.
Not that I'm aware of - for me, unity does this out of the box. Which version of Unity are you using? (regular/pro? iphone?)
Your answer
Follow this Question
Related Questions
How do i call on variables from other scripts? 2 Answers
Using a string in a C# script in a .js 1 Answer
Is it possible to change a variable, into a script not assigned to any game object? 3 Answers
how to create boolean Varibles ? 3 Answers
The name 'Joystick' does not denote a valid type ('not found') 2 Answers