Monday, 20 January 2014

HA4 Task 2 - Displaying 3D Polygon Animations

How are 3D models displayed? Describe and explain what an API and a Graphics pipeline are.


Remember that you are trying to comprehensively explain the theory and applications of 3D with elucidated examples and consistently using subject terminology correctly.


API


Application Programming Interface also know as API for short, is a code in most procedural languages, an API specifies a set of functions or routines that accomplish a specific task or are allowed to interact with a specific software component. This specification is presented in a human readable format in paper books, or in electronic formats like eBooks or as man pages. For example, the math API on Unix systems is a specification on how to use the mathematical functions included in the math library. Among these functions there is a function, named sqrt, that can be used to compute the square root of a given number.

In short terms API is a language/code of how objects actually work in a given object-oriented language, usually it is expressed as set classes with an associated list of class methods. For example, in the Java language, if the class Scanner is to be used, importing the java.util.Scanner library is required so objects of type Scanner can be used by invoking some of the class' methods, here is an image to show this explanation within Java language:









Here is a example of what API is:



Graphics Pipeline

Graphics Pipelines are also known as a rendering pipeline, refers to the sequence of steps needed in order for a 2D raster representation of a 3D object and or scene. For example making, a 3D model of a character, or any other 3D animation the pipeline is the process it goes through to process the 3D model/models into what that particular computer displays. In the early history of 3D computer graphics fixed purpose hardware was used to speed up the steps of the pipeline, but the hardware evolved, becoming more general purpose, allowing greater flexibility in graphics rendering, as well as more generalized hardware, allowing the same generalized hardware to perform not only different steps of the pipeline, unlike fixed purpose hardware, but even limited forms of general purpose computing. As the hardware evolved over the years, so did the graphics pipelines. Those new upgraded 'pipelines' were the Open GL and DirectX pipelines. Although the concept is still the same.
Source:http://goanna.cs.rmit.edu.au/~gl/teaching/Interactive3D/2013/images/pipeline.png




Here is video footage explaining the overview:

Open GL

OpenGL which is one of the used features, is a is a cross-language, multi-platform application programming interface (API) for rendering 2D and 3D computer graphics. The API is typically used to interact with a Graphics processing unit (GPU), to achieve hardware-accelerated rendering. OpenGL was developed by Silicon Graphics Inc. From 1991 and released in January 1992 and is widely used in CAD, virtual reality, scientific visualization, information visualization, flight simulation, and video games. OpenGL is managed by the non-profit technology consortium Khronos Group.
Source:http://guide2games.org/wp-content/uploads/2008/03/silenthill2-4.jpg

Direct X

The second language which is used is DirectX, is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with Direct, such as Direct3D, DirectDraw, DirectMusic, DirectPlay, DirectSound, and so forth. The name Direct X was coined as shorthand term for all of these APIs (the X standing in for the particular API names) and soon became the name of the collection.
Source:http://en.wikipedia.org/wiki/DirectX

No comments:

Post a Comment