Tuesday, December 15, 2015

OpenGL test answers of 2016.

In this post you can find Complete and recently updated Correct Question and answers of OpenGL. All Answers updated regularly with new questions. Upwork OpenGL test answers of 2016.



Question:* What is the significance of i,f,v,d... in function naming conventions found in OpenGL?

Answer: • Specify the expected parameter types (int, float, pointer, double, etc.)

Question:* What two options can be provided to glShadeModel()?

Answer: • SMOOTH and FLAT

Question:* What organization is currently responsible for OpenGL's standardization and development?

Answer: • Khronos

Question:* What kind of data is stored in a VBO?

Answer: • Vertices

Question:* Is ambient light possible in OpenGL?

Answer: • Yes

Question:* Why are many functions deprecated in the OpenGL specification?

Answer: • As newer versions are released, older versions with functionality that can be created in the newer version but faster through other methods must be deprecated but are still a part of the specification on most hardware platforms.

Question:* What is an FBO?

Answer: • Framebuffer Object

Question:* Which function call sets up the size of the output area?

Answer: • glViewport()

Question:* What are "texture coordinates" used for?

Answer: • Texture coordinates provide OpenGL with information about polygon blitting when painting textures onto rendered geometry.

Question:* Does OpenGL support Rasterization?

Answer: • Yes

Question:* If lighting is disabled, which function specifies the color of the vertex?

Answer: • glColor()

Question:* Opengl uses a 3D Cartesian Coordinate System.

Answer: • True

Question:* glVertex is used to draw OpenGL primitives.

Answer: • True

Question:* OpenGL stands for:

Answer: • Open Graphics Library

Question:* Once a 2D or 3D rotation is performed, is it possible to reverse the rotation?

Answer: • Yes

Question:* What is a "depth buffer" and what does it accumulate?

Answer: • A type of buffer that accumulates "depth" information in a 3D scene

Question:* What kind of data is stored in a VAO?

Answer: • Vertex state and other ancillary data for rendering in the programmable pipeline

Question:* What is the difference between glColor3d and glColor3f?

Answer: • glColor3d takes double arguments, while glColor3f takes float arguments

Question:* What is a VBO?

Answer: • Vertex Buffer Object

Question:* What does Open GLSL stand for?

Answer: • Graphics Library Shader Language

Question:* What are the valid operations provided to glStencilOp?

Answer: • GL_KEEP, GL_ZERO,GL_REPLACE, GL_INCR, GL_INCR_WRAP, GL_DECR, GL_DECR_WRAP, GL_INVERT

Question:* What is the use of a shared context?

Answer: • To allow multiple OpenGL contexts to share the same data

Question:* What do the values "R", "G", "B" and "A" mean in the context of color in OpenGL?

Answer: • Red, Green, Blue and Alpha channels

Question:* Can you specify the location of a light source in OpenGL?

Answer: • Yes

Question:* What is a VA or VAO?

Answer: • Vertex Array Object

Question:* What are GLUT, GLU, GLEW, GLFW, SFML, GLX, GLEE?

Answer: • A suite of open source libraries, among others, which provide valuable functionality to OpenGL programmers including context creation, extension management, and others.

Question:* What happens to variables that aren't used in outputs of a GLSL fragment shader?

Answer: • They are optimized out and removed by the compiler on most platforms.

Question:* When animating, OpenGL provides:

Answer: • Accumulation buffers, frame-buffer objects, VBOs, depth and stencil buffers, blending modes, and other types of buffers that allow a developer to achieve the desired effect

Question:* In OpenGL, what is a "stencil buffer"?

Answer: • A low-resource buffer used for accumulating fragments from a rendering to "cut out" another accumulated render

Question:* Are there some OpenGL routines that cannot be stored in a display list?

Answer: • Yes

Question:* What does glMaterialf(...) do?

Answer: • Defines the material properties of a drawn object for visual effects.

Question:* Generally, what primitive polygon is used for creating a mesh to represent a complex object?

Answer: • Triangle

Question:* What kind of polygons work best in a VBO intended for modeling a solid?

Answer: • Triangles, Triangle Strips and Triangle Fans

Question:* If a coordinate system (CS1) is transformed to another coordinate system (CS2) using a matrix M, is it possible to go from CS2 to CS1 and how?

Answer: • Yes, apply inverse of M.

Question:* What components make up a light source in OpenGL?

Answer: • Diffuse, Specular, and Ambient.

Question:* Does OpenGL use a client-server model and a state machine?

Answer: • Yes

Question:* What should be done to rotate around a point that is not the origin?

Answer: • Translate to origin, rotate about origin, then translate back to original position.

