Nativizing Blueprints происходит на этапе Content Cooking. Блюпринты заменяются сгенерированным C++ кодом который и попадет в исполняемый файл. Сами блюпринты остаются в проекте и доступны для дальнейшего редактирования.
OpenGL умеет производить ранний тест глубины только для фрагментных шейдеров без «побочных эффектов». К сожалению, к «побочным эффектам» относится запись в storage block.
https://developer.nvidia.com/content/depth-precision-visualized
Такая формулировка противоречит формуле, ведь I это вектор от камеры к вершине.
И вопрос. В следующем контексте normalize() выполняется над float4 или float3?
Как узнать производит ли UE самостоятельно такую оптимизацию при компиляции шейдера?