Возможен ли динамический перевод шейдеров?
Я знаю, что есть динамический двоичный перевод /JIT, но как насчет динамических шейдерных трансляторов?
Я пишу эмулятор для системы, которая использует очень специфический, собственный графический процессор, но я бы хотел немного имитировать его шейдерный код в программном обеспечении (без ускорения HW); затем я хотел бы реструктурировать код шейдера так, чтобы он соответствовал реальному конвейеру для целевого графического процессора, чтобы ускорить его, делая это динамически.
Это возможно? Я хотел бы сделать это подобно тому, как JIT может ускорить программы, которые нуждаются в переводе перед завершенным выполнением, но сделать это с помощью ускоренного конвейера HW (например, DX/OpenGL с шейдерами).