Monday, November 12, 2012

Wheel: Where am I?

Great freedom brings great responsibility. Apparently. Or at least great headache on the developer's side.

The idea: Wheel movement is controlled by WASD, because it's the intuitive movement control. So when the user presses W, the wheels roll forward. To turn e.g. left, all wheels on the left side go backwards, and all on the right go forward.

The problem: Where IS forward? Given the concept of freely combinable parts, wheels can be placed pretty much anywhere on the robot in pretty much any angle. So how will a wheel know, where the "forward" direction of the robot is?

A quick and easy solution would be defining a fixed forward direction from the start: When creating the robot, let's say, the left side from editor view is always is the side that will be forward, the side the wheels will drive towards. However, this would be quite limiting.

The other, more free way: Each wheel gets its own forward direction (implied in the design, so they wouldn't be symmetrical like in the picture). The overall forward direction will be the one that most wheels are facing towards. This requires the player to have enough common sense not to place wheels in opposed directions.

At this moment, the latter alternative seems better to me, since it leaves way more freedom in building.

No comments:

Post a Comment