Page MenuHome

Bone child.worldPosition and world Orientation appear to be at least 1 frame off
Closed, ArchivedPublic

Description

https://www.youtube.com/watch?v=jAcOvsTf3Vc&feature=youtu.be

I am using

object.worldPosition = boneChild.worldPosition+(boneChild.worldOrientation*Vector(offset)) and the weapon should be 'locked' to the same

rotation and position relative to the bone parented object (red box 'Hand')

however it lags at least 1 frame behind for some reason

Note - I am using copy rotation in the armature that the 'Hand' object is bone parented to.

Details

Type
Bug

Event Timeline

Jacob Merrill (blueprintrandom) raised the priority of this task from to Needs Triage by Developer.

here is a test file illustrating{F279081} the bug is in fact related to copy rotation

left = copy rotation = use mouse and you can see the lag

right = uses animation to swing arm = no lag

I worked around this using a callback

what it was, was I moved a object to a local point relative to a object moved by a constraint,
so the constraint updated after the logic loop, so I was always 1 step behind.

So I moved the same code

weapon.worldPosition = player['Hand'].worldPosition+(player['Hand'].worldOrientation*Vector([offset]))
weapon.world Orientation = player['Hand'].worldOrientation

into a pre_draw callback, and it works great now.

Aaron Carlisle (Blendify) closed this task as Archived.
Aaron Carlisle (Blendify) claimed this task.

This task is being closed because the BGE has been removed in Blender 2.8.