текслд-PS _ 2 _ 0 и выше

Пример текстуры в определенном образце с использованием предоставленных координат текстуры. Эта инструкция отличается от инструкции текслд-PS _ 1 _ 4 , используемой в Pixel Shader версии 1 _ 4.

Синтаксис

текслд DST, src0, src1

Где:

  • DST — это регистр назначения.
  • src0 — это исходный регистр, предоставляющий координаты текстуры для образца текстуры.
  • src1 определяет образец (Direct3D 9 ASM-PS) # , где # указывает, какой номер образца текстуры следует вычислить. Этот образец связан с текстурой и состоянием выборки, определенным в D3DSAMPLERSTATETYPE.

PS _ 2 _ 0 и PS _ 2 _ x

DST должен быть временным регистром (r # ), и допускается только ксизв маска (маска по умолчанию).

src0 должен быть либо регистром координаты текстуры (t # ), либо временным регистром (r # ) без модификатора или свиззле.

src1 должны быть образцами (Direct3D 9 ASM-PS) без # модификатора или свиззле.

Если _ _ бит крепления D3DD3DPSHADERCAPS2 0 нодепендентреадлимит не установлен (в D3DPSHADERCAPS2 _ 0), данная инструкция текстуры (текслд, текслдп, текслдб-PS, текслдд ) может быть зависеть от третьего порядка. Инструкция текстуры, зависимая от первого порядка, представляет собой текстурную инструкцию, в которой одно из следующих:

Инструкция текстуры, зависимая от второго порядка, определяется как Текстурная инструкция, которая считывает или выполняет запись во временный регистр (r # ), содержимое которого перед выполнением инструкции текстуры зависят (возможно, косвенно) от результата инструкции текстуры, зависящей от первого заказа. Инструкция текстуры, зависимая от (n),является производной от (n-1)-гопорядка текстуры.

PS _ 3 _ 0

src1 должны быть образцами (Direct3D 9 ASM-PS) без # модификатора. Свиззле разрешен в src0 или src1. Свиззле применяется к координатам текстуры перед поиском текстур.

Remarks

Эта инструкция поддерживается в следующих версиях:

Версии шейдеров пикселей 1_1 1_2 1 _ 3 1_4 2 _ 0 2 _ x 2 _ SW 3 _ 0 3 _ SW
текслд x x x x x

Количество координат, необходимых для выполнения образца текстуры для src0, зависит от того, как был объявлен src1, а также от компонента. w. Типы образцов объявляются с помощью дкл _ самплертипе (SM2, SM3-PS ASM). Если src1 объявлен как 2D-образец, src0 должен содержать координаты координат; Если src1 объявляется как образец куба или как образец объема, то src0 должен содержать координаты. xyz. Выборка текстуры с меньшей размерностью, чем есть в координатах текстуры, разрешена, так как дополнительные компоненты координат текстуры игнорируются.

Если исходная текстура содержит менее четырех компонентов, значения по умолчанию помещаются в отсутствующие компоненты. Значения по умолчанию зависят от формата текстуры, как показано в следующей таблице.

Формат текстуры Значения по умолчанию
D3DFMT _ R5G6B5, D3DFMT _ R8G8B8, D3DFMT _ 8, D3DFMT _ L16, D3DFMT _ R3G3B2, D3DFMT _ CxV8U8, D3DFMT _ L6V5U5 A = 1,0
D3DFMT _ V8U8, D3DFMT _ V16U16, D3DFMT _ G16R16, D3DFMT _ G16R16F, D3DFMT _ G32R32F B = A = 1,0
D3DFMT _ A8 R = G = B = 0,0
D3DFMT _ R16F, D3DFMT _ R32F G = B = A = 1,0
Все форматы глубины и трафарета R = B = 0,0, A = 1,0

Инструкции шейдера пикселей