We propose to use transformation optics to generate a general illusion such that an arbitrary object appears to be like some other object of our choice. This is achieved by using a remote device that can transform the scattered light outside a virtual boundary into that of the object chosen for the illusion, irrespective of the profile and direction of the incident light. This type of illusion device also enables people to see through walls. Our work extends the concept of cloaking as a special form of illusion to the wider realm of illusion optics.