Manipulating 3-D Virtual Textures Directly from Hardware

The user-mode display driver can create an allocation on top of an existing virtual address (for example, the virtual address for the view of a three-dimensional (3-D) texture file). Creating an allocation on top of an existing virtual address makes the 3-D texture available to hardware manipulation with a system-memory copy. However, in this scenario, the user-mode display driver's Lock function must always evict pages from local video memory back to system memory because the virtual address for the allocation was not allocated by the video memory manager. Therefore, the video memory manager cannot transparently remap the virtual address for the texture from system memory to video memory and vice versa. In other words, a virtual address with this property cannot be a mapped view.