Jump to content

  • Log In with Google      Sign In   
  • Create Account

Interested in a FREE copy of HTML5 game maker Construct 2?

We'll be giving away three Personal Edition licences in next Tuesday's GDNet Direct email newsletter!

Sign up from the right-hand sidebar on our homepage and read Tuesday's newsletter for details!


What's wrong with this? (rotation translation problem) !!! AHHHHH!!! GRRR!


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.

  • You cannot reply to this topic
3 replies to this topic

#1 Anachronism   Members   -  Reputation: 120

Like
Likes
Like

Posted 05 October 2001 - 05:37 PM

If I want to rotate and translate my world, why does it matter which order i do them in?? I see absolutley no reason why this would matter. This is a very simple program so far, here is a description and the problem.... I have 1 large polygon that extends in every direction on the x/y axis that has a grass texture on it... Right in the middle of the screen above the green grass, i display a little black square polygon. Everything looks and works perfectly fine at this point... while using this for translation glTranslatef(screenPosX,screenPosY,-2.0f); BUT, i want a perspective view on the grass texture... So I add glRotatef(45,-1.0f,0.0f,0.0f); which at first appears to work. The grass land poly is at an 45 degree angle and all seems well. BUT when I just add this rotation, the small black polygon that was right above the grass in the middle of the screen dissapears! It''s just gone. I never change the coords of either polys, and if i use that rotation on everything, everything should still be placed where they should be correct? So why does my black poly dissapear? When I rotate BEFORE i translate, both polys show up. (the main full screen ground/grass poly, and the little black box on top) But when I do this first the controls are messed up because when you hit the up aarow key, instead of the camera moving across the land, it moves at an upward angle... when the rotate comes first though, it moves across how i want it... just the black poly is gone..... I really don''t undertsnad why the order matters so much. If I hold a block in my hand and move it towards my face and then rotate it 45 degrees, its gonna look the same to me if i rotated it 45 degrees first, and then moved it towards my face. Any ideas how to fix this? It should be simple enough. Thanks for any help I''m tired and rambling! Thanks....

Sponsor:

#2 Obelix   Members   -  Reputation: 122

Like
Likes
Like

Posted 05 October 2001 - 11:33 PM

Rotating is turning the whole coordinate system. If you imagine a local coordinate system attach to you would the following not give the same result:
1. turn to your left and move 5 steps ahead
2. move 5 steps ahead and turn to your left

#3 Anachronism   Members   -  Reputation: 120

Like
Likes
Like

Posted 06 October 2001 - 01:38 AM

quote:
Original post by Obelix
Rotating is turning the whole coordinate system. If you imagine a local coordinate system attach to you would the following not give the same result:
1. turn to your left and move 5 steps ahead
2. move 5 steps ahead and turn to your left


OK well that seems very odd. I see what your saying. But if you turn to your left and take 5 steps, or take 5 steps and turn to your left, all objects around you havn''t moved. They are still spaced apart how they were before. So Why is my second poly dissapearing when I rotate 45 degrees?

Thanks...


#4 Andrew Russell   Moderators   -  Reputation: 1382

Like
Likes
Like

Posted 06 October 2001 - 02:25 AM

That was a very good way of explaining that, Obelix. I wish I had someone tell me that when I was learning

if you''d just let me modify what you said. Consider now:

1. turn to your left and move 5 steps ahead and put a dot at arms length.

2. move 5 steps ahead and turn to your left and put a dot at arms length.

This is how GL works, it does things in the order you specify.

So, consider those two examples I gave. Basicly, think like the camera does not move, rather the insertion point of your objets.

turn left: glRotate
move 5 steps: glTranslate
draw a dot: glBegin... glEnd

I hope that answers it
good luck
- Andrew

Resist Broken Links - andrewrussellstudios.4nx2.comI don''t believe it! Just Great!
Another server has gone!





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.



PARTNERS