Upwork/oDesk Game Programming Concepts Test

1. What is true regarding DirectX and OpenGL?
Answers:
• DirectX is a collection of API for games programming.
• DirectX is much faster than OpenGL.
• DirectX is more frequently used in professional graphics.
• OpenGL is an open standard.
• OpenGL is multi-platform.

2. A UDP client sends a packet to a server on port 80. The server responds using port 50'234 as source port. What will the result be?
Answers:
• It will always work.
• The response packet might be blocked by state-full firewalls.
• The server will crash when trying to use a different port.
• None of the above
3. How many 3 dimension vectors are needed to position and orient an object in space?
Answers:
• 1
• 2
• 3
• 4
• 5
4. A texture is composed of fragments.
Answers:
• True
• False
5. A particle engine can be done using either vertices or fragments.
Answers:
• True
• False
6. Shadow volumes use per-pixel lighting.
Answers:
• True
• False
7. What does dereferencing mean in C?
Answers:
• Accessing a pointer's value
• Accessing the value pointed by a pointer
• Adding a second reference to a pointer
• None of the above
8. What is the Gilbert-Johnson-Keerthi algorithm used for?
Answers:
• Collision detection
• Texture uploading
• File compression
• Network priority queue
9. What is a data structure?
Answers:
• A list of values with names associated to them
• An object array
• An event list
• None of the above
10. What are the differences between anisotropic filtering and trilinear filtering?
Answers:
• Anisotropic filtering gives a better quality than trilinear filtering
• Trilinear gives a better quality than Antisotropic filtering
• Anisotropic filtering performs a linear interpolation
• Trilinear filtering doesn't take the angle of vision into account
• Trilinear filtering needs more bandwidth than anisotropic filtering
11. What is the result of a dot product?
Answers:
• A vector
• A scalar
• A matrix
• None of the above
12. In a networked game, the client can be coded in C while the server is coded in Ruby.
Answers:
• True
• False
13. What is 3D audio?
Answers:
• 3D audio is a technique used to add sound to a 3D environment.
• 3D audio is a sound effect that creates the illusion of multiple sound sources placed anywhere in the 3D space.
• 3D audio is a special effect that makes sound like in a specific place.
• None of the above.
14. How much memory will an 8 bit per channel RGBA texture of 256x256 pixels take?
Answers:
• 2Mbytes
• 2Mbit
• 2Moctet
• 2Kbytes
15. What is a cross product?
Answers:
• The product of two floats
• The product of two vectors
• The product of two matrices
• The product of two ints
• None of the above
16. What is a bones system?
Answers:
• A technique in modeling to animate a 3D model
• A skeleton used for the animation of a 3D model
• A skeletal animation
• A technique to create a 3D model
17. What does bump mapping do?
Answers:
• It flattens a texture
• It adds a relief effect to a texture
• It adds minor displacements to a surface
• None of the above.
18. What does the following statement describe?

