Графическое оборудование оптимизировано для матричных операций, операций с фрагментами и векторных операций. Проще говоря, с квадратными матрицами легче работать, так как вычисления могут выполняться в блоках (называемых фрагментами), аппаратное обеспечение оптимизировано для операций с блоками, поэтому существуют такие вещи, как файловые буферы, блит оперативной памяти не копирует на диск до блока был заселен. То же самое относится и к графической памяти.
Буфер кадра состоит из фрагментов, которые являются квадратными. Например, на экране с разрешением 800x600 и цветовым пространством RGB (0-255) имеется 800x600 точек с 3 байтами на каждый канал, а общее количество адресов 3x800x600 = 1440 000 байт для адресации в буфере кадров. Это означает, что имеется 1875 адресуемых фрагментов размером 256x256x3 байта. Поскольку данные текстуры являются квадратными, это значительно упрощает отображение из матрицы GRAM в матрицу экранного буфера с использованием бикубического масштабирования, где, как если бы это не было квадратным смещением для более длинной стороны, потребовалось бы больше времени для вычисления, когда это необходимо для быть масштабированным.
Многие графические API принимают данные текстуры, не имеющие квадратной формы, потому что они принимают координаты UV-отображения в качестве данных с плавающей запятой, однако, как только они отправляются в GPU, к данным текстуры добавляется заполнение, потому что фактические пропорции изображения не изменяют отображение кажется незатронутым, однако к данным текстуры добавляется заполнение, потому что графический процессор любит обращаться к нему как к идеальному квадрату.
Таким образом, если используется изображение 100x1024 и используется изображение 1024x1024, что означает, что 946,176 байт будут потрачены впустую. Тем более, если нужно выполнить компоновку, потому что необходимо добавить альфа-канал, чтобы указать, что данные заполнения не должны влиять на составную текстуру.