Использование SIMD-команд.
В 3D-графике зачастую встречаются группы операций, которые можно выполнить за один такт с помощью SIMD-команд(single instruction, multiple data, т.е. одна команда - много данных). Такими операциями являются интерполирование векторов, скалярное произведение векторов, нормировка векторов, интерполирование компонент цвета (например, RGB) и т.д.. При этом есть 4 пути использования SIMD-команд в зависимости от типа представления данных и типа используемого процессора: MMX для целочисленных данных, 3DNow!, SSE и Enhanced 3DNow! для вещественных данных. Все пути предполагают использование ассемблерных вставок. Если Вы программируете в C/C++, то ассемблерная вставка задается командой asm:
asm {
asm-команда
asm-команда
. . .
asm-команда;
}
Дальше
|