#assembly #shader #hlsl
#сборка #шейдер #hlsl
Вопрос:
Когда я читаю код asm, я не знаю, как получить инструкцию «round_» чуть ниже. Какую функцию я должен использовать в HLSL для ее получения? Или это было заменено обновлением версий? Ниже приведен код asm: round_z r15.x
Ответ №1:
Похоже, что его нет, вы можете легко его реализовать:
dst = sign(src) * floor(abs(src))
Ответ №2:
Функция, которую вы ищете, является modf
. В следующем фрагменте, i
является результатом round_z
:
float i;
modf(input, i);