Programming - Games - OpenGL and C++

This toturial was written for me by Imran Khan (imranahmedkhan82@hotmail.com, iak1982@yahoo.com).
Copyright (c) 2004 is owned by Martin Baker

3D Rotation :

This Section will add rotationally motion to the 3d Objects , we just created in our previous Section. We have to add some lines to the existing method of ' DrawGLScene'.

we will use ' glRotatef ' method for rotation. 'glRotatef ' got 4 arguments , 1 st is the angle of rotation , 2nd is x-axis , 3rd is y-axis,4th is z-axis.

here is the code...

glTranslatef(-1.5f,0.0f,-6.0f);
glRotatef(rtri,0.0f,1.0f,0.0f);
glBegin(GL_TRIANGLES);

We have just add one line " glRotatef(rtri,0.0f,1.0f,0.0f); " . rtri is an float type variable.We will use this variable so that the pyramid will be in rotation all the time.We only want rotation on Y-axis thats why we pass " 1.0f " in the 3rd argument.

Same as above we add one line for Cube rotation.

glTranslatef(1.5f,0.0f,-7.0f);
glRotatef(rquad,1.0f,0.0f,1.0f);
glBegin(GL_QUADS)

We want rotation on X and on Z-axis as well thats why we pass "1.0f" in 2nd and 4th argument.

Now here is the increament and decrement for the 2 variable , " rtri" & "rquad", so that both object remain in rotation.

rtri+=1.0f;
rquad-=0.15f;

Simple we increament,decrement everytime when the method run. You can change its value to check the effent.Higer the value more fast it wil rotate.

Here will be the Output.

Download the Source Code.

next: textures


metadata block
see also:
Correspondence about this page

Book Shop - Further reading.

Where I can, I have put links to Amazon for books that are relevant to the subject, click on the appropriate country flag to get more details of the book or to buy it from them.

cover C# in a Nutshell - A good reference for language and class framework

Commercial Software Shop

Where I can, I have put links to Amazon for commercial software, not directly related to this site, but related to the subject being discussed, click on the appropriate country flag to get more details of the software or to buy it from them.

cover Visual C# .NET for Microsoft Platforms only.

This site may have errors. Don't use for critical systems.

Copyright (c) 1998-2015 Martin John Baker - All rights reserved - privacy policy.