Casting int2, float2

Stupid question, probably, but, why does

float2 charSizef = (float2)(charSize.x, charSize.y);

work, whereas

float2 charSizef = (float2)charSize;

Doesn’t, where charSize is an int2 input to my kernel function.

Also, what’s the performance-hit from casting between int/int2 and float/float2?

a|x

Try using a conversion:

float2 charSizef = convert_float2(charSize);