Download as odt, pdf, or txt
Download as odt, pdf, or txt
You are on page 1of 2

3D Basic concepts

Theory checklist :
https://docs.gameloft.org/3d-training/#Introduction

Coordinate system
OpenGL coordinate system (NDC)
Vertex, fragment, texel and pixel
Normal vectors
Triangle Interpolation
Vertex buffer and Index buffer
Vertex shader
Primitives assembly
Clipping
Backface culling
Rasterization and Interpolation
Early depth test
Fragment shader
Depth test
Alpha test
Scissor test
Blending state
Visualizing the rendering pipeline
Parallel processing
Rendering order

Answer Following question

1. Why you would use buffer objects to allocate and store vertex and index data?
2. What is the handedness of a coordinate system and the storage order (column or row major) of
the matrices? For OpenGL ES, which handedness and storage order are used?
3. What is NDC? What happen if object are outside [-1, 1] bounds coordinate?
4. Explain the difference between a pixel and a fragment!
5. Explain attributes/uniforms/varying
Excercise :
To start do exercise you must download the framework at https://docs.gameloft.org/wp-
content/uploads/2012/04/NewTraining_23_05_2013.rar.
1. After downloaded the framework, you must commit the NewTrainingFrameWork to your svn,
after build and run your project, you will see the result as below:

2. Add color to the triangle (a different color will be assigned to each vertex, obtain a gradient
effect); and if you have done, the correctly result when you build and run the project will be:

3. Use index buffer and glDrawElements to draw triangle instead of glDrawArrays


4. Use glEnable(GL_CULL_FACE) before the draw commands to enable backface culling, try
and change the order vertex array of the triangles (clockwise and counterclockwise) build, run
and see the result. Explain the result ?

You might also like