Page MenuHome

using SetParent disables timeOffset
Closed, ArchivedPublic

Description

System Information
arch linux

Blender Version
2.70, 19e627c

Short description of error
Using object.setParent resets the timeOffset to 0.0 and it cannot be changed.

Exact steps for others to reproduce the error
(Slow Parent is checked)
Setting obj.timeOffset = *float* <-- This works.

However, after using obj.setParent, obj.timeOffset will be automaticly set to 0.0 and it cannot be changed.

Event Timeline

Will Nielsen (k9crunch) raised the priority of this task from to 90.
Will Nielsen (k9crunch) updated the task description. (Show Details)
Will Nielsen (k9crunch) edited a custom field.

As usual, Mitchell, feel free to re-dispatch. ;)

Please provide an example file demonstrating the problem.

Bastien Montagne (mont29) lowered the priority of this task from 90 to 30.Apr 10 2014, 1:09 PM

Here is an example blend file.

Bastien Montagne (mont29) raised the priority of this task from 30 to Normal.Apr 18 2014, 11:45 PM

I don't think that this is a "bug", more of a result of how the slow parenting code is implemented - parent relations in the Blender editor which have a time offset value are assigned slow parent relationships, which are handled differently to other parent relations, and we don't offer the ability to create a slow parent relation in the BGE at runtime. Possible solutions:

Give slow parent behaviour to all parent relationships, and set default time to 0.0
Allow timeOffset setter to create a slow parent relationship.

This patch doesn't fix totally the issue but maybe you can use it as starting point to fix it correctly. I have uploaded it because after a lot hours I don't find where is the fail.

Then the issue with the patch is:

  • If you set parent relation only at children level you got the slow parenting working but you can't set/get timeOffSet new values because they are done at parent level and it won't work.
  • If you set the parent relation only at parent level the slow parenting won't work but you can change timeOffSet values but they won't have any effect.
  • If you set the parent relation at both children & parent levels it works like a charm but you will have a crash on exit when the program tries to delete m_parent_relation on SG_Node::Destructor().

Also, as remark Moguri saw that in the Blender->BGE conversion data function a parent_invert node is created between childre and parent.

Regards

Aaron Carlisle (Blendify) changed the task status from Unknown Status to Unknown Status.Jun 29 2019, 2:20 AM
Aaron Carlisle (Blendify) claimed this task.

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