Skip to main content

Setting up OpenGL environment for Microsoft Visual C++

Hi Friends, before starting the setting up OpenGL environment, please do the following first:
1.      Install Microsoft Visual C++ 6.0 (Comes with Ms Visual Studio 6.0)
2.      Download the file called “opengl95.exe” and “glutdlls.zip” from internet. [Just open browser-> navigate http://www.google.com -> type upper mentioned file name and search -> you will definitely find the appropriate link to download.]
3.      Run opengl95.exe file and it will be extracted and will be generated some files. Copy those files and
4.      Extract the file “glutdlls.zip” and it will also generate some more files.
5.      Now, combine all extracted files from two sources (opengl95.exe and glutdlls.zip) and place in one location.


Setting up OpenGL environment for Microsoft Visual C++
With any system, you can start with a C\C++ compiler and install appropriate OpenGL header files (.h) and libraries. Three libraries associated with header files are required for the use of OpenGL:
·         OpenGL  (The basic API tool)
·         GLU (the OpenGL Utility Library)
·         GLUT (the OpenGL utility Toolkit)
Typically, files are associated with each library are:
·         Header Files (.h)
·         Library Files: Static Library Files (.lib) and Dynamic Linked Library (.dll).

o   Adding Header Files: We can place (add) the three header files: Gl.h, Glu.h, Glut.h in a subdirectory of the include directory of your compiler. Thus, in each application program we may write the following include statements:
                                    #include<gl/Gl.h>
                                    #include<gl/Glu.h>
                                    #include<gl/Glut.h>

o   Adding Library Files: Now, you have to add the appropriate OpenGL library (.lib and .dll) files to your project so that the linker can find them, in order to run your program successfully.
Ms. Visual C++ (5.0 or later) is a suitable environment for using OpenGL. If you are working with Ms Visual C++ i.e., “win32 console application”, there is no need to build a Graphical User Interface (GUI): as the input from the keyboard and output of text take place through the separate console window.
When upper mentioned files have been downloaded, copy all extracted files and place those into following:
1.      C:\Program files\Microsoft Visual Studio\VC98\lib\
2.      C:\Windows\System32\

Now, Restart your pc….
·         NOW CREATING A PROJECT IN VC++ 6.0 AND EXECUTE AN OPENGL APPLICATION:
·         Steps:
o   Open Ms. Visual C++ 6.0
o   Choose: File -> New
§  In the project tab choose: Win32 Console Application
§  Enter a unique project name eg. Myfirstopengl
§  Click on ok
§  Now Choose option “An empty project”
§  Click finish then “Ok”.
o   Now, go to “Project” menu -> Settings
o   Go to “Link” tab menu.
o   In the “Object/ Library modules” enter the names of the three .lib files as
Glu32.lib glut32.lib opengl32.lib
§  Press Ok
o   Now, go to “File” -> “New”
o   Choose “C++ Source File”
o   Name it. Eg. Firstgl
o   Press “Ok”
o   Write your code
o   Press “F7” to built
o   Press Ctrl+f5 to run

A SAMPLE OpenGL Code   

#include <c:\windows\system32\glut.h>
GLfloat xRotated, yRotated, zRotated;
void Display(void)
{
            glClear(GL_COLOR_BUFFER_BIT);
            glLoadIdentity();
            glTranslatef(0.0,0.0,-4.0);
            glRotatef(xRotated,1.0,0.0,0.0);
            glRotatef(yRotated,0.0,1.0,0.0);
            glRotatef(zRotated,0.0,0.0,1.0);
            glScalef(2.0,1.0,1.0);
            glutWireCube(1.0);
            glFlush();                                 //Finish rendering
            glutSwapBuffers();
}

void Reshape(int x, int y)
{
            if (y == 0 || x == 0) return;  //Nothing is visible then, so return
            //Set a new projection matrix
            glMatrixMode(GL_PROJECTION); 
            glLoadIdentity();
            //Angle of view:40 degrees
            //Near clipping plane distance: 0.5
            //Far clipping plane distance: 20.0
            gluPerspective(40.0,(GLdouble)x/(GLdouble)y,0.5,20.0);
            glMatrixMode(GL_MODELVIEW);
            glViewport(0,0,x,y);  //Use the whole window for rendering
}

void Idle(void)
{
            xRotated += 0.3;
            yRotated += 0.1;
            zRotated += -0.4;
            Display();
}


int main (int argc, char **argv)
{
            //Initialize GLUT
            glutInit(&argc, argv);
            glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);  //For animations you should use double buffering
            glutInitWindowSize(300,300);
            //Create a window with rendering context and everything else we need
            glutCreateWindow("Cube example");
            glPolygonMode(GL_FRONT_AND_BACK,GL_LINE);
            xRotated = yRotated = zRotated = 0.0;
            glClearColor(0.0,0.0,0.0,0.0);
            //Assign the two used Msg-routines
            glutDisplayFunc(Display);
            glutReshapeFunc(Reshape);
            glutIdleFunc(Idle);
            //Let GLUT get the msgs
            glutMainLoop();
            return 0;

}

Comments

Popular posts from this blog

Sample : String Reverse In Java

import java.io.*; class test {     public static void main(String args[])     {         DataInputStream in=new DataInputStream(System.in);         try         {             String text;             System.out.println("\nEnter The Text");             text=in.readLine();             System.out.println("\nIn Reverse Order::\n");             for(int i=text.length()-1;i>=0;i--)             {                 System.out.print(text.charAt(i));             }          ...

Using GREP in UNIX

How To Use grep Command In Linux / UNIX by  VIVEK GITE  on  AUGUST 2, 2007  ·  147 COMMENTS H ow do I use grep command in Linux? grep command searches the given file for lines containing a match to the given strings or words. By default, grep prints the matching lines. Use grep to search for lines of text that match one or many regular expressions, and outputs only the matching lines. The name, "grep", derives from the command used to perform a similar operation, using the Unix/Linux text editor ed: g/re/p grep command syntax grep 'word' filename grep 'string1 string2' filename cat otherfile | grep 'something' command | grep 'something' Use grep to search file Search /etc/passwd for boo user: $ grep boo /etc/passwd You can force grep to ignore word case i.e match boo, Boo, BOO and all other combination with -i option: $ grep -i "boo" /etc/passwd Use grep recursively You can search recursively i.e. read all files under each ...