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

Background Process in ORACLE Database

Background Process in ORACLE Database Database Writer Process (DBWn) Log Writer Process (LGWR) Checkpoint Process (CKPT) System Monitor Process (SMON) Process Monitor Process (PMON) Recoverer Process (RECO) Job Queue Processes Archiver Processes (ARCn) Queue Monitor Processes (QMNn) Database Writer Process (DBWn) The database writer process (DBWn) writes the contents of buffers to datafiles. The DBWn processes are responsible for writing modified (dirty) buffers in the database buffer cache to disk. Although one database writer process (DBW0) is adequate for most systems, you can configure additional processes (DBW1 through DBW9 and DBWa through DBWj) to improve write performance if your system modifies data heavily. These additional DBWn processes are not useful on uniprocessor systems. When a buffer in the database buffer cache is modified, it is marked dirty. A cold buffer is a buffer that has not been recently used according to the least recently used (LRU) algorith...

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 ...

Searching BOOLEAN on the INTERNET

A Primer in Boolean Logic The Internet is a vast computer database. As such, its contents must be searched according to the rules of computer database searching. Much database searching is based on the principles of Boolean logic. Boolean logic refers to the logical relationship among search terms, and is named for the British-born Irish mathematician George Boole. On Internet search engines, the options for constructing logical relationships among search terms often modify the traditional practice of Boolean searching. This will be covered in the section below, Boolean Searching on the Internet. Boolean logic consists of three logical operators: OR AND NOT Each operator can be visually described by using Venn diagrams, as shown below. OR logic college OR university Question: I would like information about college. In this search, we will retrieve records in which AT LEAST ONE of the search terms is present. We are searching on the term...