I'm not really sure what you mean. The code I supplied uses 2D vectors - though maybe not so explicitly.
Generally you have 8 different directions in which you can move in isometric games.
The following calculation:
Angle = ATanFull ( ValFloat ( Str ( Input.Down - Input.Up ) ) , ValFloat ( Str ( Input.Left - Input.Right ) ) )
will return values in 45° intervals for
returns either 1 or 0 (Input.Down,Up,Left and Right are set using this command).
This leaves you with 8 different cases:
Angle = 0
Angle = 45
Angle = 90
Angle = 135
Angle = 180
Angle = 225
Angle = 270
Angle = 315
The next step is to convert these angles to fit your isometric grid. Trigonometry will tell you what angle the grid is offset by. In my case the diagonal movements had to be altered by ATan ( 0.5 ).
If you want to limit the directions, check the input.
The last step is to find the X and Y component of the 2D direction vector.
This is done using simple trigonometry again, and the resulting X and Y components are passed into the physics function to move the sprite.
Hope this is a little clearer.
cheers