My player sprite holds its own speed as a Vector2, its own direction as a Vector2 so in the Update Method I set the player's position (a Vector2) to:
Position += Direction * Speed;
I have a polygon sprites class that has a property that returns the left normal between the two points that make up a given line segment.
I thought I could just use player.Direction = Vector2.Reflect( player.Direction, lineSegment.LeftNormal);
That did not work. I also tried using the Vector2.Negate(player.Direction); this also did not work.
I used the left normal because the polygons are wound clockwise.
Is the direction the player is traveling the same as the incidence angle?
Why would this not be working?
thanks in advance!