It renders the scene from the light point of view, in a depth texture; then it renders the scene again from the camera point of view using the depth texture to determine if a pixel is in shadow or not.
Answers:
• Collision detection
• Depth mapping
• Shadow mapping
• Texture mapping
• None of the above
19. What are shadow volumes?
Answers:
• Shadow volumes are a technique used in 3D computer graphics to add shadows to a rendered scene.
• Shadow volumes are a fast way to add shadows to a 3D scene.
• Shadow volumes are a very slow way to add shadows to a 3D scene.
• None of the above.
20. What are pbuffers?
Answers:
• Point buffer objects
• Pixel buffer objects
• Particle buffer objects
• None of the above
21. The UDP is an acknowledged protocol.
Answers:
• True
• False
22. How many layers are there in the OSI model?
Answers:
• 1
• 3
• 5
• 7
• 9
23. The fundamental idea behind particles is that they are immune to physics laws (collisions, ...).
Answers:
• True
• False
24. What is network endianess?
Answers:
• big endian
• little endian
• vax endian
• None of the above
25. While using RGBA, what is the color of #ff00ff80?
Answers:
• Semi-transparent red
• Semi-transparent magenta
• Semi-transparent blue
• Semi-transparent yellow
• Semi-transparent orange
26. Which one of the following languages can easily be embedded into a game engine?
Answers:
• C
• Perl
• lua
• Java
• Objective-C
27. Which one in the following list is the usual correct game design for sound?
Answers:
• Music is played on the left speaker while sound effects are on the right one.
• Music is played on the right speaker while sound effects are on the left one.
• Music is played in stereo and sound effects are mixed above it.
• None of the above
28. Which ones in the following file format list are lossless file formats?
Answers:
• FLAC
• mp3
• aac
• aiff
• ogg
29. What is a lightmap?
Answers:
• A texture describing the displacement of a surface
• A texture describing the brightness of a surface
• A texture describing the bump of a surface
• None of the above
30. Why is the TCP protocol considered a reliable protocol?
Answers:
• Because it is widely used
• Because it is acknowledged by routers
• Because it is acknowledged by both peers
• TCP is not reliable, UDP is
• None of the above
31. What is pathfinding?
Answers:
• An algorithm used to find a route between A and B
• An algorithm used to upload data rapidly
• A client to server connection
• None of the above
32. What is a mesh?
Answers:
• A visual effect
• A 3D model part
• The physical representation of a 3D model
• None of the above
33. What is object oriented programming?
Answers:
• An attempt to aid programmers in the separation of concerns like cross-cutting concerns
• A programming paradigm that uses "objects" and their interactions to design applications and computer programs
• A paradigm based on policies
• None of the above
34. Which of the following is a good design?
Answers:
• Uploading a complete texture to the GPU for each frame
• Uploading the texture once and, if part of it changes, uploading the changed sub textures
• Uploading the texture once,and then, if it changes, uploading it again
• Not using any texture for unfiltered images but drawing directly from the CPU at each frame (e.g. glDrawPixels)
35. What is parallax mapping?
Answers:
• A vertices mapping technique
• A ray tracing technique
• An enhancement of the bump mapping technique
• A renderer
• None of the above
36. What is a physics engine?
Answers:
• A piece of code regulating 3D models
• A simulation using Newtonian physics models
• A visual effect
• None of the above
37. What primitive is used to draw particles?
Answers:
• points
• lines
• quads
• triangles
• Any primitive may be used depending on the situation
38. What is an event queue?
Answers:
• A synchronous communication protocol
• A mail system
• A message queue used for inter-process or inter-thread communication
• None of the above
39. What is rasterization?
Answers:
• Collision detection
• Texture mapping
• The task of taking an image described in a vector graphics format and converting it into pixels
• None of the above
40. What is UV Mapping?
Answers:
• A mathematical model of a surface
• The process of painting vertices
• A 3D modeling process to make a 2D image represent a 3D model
• None of the above
41. What is a graphical projection?
Answers:
• A protocol by which an image of a 3D object is projected onto a planar surface
• A technique to display a surface in a 3D scene
• A protocol by which an image of a 2D object is projected onto a 3D scene
• None of the above.
42. Which of the following are multivariate interpolations?
Answers:
• Nearest neighbor
• Bicubic
• Bilinear
• Inverse distance weighting
• Kriging
• All of the above
43. What is the following 4x4 matrix called?
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
Answers:
• Unary matrix
• Normalized matrix
• Identity matrix
• Reverse matrix
• None of the above
44. What is a particle emitter?
Answers:
• The destination of the particles
• The origin of the particles
• The orbits of the particles
• None of the above
45. What is a garbage collector?
Answers:
• A visual effect
• A form of automatic memory management
• A form of manual memory management
• A reference count based memory management
• None of the above
46. What is a sprite?
Answers:
• A fairy
• An image or animation that is integrated into a larger scene
• A 3d model
• None of the above
47. What is a shader?
Answers:
• A way of uploading vertices to the GPU
• A memory effect
• A list of renderer instructions to produce certain visual effects
• A smooth visual effect
• None of the above
48. What is a singleton?
Answers:
• A design pattern that uses only static object methods
• A design pattern that uses only non-static object methods
• A design pattern that is used to restrict the instantiation of a class to one object
• None of the above
49. What is the base component of a 3D model?
Answers:
• Lines
• Vertices
• Surfaces
• Cubes
• Spheres
50. What is VRAM?
Answers:
• Video memory
• A dual-ported variant of DRAM
• A special memory once used to store the frame buffer
• None of the above
51. What is the utility of z-buffering?
Answers:
• Z-buffering is used to solve the problem of deciding which elements of a rendered scene are visible and which are hidden
• Z-buffering is used to render a texture
• Z-buffering is used to render distant objects
• None of the above
52. What is texture mapping?
Answers:
• A technique to place a texture at a certain position
• A method to create textures
• A method to apply textures to a 3D model
• A technique to adjust the perspective of textures
53. Which of the following are antialiasing techniques?
Answers:
• Supersampling
• Adaptivesampling
• Multisampling
• Fastsampling
• Cubicsampling
54. What is portal rendering?
Answers:
• A visibility determination algorithm
• A shadowing technique
• A collision detection algorithm
• None of the above
55. What is true regarding lossy compression?
Answers:
• It has lower compression ratio than lossless compression
• Compressing data and then decompressing it retrieves the same data
• Compressing data and then decompressing it retrieves data that may well be different from the original
• It removes most of the inaudible sounds to provide better compression
56. What is double buffering?
Answers:
• A technique to minimize flickering
• A technique to make rendering faster
• An image loading technique
• None of the above
57. What is a vector?
Answers:
• A complex number
• A couple of 2 numbers
• A geometric object with a weight and a length
• A geometric object which has both a magnitude and a direction
58. What is a GPU?
Answers:
• A random number generator
• A dedicated graphic processor
• A special memory used for network buffers
• None of the above
59. What is the usual MTU for ethernet networks?
Answers:
• 1000
• 1500
• 2030
• 9000
60. What's an asset?
Answers:
• Money needed to fund the game
• A compressed file
• Everything that is used in a game (sounds, textures, sprites...).
• None of the above
61. What's a timer?
Answers:
• An entity which represents a task to be executed at a regular interval
• A list of functions
• A rapid function
• None of the above
62. What is multitexturing?
Answers:
• A process to apply different textures alternately to the same surface
• An algorithm to apply many different textures to the same surface at the same time
• Neither of the above.
63. What is a particle system?
Answers:
• A technique consisting in using small chunks of memory
• A technique to simulate certain phenomena like fire, smoke or dust
• A rendering technique
• A technique for generating particles
64. What is a hash table?
Answers:
• A value array
• A data structure that associates keys with values
• A list of values
• A data structure that associates values with keys
• None of the above
65. What is a quaternion?
Answers:
• A list of vectors
• A linear equation description
• An array of numbers
• Non-commutative extension of complex numbers
• None of the above
66. What is Havok Physics?
Answers:
• A physics SDK created by Havok
• A special way to handle game physics with quaternion
• A collision detection algorithm
• None of the above
67. What is a resource manager?
Answers:
• A system to free objects in a game
• A system to add objects to a game
• A system to load and free resources in a game
• A system to simplify access to various resources in a game
• A system to increase the loading speed
68. What is RAMDAC?
Answers:
• A second video ram for 3D objects
• A fast video ram
• A memory that contains the textures
• A memory storing the color pallet and a converter to generate an analog signal
69. What is mipmapping?
Answers:
• A technique to increase the quality of textures
• A technique that decreases or increases the resolution of a texture depending on the distance between the point of view and the textured object
• A technique to resize textures
• A technique to apply textures
70. What is IEC 60559
Answers:
• A file format
• A network protocol
• A floating point standard
• None of the above
71. What is HDRR?
Answers:
• The application of multiple textures
• The rendering of 3D scenes by using lighting calculations done in a larger dynamic range
• A fast path to copy vertices to the video card
• None of the above
72. What is a quadric?
Answers:
• A 3D object which is hard coded
• A D-dimensional hyper-surface defined as the locus of the zeros of a quadratic polynomial
• A 3D object evaluated using tesselation
• None of the above.
73. What is a MIDI file?
Answers:
• A regular audio file
• An audio file containing sound waves
• A file containing instructions for instrument synthesizers
• An image file
• None of the above
74. What is framerate?
Answers:
• The number of frames in a game
• The monitor refresh rate
• The number of times an image is rendered per second
• None of the above
75. What is scanlines rendering?
Answers:
• A fast way to access an image
• A black and white effect
• An algorithm for visible surface determination
• A technique to create a blur effect
• None of the above
76. What is back buffer?
Answers:
• It is a rendering mode for full screen interface
• It is a graphic abstraction layer for rendering
• It is a 3D display technology
• It is the drawing target buffer in a double buffering system
• None of the above