How does movement work? (How to poke around the engine classes?)

How does UMovementComponent work?
(this one http://api.unrealengine.com/INT/API/Runtime/Engine/GameFramework/UMovementComponent/index.html
its children are interp, nav, projectile and rotating movement; and nav further has pawn and then character movement component).

I assumed it would be some add world offset in the end, but can’t find ‘offset’ in neither pawn, nav nor base movement component so I guess it’s not that. What is the command that actually drives the action? (The forward movement, not the rotation).

The reason I’m looking into this is so that I can create a custom movement component without all the bloat. It’s not that I want to save on performance that much, and I’m well aware that to create such a component a newbie like me will need a lot of time and will end with pretty much the same (but worse). It’s just that I would like to know how it works so I can implement it better in the future.

As for the second / implied question (How to poke around the engine) I have no idea how would you call that, I’m missing vocabulary so I can’t search for it. I would need to breakpoint in VS and then see what happens? Where to put the breakpoint…? Any pointers on some tutorial for this? (What I’ve found only sends me on wild goose chases)

Thanks!

seems the MovementComponent is too basic and movement actually first happens in its child NavMovementComponent, specifically in PathFollowingComp. I’ve found (to paraphrase) if (everythingok) do TransformPosition(Goal)

but can’t find TransformPosition in InterpToMovement. Seems InterpToMovement has Super::ApplyWorldOffset(InOffset, bWorldShift); instead.

Well, two friggin days later, it is in the end just an offset… :smiley:
(And an offset is just a current location + delta location)