I tracked down the core issue. MyCustomObject that extends MonoBehavior was throwing a null reference exception. One was inside OnGUI, the other was inside FixedUpdate().
Null reference exceptions are really bad on Vista 64-bit and cause the Editor to crash.
The other platforms are a little bit more sturdy, but also failed to log the error.
I can confirm this! I was having the same problem (Unity crashes with no error dialog or even windows error dialog). It seems to happen if you try to change “enabled” on a component that doesn’t necessarily exist. For example I tried this:
This will immediately crash unity as soon as one of the objects becomes invisible. If I comment out renderer.enabled, it runs fine. There is a skinned mesh renderer attached to the same object (in a somewhat complicated hierarchy) so I don’t know why it would be null…
From what I can tell, it happened, when you tried to disable the SkinnedMeshRenderer!
In fact, this crash STILL occurs, if you enable/disable it from an animation.
To fix it, I wrote this little script:
using UnityEngine;
// Use this script if a SkinnedMeshRenderer causes unity to crash when enabling/disabling it from animation
internal class RendererAnimationHelper : MonoBehaviour
{
public new float enabled = 1;
public void Update()
{
renderer.enabled = (enabled == 1);
}
}