# Go.set\_position lag?

**URL:** <https://forum.defold.com/t/go-set-position-lag/47458>\
**Category:** Questions\
**Created:** [March 26, 2019, 2:35pm UTC](https://forum.defold.com/t/go-set-position-lag/47458 "2019-03-26T14:35:27Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![notbadgun](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/notbadgun/32/14901_2.png) [@notbadgun](https://forum.defold.com/u/notbadgun)\
**Post date:** [March 26, 2019, 2:35pm UTC](https://forum.defold.com/t/go-set-position-lag/47458/1 "2019-03-26T14:35:27Z")

</div>

![red_blue_ball_GIF](https://forum-defold-uploads.b-cdn.net/original/2X/6/69e077a9f2a1c47c597332ca0c0478b86ab1457c.gif)

I have an object1 whose position changes with go.animate. In the update, object1 sets the position of the object2. As a result, the object2 lags behind the object1.

 ![%D0%91%D1%83%D1%84%D0%B5%D1%80%20%D0%BE%D0%B1%D0%BC%D0%B5%D0%BD%D0%B0-1](https://forum-defold-uploads.b-cdn.net/original/2X/e/ebfad2e26c019da9559291382e28caf3ef7f9db2.png)

---

<div class="post-metadata">

**Author:** ![andreas.strangequest](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/andreas.strangequest/32/3622_2.png) [@andreas.strangequest](https://forum.defold.com/u/andreas.strangequest)\
**Post date:** [March 26, 2019, 3:17pm UTC](https://forum.defold.com/t/go-set-position-lag/47458/2 "2019-03-26T15:17:35Z")

</div>

I believe go.animate is calculated/updated in the [“post update phase”](https://www.defold.com/manuals/application-lifecycle/#_the_update_loop) but before rendering but surely someone in Defoldteam can confirm it

---

<div class="post-metadata">

**Author:** ![aglitchman](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/aglitchman/32/19432_2.png) [@aglitchman](https://forum.defold.com/u/aglitchman)\
**Post date:** [March 26, 2019, 5:31pm UTC](https://forum.defold.com/t/go-set-position-lag/47458/3 "2019-03-26T17:31:15Z")

</div>

Defold team, also please explain at what moment physics is updated and sends messages to the game objects? After/before “update phase” or…?

---

<div class="post-metadata">

**Author:** ![britzl](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/britzl/32/23_2.png) [@britzl](https://forum.defold.com/u/britzl)\
**Post date:** [March 26, 2019, 7:21pm UTC](https://forum.defold.com/t/go-set-position-lag/47458/4 "2019-03-26T19:21:05Z")

</div>

The update loop is documented here: [Defold application lifecycle manual](https://www.defold.com/manuals/application-lifecycle/#_the_update_loop) but it probably needs to be clarified. Physics is updated after scripts if I’m not mistaken @sven?

---

<div class="post-metadata">

**Author:** ![sven](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/sven/32/1086_2.png) [@sven](https://forum.defold.com/u/sven)\
**Post date:** [March 27, 2019, 9:10am UTC](https://forum.defold.com/t/go-set-position-lag/47458/5 "2019-03-27T09:10:00Z")

</div>

> [@britzl](#):
>
> Physics is updated after scripts if I’m not mistaken @sven?

Yup, that is correct. 👍

---

<div class="post-metadata">

**Author:** ![notbadgun](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/notbadgun/32/14901_2.png) [@notbadgun](https://forum.defold.com/u/notbadgun)\
**Post date:** [March 27, 2019, 9:13am UTC](https://forum.defold.com/t/go-set-position-lag/47458/6 "2019-03-27T09:13:41Z")

</div>

What do you have to say about the subject?  
What to do with the lag?

---

<div class="post-metadata">

**Author:** ![sergey.lerg](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/sergey.lerg/32/3970_2.png) [@sergey.lerg](https://forum.defold.com/u/sergey.lerg)\
**Post date:** [March 27, 2019, 9:16am UTC](https://forum.defold.com/t/go-set-position-lag/47458/7 "2019-03-27T09:16:45Z")

</div>

I’d say don’t use go.animate this way. You can use pure Lua tweening library like flux and assign all objects positions at the same time.

---

<div class="post-metadata">

**Author:** ![Mathias\_Westerdahl](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/mathias_westerdahl/32/228_2.png) [@Mathias\_Westerdahl](https://forum.defold.com/u/Mathias_Westerdahl)\
**Post date:** [March 27, 2019, 10:06am UTC](https://forum.defold.com/t/go-set-position-lag/47458/8 "2019-03-27T10:06:55Z")

</div>

You can also use [go.set\_parent()](https://www.defold.com/ref/go/#go.set_parent:-id---parent_id---keep_world_transform-)

---

<div class="post-metadata">

**Author:** ![notbadgun](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/notbadgun/32/14901_2.png) [@notbadgun](https://forum.defold.com/u/notbadgun)\
**Post date:** [March 27, 2019, 11:02am UTC](https://forum.defold.com/t/go-set-position-lag/47458/9 "2019-03-27T11:02:51Z")

</div>

Did I get it right that this is the order of “update”:

1. Calling “update” in all scripts
2. Dispatching messages
3. Updating physics
4. Dispatching messages (due to physics)
5. Updating go.animate animations

---

<div class="post-metadata">

**Author:** ![Mathias\_Westerdahl](https://forum-defold.b-cdn.net/user_avatar/forum.defold.com/mathias_westerdahl/32/228_2.png) [@Mathias\_Westerdahl](https://forum.defold.com/u/Mathias_Westerdahl)\
**Post date:** [March 27, 2019, 11:34am UTC](https://forum.defold.com/t/go-set-position-lag/47458/10 "2019-03-27T11:34:16Z")

</div>

Almost:

DispatchMessages() is called between the update of each component type.

And the update order for the first types are:

- script
- anim
- gui
- physics
- …
