Поделиться через


Относительная адресация шейдера

Версии шейдеров пикселей и вершин, поддерживающие относительную адресацию, могут указывать, что относительная адресация используется в бите 13 маркеров целевых и исходных параметров. При указании относительной адресации дополнительный маркер DWORD следует за маркером целевого или исходного параметра.

Обратите внимание, что этот маркер относительной адресации присутствует только для вершинного шейдера версии 2_0 и более поздних версий, а также для шейдера пикселей версии 3_0 и более поздних версий. Относительная адресация не используется для версий пиксельных шейдеров, предшествующих 3_0.

Этот маркер относительной адресации имеет тот же формат, что и маркер конечного или исходного параметра, и применяются следующие правила:

  • В качестве типов регистров можно использовать только D3DSPR_ADDR или D3DSPR_LOOP.

  • Биты swizzle в маркерах исходных параметров используются для определения компонента регистра.

  • Бит 31 0x1.

  • Используется смещение регистра.

  • Все остальные биты не используются.

Регистры адресов и aL используются для относительной адресации регистров констант.

Требования

Доступно в Windows Vista и более поздних версиях операционных систем Windows.