I know this was asked a lot of times probably. But it is very often answered wrong. What I want is:Use a custom icon for specific components/scripts in the Inspector (e.g. Figure 2 and Figure 3) and the ProjectView (e.g. Figure 1)What I do so far:For each component/class that shall have the icon I have an accroding Icon file in the folderAssets/Gizmos//// iconand in the Import Settigns set TextureType to Editor GUI and Legacy GUIThis is working fine.
And until now the only way how I could achieve that (having in mind the below section What I definitely do NOT want).ButHowever, I wondered if there is really no better way having to have a unique Icon file for each script. This makes the project/UnityPackage unnecessarily huge. Also if I rename a class I always have to rename the according icon file as well. This imply doesn't feel right!Most Unity build-in Behaviours and Components have a unique icon. But also external Packages coming from the new PackageManager have built-in icons and sometimes a Gizmos folder but it is not following the above naming rule.
So apparently the icon is configured somehow else for them.Therefore my questions:Is there any better way to have those icons for scripts/components?Preferably scripted and reusing ONE single icon file instead of having the same icon in multiple differently named files.And/or also Where/How are those icons defined for the scripts coming from the PackageManager?!NOTE! What I definitely do NOT want:Show the Icon also in the SceneView for all GameObjects having those components attached (e.g. This is caused by either selecting the icon for this script via the Inspector as in Figure 5 (as allways suggested e.g. In or and even by ) or using orUpdateBecause this was suggested in: I also know that I could do that and turn them off via the Gizmos settings of the SceneView.
But imagine I have like 25 different modules and various different icons each. I don't want to have to disable their Gizmos in the SceneView settings one by one on a per project basis! Even the provided script seems like a vast hackaround. Reflection would be the very last resort I would ever take.
Also I'ld prefer to not even have those icons appear as possible Gizmos at all instead of disabling them all. Just tested it.
ScriptClass = ' for all entries so it won't work. This seems like a vast workaround to me. Mainly for two reasons: 1. Using reflection.
For anything. Is the very last resort I would ever take. I know this might sound like a vague argument but just by making it appear in the Gizmos at all gives a user the feeling there is something he can enable and disable.
Allways re-disabling it would seem like 'unexpected' behaviour. Don't get me wrong your answer is good and proves some deeper background knowledge but I somhow feel it's not the solution yet:)–Mar 14 at 4:57. So I did a bit more research about built in types as well as packages coming from the package manager and the asset store. Anything that is external (packagemanager or assetstore) if it has a custom icon for the script and inspector it will Always have a gizmo in the scene view. As it has its icon set using your figure 5 example, as seen in the screenshots with the debug inspector.Also if you want to set the icon with a script or hide it,currently reflection is your only option as these APIs are not publicly accessible.I was hoping to add this as a comment to your original question but not enough rep yet.
For Pro subscribers, when your commitment period ends your plan will automatically convert to a flexible month-to-month subscription. The key things to note about the flex option:.You pay month-to-month and can cancel your subscription at any time. However, cancellation will take effect from the following month.You can add and remove seats on a flex plan without having to start a new commitment period.
If you cancel your flex plan, you cannot re-start it: you will have to commit to another 12 months of Pro to get the flex option again.The rates for the flexible plan are the same as the 12 month commitment: $125/month.If you do not wish to continue on a flex plan, you can choose expire your subscription after its commitment period. If you choose to expire your plan, your version of Unity will switch to Personal.