I have a problem with an animated GameObject, in that if I change the .time of the animation rapidly (via a slider object from NGUI, specifically, though I don't think the source of the .time change matters), the GameObject doesn't seem to update visually in the viewport. If I manully check/uncheck the active state of the GameObject, it'll update fine. If I do it through script, it works fine - BUT I need it to happen every, say, 0.1 or 0.5 seconds. That's no problem, except doing
makes the object "blink" - and doing it regularly doesn't look, for lack of a better term, "nice".
So, what I'm looking for (if it exists) is some way to force an update of a GameObject, that won't blink it if executed rapidly.
Answer by delVhar
Apr 29, 2013 at 01:26 PM
Switching off the game object will also switch off its renderer, causing the blink. Do you need to disable the whole object? Would it be possible to just disable certain components?
I haven't found any component that will trigger the "update" so far, but yeah something that will force an update, like toggling the active state, without turning off the renderer is what I'm looking for.
This may be helpful, try using animation.Sample() after you update the time.
Thanks for taking the time! Unfortunately, animation.Sample didn't help me either - I've tried a lot of things, so far without success. At this stage, I'm starting to suspect it may simply be the size and length of the animated piece (100 elements, several thousand frames in length) that's causing it., because Unity may not be designed or extensively tested with that sort of thing.
Toggling the active state of the parent object is so far the only thing that re-evaluates it. Turning the renderer off and on on individual sub-objects does not work (surprisingly!), nor do toggling individual sub-objects' active state. If I inspect the sub-elements' Transform in the inspector, I can see that their values are not what they're supposed to be in the animation at that time either, though, so I suppose that's why toggling them won't help: they're still at the position they "think" they're supposed to be at.
Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.
The best place to ask and answer questions about development with Unity.
To help users post good questions and use the site effectively we have posted a user guide.
If you are a new user, check out our FAQ for more information.
If you are a moderator, see our Moderator Guidelines page.
We are making improvements to UA, see the list of changes.
For troubleshooting common problems with Unity 5.x Editor (including Win 10).
Answers and Comments
13 People are following this question.
Can I make animations snap to a frame?
Single Animation file for two different objects! HELP!
Make Animation Loop X Times C#
Unity2D - Playing animation with separte body parts/Setting Anchor point to sprites for each frame
Legacy animation loop pose? (for walk/run clips)