<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span>My bad.</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: times new roman,new york,times,serif; background-color: transparent; font-style: normal;"><br><span></span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: times new roman,new york,times,serif; background-color: transparent; font-style: normal;"><span>My patch pass the tests but not yours. Can you check these facts?</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: times new roman,new york,times,serif; background-color: transparent; font-style: normal;"><br><span></span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: times new roman,new york,times,serif; background-color: transparent; font-style: normal;"><span>Nozomi<br></span></div><div><span></span></div><div><br></div>
  <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div dir="ltr"><font face="Arial" size="2"><br> </font> </div> <br>>Hi Nozomi,<br>><br>>the huge arrays, the loop, it looks a bit ugly. Your implementation makes the D3DXSHRotateZ function a >bit more compatible. What comes into my mind is:<br>>D3DXSHRotateZ(out, y, 1,25f, in);<br>>D3DXSHRotateZ(out, y, 1,25f, out);<br>>D3DXSHRotateZ(out, y, 1,25f, &out[x]); // x ... 1 - y * y<br>>D3DXSHRotateZ(&out[x], y, 1,25f, out); // x ... 1 - y * y<br>><br>>Do the last 2 also work and are they producing the same values as native?<br>><br>>Attached is a simple hack to succeed your test, it has some major stuff which needs to be fixed first, but >nevertheless, please have a look. I think the implementation could be a lot smaller and faster. What do you
 >think? I'd like to hear your opinion, before you try to send a patch.<br><br>>+FLOAT * WINAPI D3DXSHRotateZ(FLOAT *out, UINT order,  FLOAT angle, CONST FLOAT *in)<br>>There is a double space after "order,".<br>><br>>Cheers<br>>Rico<br><br><br> </div> </div>  </div></body></html>