PDA

View Full Version : What are some concepts every OpenGL programer should know from memory?



z_Zelman
02-19-2013, 09:43 PM
What are some concepts every OpenGL programer whether new or old should know from memory without having to look at documentation?

Off the top of my head I can think of:

Creating a window
Receiving user input from the keyboard and mouse
How to implement textures
Creating basic geometric figures
Animation
Double Buffering
Creating a game loop
Preventing memory leaks
Camera control
Lighting
Shading


Please post what you think should be added to the list!

Aleksandar
02-20-2013, 09:59 AM
Most of the mentioned concepts have nothing with OpenGL. Are you trying to make a basic course of graphics programing, or sometning else?

yoyonel
02-21-2013, 01:06 AM
- Matrix transformations : ModelView, Projection, Viewport settings
- Basic Shaders: all stuffs mentionned previously (transformations, animation, camera control, lighting, ...) with a GLSL shaders (dynamic path)
- Using : DL (Display List), VA (Vertex Array), VBO (Vertex Buffer Object)
- Using FBO (Frame Buffer Object): MRT (Multiple Render Target), RTT (Render To Texture)

YoYo

tonyo_au
02-25-2013, 09:28 PM
What are some concepts every OpenGL programer whether new or old should know from memory without having to look at documentation?
I may be old fashion but memorising anything seems pointless these days. Knowing were and how to find information is much more important. For example
"Creating a window" changes with operating systems and programming languages. I have progammed in over 30 commercial/proprietary languages in my day and
have always had access to documentation (all be in in paper documents in the past).

Knwoing algorithms and techniques that are portable across time is much more use then knowing how to analise a language/environment to know how optimally implement those techniques
with it is more important.

Any programmer will tell you that over time you cut-n-paste much more often than you will write from scratch anyway.

Nowhere-01
02-26-2013, 01:41 AM
- Matrix transformations : ModelView, Projection, Viewport settings
- Basic Shaders: all stuffs mentionned previously (transformations, animation, camera control, lighting, ...) with a GLSL shaders (dynamic path)
- Using : DL (Display List), VA (Vertex Array), VBO (Vertex Buffer Object)
- Using FBO (Frame Buffer Object): MRT (Multiple Render Target), RTT (Render To Texture)

YoYo
display lists are deprecated. i'd remove them and add VAO to he list.
i'd also add initializing(and probably loading basic tga) and using textures, using occlusion query, making basic shadow-mapping.
there's also frustum culling. but with custom matrix math it doesn't require single opengl call and i also doubt many programmers keep plane extraction process in their memory.

but tonyo_au (http://www.opengl.org/discussion_boards/member.php/23161-tonyo_au) is right, searching and analysing is more important. because these skills make you do things faster. and it's really important to remember only things you use oftenly, that's how your brain works anyway. you forget stuff you dont use.