View more

View more

View more

### Image of the Day Submit

IOTD | Top Screenshots

### The latest, straight to your Inbox.

Subscribe to GameDev.net Direct to receive the latest updates and exclusive content.

# Vertex rotation fails

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

2 replies to this topic

### #1noatom  Members

Posted 03 March 2014 - 01:35 PM

Keep in mind that I'm really using these coords for a sprite,so I don't care about the Z if that matters at all...

So i have the following vector:

v(589,277)

And I want to rotate it 90 degrees counter clockwise.

I build a rotation matrix like this:

I then just transform the vector with:

D3DXVec2TransformCoord(&res, &D3DXVECTOR2(x,y), &rotation); //x = 589,y = 277

The resulting x is the correct one: 276, but the y is very far from the correct result: -589 (it should be something in the range 0-10)

What am I doing wrong?

EDIT: I also tried using a 3d vector with the z = 1..the same

Edited by noatom, 03 March 2014 - 01:40 PM.

### #2fastcall22  Moderators

Posted 03 March 2014 - 01:57 PM

Alternatively:
-y, x 90 degrees clockwise
y, -x 90 degrees counter-clockwise
zlib: eJzVVLsSAiEQ6/1qCwoK i7PxA/2S2zMOZljYB1TO ZG7OhUtiduH9egZQCJH9 KcJyo4Wq9t0/RXkKmjx+ cgU4FIMWHhKCU+o/Nx2R LEPgQWLtnfcErbiEl0u4 0UrMghhZewgYcptoEF42 YMj+Z1kg+bVvqxhyo17h nUf+h4b2W4bR4XO01TJ7 qFNzA7jjbxyL71Avh6Tv odnFk4hnxxAf4w6496Kd OgH7/RxC

### #3Buckeye  GDNet+

Posted 03 March 2014 - 02:53 PM

You're getting the results you're asking for in the calc. A position of 589 on the X-axis rotated by 90 degrees is at -589 on the Y-axis. Can you describe what you're trying to do, rather than how you're trying to do it?

Do you want to rotate the sprite by 90 degrees (in its current position), or rotate its position by 90 degrees?

If you're trying to rotate the sprite (assuming you're using ID3DXSprite), take a look at ID3DXSprite::SetTransform.

Edited by Buckeye, 03 March 2014 - 03:10 PM.

Please don't PM me with questions. Post them in the forums for everyone's benefit, and I can embarrass myself publicly.

You don't forget how to play when you grow old; you grow old when you forget how to play.

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.