Parent rotation inheritance
- Dominant language
- C++
- Stars
- 3.3k
- Forks
- 353
- Avg merge
- 3d 16h
- Merged PRs (30d)
- 1
Description
If I use get rotation on a parented object that has been rotated by it's parent, the values returned are local, (i.e. 0,0,0)
This can cause problems, especially with nodes like 'look at' that control rotation, because the results are applied locally. Therefore the object may initially 'look at' the specified location, but when rotated by a parent object the 'look at node' does not update the rotation (even if activated each frame with On Update).
This could be solved by implementing vertex parenting (where the child inherits only location and not rotation), or even better, implementing an interface that allows control over what is inherited by parents: maybe a series of six check boxes for what to include or exclude from the parent relationship (loc x y z and rot x y z).
For attached blend, use space to print child rotation:
[test.zip](https://github.com/armory3d/armory/files/2589333/test.zip)
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by opening the attached test.zip blend and using Space to print the child rotation, as described in the issue. Reproduce the parented-object and Look At behavior, then trace the existing parent transform handling. Done should mean the intended inherited rotation behavior is defined and the child rotation updates consistently when its parent rotates.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- blender, cpp
- Domain
- computer-graphics, game-dev
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100