1. A method for creating 3D virtual reality from 2D images comprising: obtaining a plurality of 2D images of an environment from at least one camera; stitching together said plurality of 2D images into one or more integrated 2D images of said environment; projecting said one or more integrated 2D images onto a spherical surface, yielding a spherical surface image; unwrapping said spherical surface image onto an unwrapped plane image; dividing said unwrapped plane image into a plurality of regions; assigning depth information to points of each of said plurality of regions; and generating stereo images for a viewer at a viewer position and orientation in a virtual reality environment using said depth information and said unwrapped plane image; wherein said assigning depth information to the points of each of said plurality of regions comprises defining a flat or curved surface for one or more of said plurality of regions; rotating and translating said flat or curved surface for one or more of said plurality of regions in three-dimensional space; and, obtaining said depth information from the three-dimensional space of the points on said flat or curved surface for one or more of said plurality of regions.