Download presentation
Presentation is loading. Please wait.
Published byGeorgiana Gilbert Modified over 6 years ago
1
Window reshaping, Keyboard interaction, Camera, Drawing objects
OpenGL & GLUT Basics Window reshaping, Keyboard interaction, Camera, Drawing objects George Georgiev Telerik Corporation
2
Table of Contents Project using OpenGL & FreeGLUT in MSVC++
Window reshaping Keyboard Interaction Camera Positioning, orientation Drawing objects Coloring Basic Lighting
3
Project using OpenGL & FreeGLut
A reminder…
4
OpenGL & FreeGLUT Project
Step 1 – Creating the project Setup OpenGL & FreeGLUT (done only once) Open Visual Studio, Choose C++ as a language Create a Win32 Console application Tick “Empty project” Add a new .cpp file #include <gl\glew.h> #include <gl\freeglut.h> int main(int argc, char ** argv)
5
OpenGL & FreeGLUT Project (2)
Step 2 - Linking Go to Project > [YourProjectName] Properties From the side menu choose Configuration properties > Linker > Input In the Additional Dependencies type in: glew32.lib freeglut.lib Do this for both Debug and Release configurations (upper left corner in the window) Close the properties window, you’re ready to go
6
OpenGL & FreeGLUT Project (2)
Tip – the faster way to link to the libraries Skip the entire Step 2 In the .cpp file write: #pragma comment (lib, “glew32.lib”) #pragma comment (lib, “freeglut.lib”)
7
Window reshaping The Reshape function
8
Window reshaping Reshape function Specified by glutReshapeFunc
Defines how your window reshapes Write it once, remember it no more
9
Window reshaping Live Demo *
(c) 2008 National Academy for Software Development - All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.*
10
The Keyboard monitoring functions
Keyboard interaction The Keyboard monitoring functions
11
Keyboard interaction Keyboard monitoring functions Specified by
glutKeyboardFunc glutKeyboardUpFunc Monitor key pressing and key releasing Doesn’t receive device information Receives translated windows messages
12
Keyboard interaction Live Demo *
(c) 2008 National Academy for Software Development - All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.*
13
Orientation and positioning
Camera control Orientation and positioning
14
Camera control ‘Moving the world’ method Using the gluLookAt function
Using the glTranslate* and glRotate* functions You do the things the opposite way around F. e., to move the camera forward, move the objects backward Using the gluLookAt function Specifies camera location Viewed location
15
GLUT predefined objects, Coloring, Positioning
Drawing objects GLUT predefined objects, Coloring, Positioning
16
Drawing objects GLUT predefined functions Coloring Positioning
glutSolid* glutWireframe* Coloring glColor* - defines the current drawing color Positioning glTranslate* - moves the renderer by a vector glRotate* - rotates the renderer by an Euler angle
17
Camera control & Drawing objects
* Camera control & Drawing objects Live Demo (c) 2008 National Academy for Software Development - All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.*
18
Basic Lighting Enabling lighting
19
Basic lighting Enabling lighting glEnable Enabling ‘color material’
20
Basic Lighting Live Demo *
(c) 2008 National Academy for Software Development - All rights reserved. Unauthorized copying or re-distribution is strictly prohibited.*
21
OpenGL Basics ? ? ? ? ? Questions? ? ? ? ? ? ?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.