Какой способ использовать текстуру в вершинном шейдере в последнее время?
Я портировал старый пример xna в моногейму и не могу найти реальное решение какой-то уловки.
sampler2D не работает в VertexShaderFunction Превышен индекс регистра, цель не поддерживает сэмплеры
как я понимаю, автор использовал цвет текстуры для установки высоты или направления
~
texture FlowMapTexture : register(t0);
sampler2D FlowMapSampler : register(s0) = sampler_state
{
Texture = <FlowMapTexture>;
};
~
VertexShaderOutput VertexShaderFunction(VertexShaderInput input)
{
~
float2 texCoord = (worldPosition.xz + WorldToFlowMapTexCoord.xy) * WorldToFlowMapTexCoord.zw;
float2 flowVector = tex2Dlod(FlowMapSampler, float4(texCoord, 0, 0)).rg;
worldPosition.xz -= flowVector * SquareSize * extendAmount;
float4 viewPosition = mul(worldPosition, View);
output.Position = mul(viewPosition, Projection);
output.Color = input.Color;
return output;
}