Градиент инструкция

Я работаю над графическим движком с использованием Direct3D 11 и Visual Studio 2015. В шейдерах HLSL для основных вызовов рисования я отбираю теневые карты для направленного и точечного освещения с фильтрацией процентного приближения. То есть отбираю небольшую квадратную область вокруг целевой теневой карты текселя и усредняю результаты. Чтобы получить мягкие тени. Теперь каждый вызов shadowMap_.Sample(…) создает предупреждение: . Я хочу исправить это или. Если это невозможно. Скрыть предупреждение. Так как оно полностью заполняет мой вывод предупреждения.

Я попытался найти в Интернете сообщение об ошибке и не смог найти никаких дальнейших описаний.

Я даже не смог найти объяснения. Что такое градиентная инструкция. Я проверил документацию Microsoft на наличие другого сэмплера или функции выборки. Которая позволяет мне заменить цикл собственной функцией выборки. Но также не нашел ничего подобного. Вот функция, которую я использую для выборки моих карт теневого куба для точечных огней:

float getPointShadowValue(in uint index, in float3 worldPosition) { // (Half-)Radius for percentage closer filtering int hFilterRadius = 2; // Calculate the vector inside the cube that points to the fragment float3 fragToLight = worldPosition.xyz - pointEmitters_[index].position.xyz; // Calculate the depth of the current fragment float currentDepth = length(fragToLight); float sum = 0.0; for (float z = -hFilterRadius; z closestDepth ? 1.0 : 0.0); } } } // Calculate the average and return the shadow value clamped to [0, 1] float shadow = sum / (pow(hFilterRadius * 2 + 1, 3)); return min(shadow, 1.0); } 

Код по-прежнему работает нормально. Но я получаю огромное количество этих предупреждений и не знаю. Влияет ли это на производительность.

Любая дополнительная информация о предупреждении и о том. Что с ним можно сделать. Будет очень признательна.

Заранее спасибо.