--- layout: stdlib-reference --- # EvaluateAttributeAtSample ## Description Interpolates vertex attribute at the current fragment sample position. ## Signature
T EvaluateAttributeAtSample<T>(
    T x,
    uint sampleindex)
    where T : __BuiltinArithmeticType;

vector<T, N> EvaluateAttributeAtSample<T, N:int>(
    vector<T, N> x,
    uint sampleindex)
    where T : __BuiltinArithmeticType;

matrix<T, N, M> EvaluateAttributeAtSample<T, N:int, M:int>(
    matrix<T, N, M> x,
    uint sampleindex)
    where T : __BuiltinArithmeticType;

## Generic Parameters #### T: [\_\_BuiltinArithmeticType](../interfaces/0_builtinarithmetictype-029j/index.html) #### N : int #### M : int ## Parameters #### x : [T](evaluateattributeatsample-08hj.html#typeparam-T) The vertex attribute to interpolate. #### sampleindex : uint #### x : [vector](../types/vector/index.html)\<[T](../types/vector/index.html#typeparam-T), [N](../types/vector/index.html#decl-N)\> The vertex attribute to interpolate. #### x : [matrix](../types/matrix/index.html)\<[T](../types/matrix/t-0.html), [N](../types/matrix/index.html#decl-N), [M](../types/matrix/index.html#decl-M)\> The vertex attribute to interpolate. ## Return value The interpolated attribute value. ## Remarks x must be a direct reference to a fragment shader varying input. ## Availability and Requirements Defined for the following targets: #### hlsl Available in stages: `amplification`, `fragment`, `compute`, `mesh`, `miss`, `callable`, `closesthit`, `raygen`, `intersection`, `anyhit`. #### glsl Available in stages: `amplification`, `fragment`, `compute`, `mesh`, `miss`, `callable`, `closesthit`, `raygen`, `intersection`, `anyhit`. #### spirv Available in stages: `amplification`, `fragment`, `compute`, `mesh`, `miss`, `callable`, `closesthit`, `raygen`, `intersection`, `anyhit`. Requires capabilities: `SPV_KHR_compute_shader_derivatives`, `spvMeshShadingEXT`.