1. A method for user interaction with a three-dimensional virtual world, wherein the virtual world comprises one or more public spaces and one or more private spaces, wherein the user is represented in the virtual world by an avatar, wherein the user can manipulate the avatar via a user interface, the method comprising: generating a custom gesture for the avatar; and associating the gesture with one or more user interface signals.