I’m using the c# wrapper, so I suppose this may not be an issue with Urho3d.
Actually, I’m not even sure it’s an issue with Urhosharp, and may well be intended behaviour. In any case, there is a model object that moves as expected if its node position property is set:
shieldNode.Position = new Vector3(-2f, 2f, 0f); Scene.AddChild(shieldNode);
However, if added to another model object’s node, rather than the scene, the shieldNode model does not budge from zero:
shieldNode.Position = new Vector3(-2f, 2f, 0f); otherModelNode.AddChild(shieldNode);
The node Position property is filled correctly, but as stated, the actual model does not move at all. This also occurs with Translate() in local or parent space, though translate works in world space. Rotation and SetWorldPosition() also work.
I would’ve thought that the .Position property should work within parent space - it does not. It would be great if there was an explanation for this behaviour.