GPU/External Registers: Difference between revisions

Kynex7510 (talk | contribs)
Reword TextureCopy
Kynex7510 (talk | contribs)
m Miss Information
Line 562: Line 562:
  line width = (16 * 24) >> 4 = 24
  line width = (16 * 24) >> 4 = 24
  gap = line width
  gap = line width
  size = (16 * 32 * 24) >> 4 = 768
  size = 16 * 32 * 3 = 1536


By correctly calculating the input and output gap sizes it is possible to use this functionality to copy arbitrary sub-rectangles between differently-sized framebuffers or textures, which is one of its main uses over a regular no-conversion DisplayTransfer. When copying tiled textures/framebuffers it's important to remember that the contents of a tile are laid out sequentially in memory, and so this should be taken into account when calculating the transfer parameters.
By correctly calculating the input and output gap sizes it is possible to use this functionality to copy arbitrary sub-rectangles between differently-sized framebuffers or textures, which is one of its main uses over a regular no-conversion DisplayTransfer. When copying tiled textures/framebuffers it's important to remember that the contents of a tile are laid out sequentially in memory, and so this should be taken into account when calculating the transfer parameters.