1. An apparatus for adjusting a texture within an arbitrarily-shaped user-defined region of a surface of an arbitrarily-shaped three-dimensional virtual object, the apparatus comprising: (a) a memory for storing a code defining a set of instructions; and (b) a processor for executing the set of instructions, wherein the code comprises a graphical user interface module adapted to provide a three-dimensional rendered in three-dimensional object space, the element comprising at least one active location for adjusting the texture, wherein the texture is mapped onto the arbitrarily-shaped user-defined region of the surface of the arbitrarily-shaped three-dimensional virtual object without using geometric projection, wherein the user-defined region is less than the entire surface of the three-dimensional virtual object, and wherein the three-dimensional graphical user interface element is operable to adjust the mapped texture within the arbitrarily shaped user-defined region of the surface without affecting a contiguous portion of said surface outside said user-defined region.