Children Of A Proxy Object Ignoring Curve Modifier

I’ve followed this tutorial to create a car that follows a path and has its wheel spin:

I have different parts of the animation where the car will follow different paths. To save time, I made my car (arrow mesh that follows a curve and a car object that is a child of the arrow) in a seperate blend file. In a new blend file, I use a bezier curve to specify a path and I link my car into it. Then I create a proxy of the arrow and apply the Curve modifier to it. The arrow then moves nicely along the curve. However when I move the arrow, the rest of the car only moves in a straight line and not along the path.

Any ideas as to why the parent’s transformation is not being applied correctly to the children?

I found why this problem occurs, but still have no idea how to fix it. To have the curve modifier affect the children, I had to vertex parent the children to it (not just normal parent). By creating a proxy, I somehow destroy this relationship.

The curve modifier is a deformer. It only deforms the mesh that it is applied to. To make it affect the children you would have to join them all together to make them one single mesh.

What you can do is actually add a path constraint to the car body then pick the same curve for the path. You may have to break your relation ship with the arrow and the car body. Create an Emtpy that travels along the path. Then parent the arrow mesh and the car body to the empty. Then when you move the Empty, the arrow will deform along the path and the car will travel along the path.

Thank you very much for the reply. That would explain why I had to make the car a vertex parent instead of a normal parent. However making a proxy of the arrow seemed to destroy this relationship, as I mentioned in my follow up. I guess there is no way around this.

I tried using the follow path modifier, but there was a slight problem. I want my wheels to spin automatically as the car moves. The way that I accomplished this was to add a transform constraint to the wheels that convert the local position along y of the arrow into a rotation of the wheel. Motion along the Y axis is the same as motion along the curve with the Curve modifier applied. This didn’t work so well with the path modifier, because the local Y position was the same as the global Y position. So if my curve turned back at some point, then the wheels would spin backwards.