For what purpose?
It can (of course) be done with a shader.
EDIT: Only now see "texture animated wheel". Is a shader an option?
EDIT2: Tested and works:
my.skill1 += 5*time_step;
my.skill1 %= 360;
my.skill2 = cosv(my.skill1);
my.skill3 = sinv(my.skill1);
mat_rotate.matrix11 = my.skill2;
mat_rotate.matrix12 = -my.skill3;
mat_rotate.matrix21 = my.skill3;
mat_rotate.matrix22 = my.skill2;
...
OutTex = mul(InTex-0.5, matMtl)+0.5;
If you want to have different speeds for different wheels you need to calculate the transformation/ rotation in the vertex shader. You can speed this up by calculating cos and sin in the entity function, save those values in vecSkill41.xy and use those to implement the rotation, for example as follows:
InTex.xy -= 0.5;
OutTex.x = vecSkill41.x*InTex.x - vecSkill41.y*InTex.y;
OutTex.y = vecSkill41.y*InTex.x + vecSkill41.x*InTex.y;
OutTex.xy += 0.5;
When I think about is, this is probably the better approach in almost all cases.