Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by MvD · Dec 17, 2010 at 10:24 AM · animationtransformlateupdate

Are bone transforms in LateUpdate the transforms for the next or previous frame?

Hi all,

The Unity documentation says "One important thing to know is that the animation system updates the Transforms after the Update() function and before the LateUpdate() function is called".

My question: if you look at those bone transforms in LateUpdate, are those transform values representing the rendered character in the previous frame or the next frame?

My suspicion is that in LateUpdate, you're looking at old data. I'm driving character movement off the movement of my character root node, and I get glitches during the first frame of each animation.

Thanks, Mattijs

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
1

Answer by Paulius-Liekis · Dec 18, 2010 at 08:28 AM

The order is:

  1. Update() calls
  2. animation sampling
  3. LateUpdate() calls
  4. rendering

So the idea is that you can apply any procedural changes in LateUpdate to your transforms after animation sampling, but before rendering.

Why you have glitches? Hard to say from the given information. My guess is that your code depends on particular order of Update/LateUpdate calls between game objects (the actual order is undefined). Or something like that.

Comment
Add comment · Show 2 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image MvD · Dec 23, 2010 at 09:11 AM 0
Share

Hi Paulius, thanks for your reply. Yes, that is what the documentation says. I had a problem where, if I called animation.Play() and set the position of the root node to some weird in Update() and read the position of the root node in LateUpdate(), that position was still weird (i.e. it wasn't updated between Update and LateUpdate. However, the rendered frame was fine: the character was at the location defined by the animation, not the weird root node. We have now abandoned root node driven character movement, so I must admit I am less inclined to keep investigating the matter:)

avatar image Paulius-Liekis · Dec 23, 2010 at 09:03 PM 0
Share

$$anonymous$$aybe you were setting that weird position on some transform which doesn't influence renderer? If that particular bone is not animated it won't be overrider in "animation sampling" step, so what you set in Update is what you get in LateUpdate.

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

No one has followed this question yet.

Related Questions

No tranform animation on root bone from maya.mb 6 Answers

2D animation (vertical movement then horizontal) 0 Answers

Wrong rotation while swimming 2 Answers

function behaves unexpectedly inside a coroutine. 2 Answers

In animations, is it possible to only add transform values instead of setting it? 2 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges