Skip to main content
30 events
when toggle format what by license comment
Nov 10, 2015 at 9:57 vote accept Syntac_
Nov 9, 2015 at 18:29 answer added Ilmari Karonen timeline score: 4
S Dec 18, 2013 at 5:58 history bounty ended House
S Dec 18, 2013 at 5:58 history notice removed House
Dec 17, 2013 at 0:55 history tweeted twitter.com/#!/StackGameDev/status/412747948158894080
S Dec 16, 2013 at 23:35 history bounty started House
S Dec 16, 2013 at 23:35 history notice added House Reward existing answer
Dec 14, 2013 at 12:02 answer added sam hocevar timeline score: 2
Dec 13, 2013 at 19:29 vote accept Syntac_
Nov 10, 2015 at 9:57
Dec 13, 2013 at 18:23 answer added concept3d timeline score: 16
Dec 13, 2013 at 16:27 answer added Charles Beattie timeline score: 2
Dec 13, 2013 at 14:21 answer added Syntac_ timeline score: 1
Dec 13, 2013 at 12:41 comment added Syntac_ @CharlesBeattie it's for a game with tetris-like mechanics, but with X rotations as well as Z.
Dec 13, 2013 at 9:30 comment added Charles Beattie I would like to know why you would need to do this. If you are trying to avoid gimbal lock I would use quaternions or log space quaternions and convert to a matrix just before applying to vertices.
Dec 12, 2013 at 16:03 comment added dsilva.vinicius @Syntac Posted an answer because of the limitations of comments.
Dec 12, 2013 at 14:56 history edited Syntac_ CC BY-SA 3.0
added 187 characters in body
Dec 12, 2013 at 14:41 comment added Syntac_ @dsilva.vinicus would you be able to provide some C++ DirectX/pseudocode to demonstrate?
Dec 12, 2013 at 11:09 comment added dsilva.vinicius @GuyRT I don't think so. Note that M, N and O are not the same in both cases. I should have give the names M1, N1 and O1 for the matrices in the second case. M1, N1 and O1 are rotations around the world axis in world coordinates, differently from the first case where the matrices N and M will work in object coordinates.
Dec 12, 2013 at 9:55 comment added GuyRT @dsilva.vinicius Your separated transformations are exactly the same as the combined one, or to put it another way: MNOv == M*(N*(Ov))
Dec 12, 2013 at 2:02 comment added dsilva.vinicius Using Euler angles you are multiplying all the three rotation matrices before applying then on the vertex. If M, N, O are the rotation matrices, the result operation is MNOv. What I have proposed is to apply each matrix separately: v1= Ov0, then v2 = Nv1 and finally v3= Mv2. This way each vi will be in world coordinates and you just need to use a rotation matrix for the current axis in world coordinates too.
Dec 12, 2013 at 1:33 comment added Syntac_ Using an old rotation would still require the multiplication of the new rotation and result in the same operation, no? To simplify the solution I only need rotations in the X and Z world axes.
Dec 12, 2013 at 1:12 comment added dsilva.vinicius Any method that group transformations before applying to the vertices will fall in the problem you are experiencing. I think the only way to do that with just the angles is rotating the vertices around each axis at a time, saving the result of the rotation and using it as input for the next rotation. This way you will be simulating that your input geometry is passing through the pipeline three times.
Dec 12, 2013 at 1:03 comment added Syntac_ I'm not looking for a solution in Euler angles. I simply need any solution which performs the correct task.
Dec 12, 2013 at 0:21 history edited Syntac_ CC BY-SA 3.0
added 196 characters in body
Dec 11, 2013 at 23:11 comment added Syntac_ Yes like you said only one angle is about a world axis. I want a solution where I can rotate by an angle around multiple world axes. For example, I want to represent a rotation of 90 degrees around the world-X and a rotation of 90 degrees around the world-Z as one rotation transformation to compose an object's world transform/matrix.
Dec 11, 2013 at 23:04 comment added DMGregory Do you want Euler angles, or rotation about world axes? Note that by the definition of Euler angles (eg en.wikipedia.org/wiki/Euler_angles ), only the alpha angle is strictly about a world axis. The other two angles are relative to tilted axes which do not necessarily coincide with the world axes.
Dec 11, 2013 at 21:43 comment added Syntac_ Filtering what out? I do call the 3 separate functions and then multiply them to create the transformation matrix. This archieves a local rotation though.
Dec 11, 2013 at 21:30 answer added dsilva.vinicius timeline score: 1
Dec 11, 2013 at 21:04 comment added TravisG What's wrong with just calling the differnet functions three times and filtering out the parts of the vectors you don't want (by setting them to 0 before calling the function)? Otherwise I'm not sure what you're trying to achieve.
Dec 11, 2013 at 20:09 history asked Syntac_ CC BY-SA 3.0