A lot of doubts about transformation and view.

Hello everyone, first of all thanks to try help me.
Second sorry about my English, I’m brazilian.

I’m trying to model a low-poly hand using basic objects like cyliders and spheres that I will use to represent a hand configuration of brazilian sign language. So in my program I’ll enter with a vector of quaternions that will represent the angles of all the joints of the hand. So my problem is:

When I rotate the thumb to be in front of the palm it seems smaller than it should be:


thumb with right size beside the palm


thumb in front of the palm that seems smaller.

Other problem that I have is if I change the camera postion to be beside the hand the result is it:

so, the first problem I think that can be a problem of projection, but I don’t know what and the second problem I really don’t know what it can be.

When I rotate the thumb to be in front of the palm it seems smaller than it should be …
I can’t see your images on my computer, so I’m just guessing below …

Do you have Z-buffering turned on? Sounds like the thumb might be going behind the hand NOT in front of it. Therefore it would get smaller (assuming you are using a perspective projection). If Z-buffering is not enabled, whatever is drawn last is displayed over stuff that was drawn before it. Z-buffering is turned on as follows: glEnable (GL_DEPTH_TEST);

Also check how you’ve set up your clipping planes. If that’s done incorrectly you can get some funky results.

Yah, it’s a stupid error of transformation, the rotation that I do must be with a negative angle (I’m an idiot I know). Thanks a lot.

But the second error that if I put the camera at with Z=0 than then result is a plateau mesh. Other problem that I’m having is that if I change the camera, All my translates change and my hand is separated.

I suggest you turn on the Z-Buffering and add some basic lighting to your scene.
It will make your scene easier to understand which will make debugging a lot easier.