Game Development Reference
Principle of Consistency
Almost every platform has a guideline written for user interface design. Microsoft
has published the Design Guidelines for Class Library Developers , which you should
follow when building .NET software. If you feel the need to improve upon the
design, chances are you will remove your “improvements” when users begin to
complain about the application not working the way they would normally expect.
If you are doing cross-platform development, maintain consistency by following the
design guidelines for the host platform. Never make the different platform appli-
cations function the same if they break one of the guidelines of the platform.
Chances are your users will be switching between applications on one platform, not
switching between applications on different platforms. Users should be able to use
the knowledge gained in other programs on a certain platform to anticipate the
behavior of your program.
Users should also be able to anticipate the behavior of a control from its visual
appearance and properties. For example, if a pushbutton on one of your user
interfaces responds to single mouse click, every other button should respond to
one mouse click as well.
When you develop a custom control, it is important that you try to make it behave
in a similar fashion to other system controls. If you build a custom control that
allows the user to type text into it, that control should have a blinking insertion
pointer; it should have a vertical scrollbar if multi-line input is supported. If you
build a custom control that allows the user to click on it, the control should behave
in a similar fashion to a regular button.
If you have a custom control that behaves in a fashion that users are not accus-
tomed to, be sure to give the control a distinct appearance so that users can asso-
ciate that type of control with a unique behavior.
Consistency is also important to interface abstractions like accelerator keys, place-
ment of menus and toolbars, and mouse gestures.
Principle of Transparency
The concept of user interface transparency is a design that allows users to accom-
plish their tasks while being minimally aware of the interface itself. Interface trans-
parency occurs when the attention of the user is drawn away from the interface
and directed at the task itself.