- Home /
Inspector extremely slow, sluggish (especially animation import options)
Hello,
I'm working with a complex 3D assembly which originally was a CAD model. It has hundreds of separate 3D objects and most of them are animated. It had been decimated and textured for realtime use, and I'm programming a system/game around it.
My problem is that entering data or changing data in the inspector is extremely slow, to the point that it is almost unusable. For example, if I were to try to type data into a public string in the inspector, it can take 3 seconds between characters before they appear. So, if I type a sentence, I then have to sit there for minutes watching each character slowly appear long after I've finished typing.
It's the worst in the Animation section of the FBX import settings when trying to set up new clips and frame ranges. Just selecting a field to edit like say the start frame takes 10-20 seconds, before it even allows me to type in the integer, then it is 5+ seconds between each character I enter. After I am finished and hit the apply button at the bottom to save the very simple changes, it can take multiple full minutes to apply. I usually leave my computer and make coffee or something while waiting to just save a single new simple clip.
This is killing me. Any ideas? I'm running a Core i5 6600k, 32GB DDR4 RAM, and a GTX 1070 with Unity 2017.1 Pro 64bit.
Edit: Here is the profiler https://i.imgur.com/FDSQVs0.jpg
Answer by Straafe · May 11, 2021 at 06:39 PM
For posterity, the issue with the inspector was the object re-serializing every time any change was made (including while typing). Since the object was complex, serializing every time you typed a character ended up taking a very long time. The solution in this specific case was to create a custom inspector window which used a similar data structure for editing, so when opening the object to edit in the inspector, I wrote a system where it copied the data to a custom inspector window where I could easily and quickly make changes, and then, when finished, I could just copy the data back to the main prefab at the end.
Answer by ALG2132 · Jul 30, 2017 at 12:58 PM
Hi @Straafe ,
It seems like you're putting too much strain on your computer.
Your computer has some very goods specifications, but remember every computer has it's limit to capabilities.
I would suggest:
1. Disabling intense gameobjects in your scene and set them to be enabled on a trigger, working as a loading system.
2. Temporarily disabling gameobjects and processes while you're coding, importing or editing in Unity. (should increase your performance dramatically)
The main part to optimisation is making sure your scene/s will work on most computers (even the bad ones) which will bring much more popularity to your game.
Good luck! Let me know if you need anything else.
P.S Being patient is the key, Unity can render or import very slowly sometimes.
Thanks for the comments, although I still think Unity should be able to handle 1 fairly big 89$$anonymous$$B FBX file (size includes all texture maps) without beco$$anonymous$$g unusable.
Only 89$$anonymous$$B? That's a bit strange if it's struggling with that. $$anonymous$$aybe reinstall Unity? $$anonymous$$aybe it's worth a shot.
Unfortunately, I was already using a fresh install of 2017.1, and I also have already tried a full re-import of assets. It just can't handle a complicated FBX, and I will have to remember it in the future
Answer by alti · Oct 22, 2019 at 05:53 PM
Are you selecting the mask tab and choosing "Create From This Model" in any of your animations on that FBX?
I just discovered today that that is the culprit for my inspector speed under the FBX animation window. It is unbelievable how slow it makes things. I submitted a bug report.