Question:* What is the dimensions of a 3D transformation matrix?

Answer: • 4x4

Question:* Does OpenGL provide modeling primitives such as a cube, cone, pyramid?

Answer: • Not in the official specification, but such functionality is provided by the GLUT library.

Question:* What is a transformation?

Answer: • Mathematical operation used to create a desired behavior for points and objects.

Question:* True or False: blending functions are NOT order dependent.

Answer: • False

Question:* What does glViewport do?

Answer: • Sets the extents of the current view.

Question:* What are the four major types of shaders available in OpenGL 4.0?

Answer: • Geometry, Tesselation, Vertex and Fragment

Question:* What are the "red" book, "blue" book and "orange" book?

Answer: • There are several books on OpenGL, but the two most revered are the "red" and "blue" books, and the "orange" book was published to cover shader technologies by a third party.

Question:* In order to obtain correct calculations for shading, what is the best length for normals of an object?

Answer: • 1 (unit length)

Question:* Does OpenGL have an official camera?

Answer: • No.

Question:* In the best practice, what code should appear at the top of a GLSL shader?

Answer: • #version

Question:* What is a "per-fragment" operation?

Answer: • Also known as a "per-pixel" operation (applicable in some cases), "per-fragment" more accurately describes an operation that occurs through each requested "fragment" by pipelines that deal directly with screen graphics

Question:* What are X,Y,Z,S,T,U and V?

Answer: • Coordinate components

Question:* What is the purpose of GL_REPEAT?

Answer: • To have a texture repeat in a direction (horizontal or vertical).

Question:* Why clear a buffer?

Answer: • To reset its state

Question:* Does OpenGL provide physics, particle systems and other real-time procedural effects out of the box?

Answer: • No.

Question:* What is the use of glGet?

Answer: • To get specific values from the hardware context

Question:* What function is required in every GLSL shader program?

Answer: • void main() {}

Question:* What are the four types of clearable buffers?

Answer: • Color, Depth, Stencil, Accumulation

Question:* What are two types of shaders?

Answer: • Vertex and fragment.

Question:* What kind of vertex array is NOT provided by OpenGL?

Answer: • Polygons

Question:* What happens when an object to be drawn is not within the current viewport?

Answer: • It is clipped from the scene and subsequently not drawn.

Question:* What is "core" versus "compatibility" styles of writing OpenGL applications?

Answer: • "Core" is the stuff that comes recommended in the specification for the version you are writing for, while "compatibility" uses deprecated functions or functions from other versions that are not backward compatible.

Question:* Fill in the blank to draw this triangle: glBegin(GL_TRIANGLES); ....(blank).... glEnd();

Answer: • Use 3 sets of common immediate mode functions such as glVertex* (required), glColor*, glTexCoord*

Question:* What is glVertextPointer(...) used for?

Answer: • Passing an array of vertices to OpenGL.

Question:* What is the dimensions of a 2D transformation matrix?

Answer: • 3x3

Question:* Does OpenGL perform clipping for objects not within the current viewport?

Answer: • Yes

Question:* Does OpenGL raise an error if a new display list is given the same name of a previously defined display list?

Answer: • No

Question:* How do you activate a shader program in OpenGL?

Answer: • glUseProgram(ProgramID);

Question:* When do you use glFlush and glFinish?

Answer: • Usually around certain operations, such as during a glReadPixel after writing, or when OpenGL must flush or finish its currently buffered calls. Their utility has decreased over time.

Question:* What do the letters "ARB" mean in the context of OpenGL?

Answer: • Architecture Review Board

Question:* What is the purpose of a MIPMAP?

Answer: • multum in parvo; an LOD texture branching from a main texture that assists in scaling, a basis of wavelet compression

Question:* What are EXT and ARB?

Answer: • EXT and ARB functions are not yet integrated into the "core" feature set and are considered experimental but candidate

Question:* The current version of OpenGL does support materials?

Answer: • FALSE, shaders replaced this functionality.

Question:* What purpose does the "Scissor Test" serve?

Answer: • To limit the drawing area.

Question:* Once shading is enabled, what happens to glColor() calls?

Answer: • They are ignored.

Question:* What kind of coordinates are used in order to represent a transformation as a matrix multiplication operation?

Answer: • Homogeneous

Question:* What are the primitive types available to a glBegin statement? Note: this question is often flagged by test takers. Read carefully and choose wisely, there is only one correct answer.

Answer: • GL_QUADS, GL_TRIANGLES, GL_LINES, GL_LINE_STRIP, GL_QUAD_STRIP, GL_LINE_LOOP, GL_TRIANGLE_STRIP, GL_POINTS, GL_POLYGON

Question:* Is it possble to perform a reflection of an object across a specified axis?

Answer: • Yes with a simple matrix multiplication.

Question:* What kind of argument is expect in a function ending with a "v"?

Answer: • An array typecasted with (GLvoid *) or in the type indicated by the preceding letter.

Question:* What happens in immediate mode?

Answer: • Once drawn, primative information is lost. To redraw, the primatives are drawn by reexecuting the display function.

Question:* What is glTexCoord*() used for?

Answer: • Defining the coordinates in texture space to be mapped to object space.

Question:* How many texture units are there in OpenGL?

Answer: • It is hardware specific and can be queried using glGet.

Question:* What does the Blend Equation do?

Answer: • It tells OpenGL how to mix fragments in a logical order.

Question:* Which is better to use for dynmic drawing?

Answer: • Vertex Array

Question:* Which is a function NOT used for rendering vertex arrays?

Answer: • glDisplayArray()

Question:* How many cycles does it theoretically take for a single OpenGL call?

Answer: • 1

Question:* Will a PNG file directly uploaded to a GPU, using the fixed-function pipeline, render with the expected content?

Answer: • No.

Question:* Can OpenGL automatically generate texture coordinates?

Answer: • Yes

Question:* True or False, OpenGL does NOT have its own data types for int, float, and double?

Answer: • False

Question:* Does function deprecation stop older applications from working with newer versions of OpenGL?

Answer: • No, most of the time.

Question:* What do you have to do to get "compatibility mode" in OpenGL?

Answer: • Nothing

Question:* Which is better to use for static drawing?

Answer: • Display List

Question:* What is the "workshop" name for the type of geometry and texture effects used in commercial gaming as part of OpenGL (and DirectX)?

Answer: • Baked geometry

Question:* What are "accumulation buffers"?

Answer: • Accumulation buffers allow off-screen rendering to occur without affecting the displayed pixels

Question:* What happens in retained mode?

Answer: • Primitives can be redrawn from display lists. Hence, no information is lost.

Question:* Does OpenGL use column-major order or row-major order when representing a transformation matrix?

Answer: • column-major

Question:* What is "immediate mode"?

Answer: • A deprecated set of functions that permit the user to quickly learn the basic building blocks of OpenGL

Question:* What is the purpose of calls to glLogicOp(GLenum opcode)?

Answer: • A logical operation applied between RGBA color and RGBA color at the corresponding location.

Question:* What is the non-official name for glBlendFunc(GL_SRC_ALPHA,GL_ONE)?

Answer: • Additive

Question:* What is the use of glOrtho?

Answer: • To set the extents and behavior of coordinates.

Question:* What are the native image formats supported by OpenGL?

Answer: • BGRA, ARGB, RGBA, HDR and others

Question:* Which coordinate system is NOT used during texture mapping?

Answer: • Light

Question:* What is "pixel unpacking"?

Answer: • Storing data in GRAM with functions such as glDrawPixels, glTexImage2d

Question:* Does OpenGL support hierarchical modeling of drawn objects?

Answer: • Yes

Question:* Is a new coordinate system created with every transformation applied, e.g., translate or rotate?

Answer: • Yes

Question:* How many dimensions are supported when performing texture mapping?

Answer: • 4

Question:* What kind of polygons can OpenGL draw?

Answer: • Coplanar convex N-gons without holes

Question:* Let us scale a striaght, horizontal line by a factor of 2 through using glScale(2.0f,0.0f,0.0f). This line consists of only 2 points, a left and right point. Which point(s) moves due to the scale transformation?

Answer: • The right.

Question:* What is the difference between glBlendFunc and glBlendFuncSeparate()?

Answer: • glBlendFunc is a shorter call that sets only the s and d factors

Question:* When considering lighting, are the effects different when there is one object versus multiple objects?

Answer: • Yes since multiple objects means light can bounce off of each object and affect the scene.

Question:* What is the non-official name for glBlendFunc(GL_ONE_MINUS_DST_COLOR, GL_ZERO)?

Answer: • Solarize

Question:* What is "multisampling" and how is it used?

Answer: • Multisampling is a method of doing anti-aliasing (and scaling) which is still in use but is deprecated

Question:* What is "pixel packing"?

Answer: • Retrieving data from the GPU using glReadPixels, glGetTexImage, etc.



No comments:

HTML5 Upwork (oDesk) TEST ANSWERS 2022

HTML5 Upwork (oDesk) TEST ANSWERS 2022 Question: Which of the following is the best method to detect HTML5 Canvas support in web br...

Disqus for upwork test answers