When forming anything in 3D Geometric Theory is applied to break it down.
To begin with we have to look at the co-ordinates system in 2D and 3D. In 2D, only the x aix (horizontal) and y axis (vertical) are used to plot points (using horizontal first, then vertical), but we can only make a 2D shape as there is no depth to the shape we have made (e.g. 2,1 2,2 1,1 1,2 joined together on a graph could make a square, but not a cube as we only have the height and width of the shape).
To make shapes 3D we need a third axis which creates depth. This axis is known as z, and will be able to plot the depth of the shape which gives it 3D form. The co-ordinates system always works in alphabetical order, with x first, then y, then z.
The very beginning of any shape and form in 3D creation is a vertex. A vertex is a single point in a location with no width, height or length, and is simply used as the base of shape creation. Multiples of a vertex, or vertices, are joined by lines, which begin to make up the formation and physical shape of a 3D object.
Once a whole closed shape is made from lines it becomes a polygon, otherwise known as an ngon (n standing for the number of lines used in the polygon), and if this polygon is filled, it then becomes a face, or surface.
The lines around the shape become edges, and edges can be changed with creasing or smoothing in order to create a different shape.
For example:
With creasing, the first shape is a hexagonal prism, and with smoothing it becomes a cylinder.
The 3D shape as a whole is known as a mesh.
Displaying 3D polygon animations:
API:
An Application Programming Interface, or API, is an interface that a software program enables to allow it to interact with other types of software. It helps and eases any interaction between these different programs not unlike the way a User Interface creates interaction between computers and human users. An API can be enabled by Operating Systems (OS), Applications or Libraries to determine vocabularies and Calling Conventions (schemes for how functions receive parameters and return results to a caller using the scheme) and is used to access the different services they provide. It can include specifications for routines, protocols, data structures and object classes which are used as communications between the implementer of the API and the consumer. Examples of APIs used in 3D display are Open Graphics Library, or OpenGL (a cross-platform graphics API) and Direct3D, an adaptation of DirectX for Microsoft Windows that was created for 3D graphics display. Direct3D is used in consoles such as the Xbox and Xbox 360, and is used to render 3D graphics where performance is key, such as games for the console. OpenGL is mainly used for Computer-Aided Design (CAD), training programs such as flight simulators, and video game graphic design.
An Application Programming Interface, or API, is an interface that a software program enables to allow it to interact with other types of software. It helps and eases any interaction between these different programs not unlike the way a User Interface creates interaction between computers and human users. An API can be enabled by Operating Systems (OS), Applications or Libraries to determine vocabularies and Calling Conventions (schemes for how functions receive parameters and return results to a caller using the scheme) and is used to access the different services they provide. It can include specifications for routines, protocols, data structures and object classes which are used as communications between the implementer of the API and the consumer. Examples of APIs used in 3D display are Open Graphics Library, or OpenGL (a cross-platform graphics API) and Direct3D, an adaptation of DirectX for Microsoft Windows that was created for 3D graphics display. Direct3D is used in consoles such as the Xbox and Xbox 360, and is used to render 3D graphics where performance is key, such as games for the console. OpenGL is mainly used for Computer-Aided Design (CAD), training programs such as flight simulators, and video game graphic design.
The Graphics Pipeline:
The graphics pipeline is a series of stages that go from the original 3D objects as an input, and eventually has an output of a 2D image of the 3D objects on a computer screen.
Rendering Techniques:
Several different, quite specialised and tailor-made rendering techniques have been created for rendering the final 2D screen image on a computer. Techniques such as wire frame rendering show the basic structure of the objects, which makes it easy for designers to check them over for any problems, but would not be realistic without any sort of surfacing visible. It wouldn;t be suitable for final scene rendering as the objects would not be clearly shown with only wire frames visible.
The ray tracing technique, however, is completely different and uses extremely high quality renders by tracing the path of light through pixels in an image plane and simulating the effects of its encounters with virtual objects. Unfortunately this way or rendering means that file sizes are substantially larger than with a wire frame render due to the high quality, and could also mean a very long rendering time. It is mainly used in still image, film and special effects due to the high quality aesthetics.
Scanline rendering is a typical rendering technique and uses row-by-row rendering rather than polygon-by-polygon or pixel-by-pixel, which could mean faster rendering and smaller file sizes but a sacrifice of quality compared to ray tracing. This method has been used in video game design on several platforms and was even used in the original Quake game.
Radiosity is similar to ray tracing in use of a higher quality render, but also includes more realistic rendering of shadows an diffuse light, allowing light to look softer and more realistic.
Rendering Engines:
Rendering engines are software components that take marked up content (such as image files or HTML) and displays the formatted content on the screen. It takes the specifications of the images and converts them into pixels to display onto a computer screen.
An example of a well-known rendering engine is OGRE (Object-Oriented Graphics Rendering Engine). It is a rendering engine with a main purpose of providing a general solution for graphics rendering. It is scene-oriented and doesn't feature any extra tools such as sound and physics support. This has been seen as a drawback as the engine could be considered limited, but OGRE developers argue that this then allows developers to be as free as they want with adding in physics and sound elsewhere while the delopment team can focus purely on the graphics rather than divide the team over several sections of the program. It is a multi-platform engine with OpenGL and Direct3D support.
Another rendering engine is Irrlicht, a German-made open source 3D engine that is cross-platform, running on Windows, Mac OS X and Linux. Also, due to its open nature, it can also be used on other systems such as the XBox, PlayStation Portable and iPhone. It is known for its small size, shallow learning curve and large friendly community. Like OGRE, it also supports OpenGL and DirectX. It also supports a wealth of file formats, which, as well as the open source type of engine, makes it better to use than OGRE.
Distributed Rendering Techniques:
Distributed rendering techniques are techniques that developers and 3D designers would use to quickly and efficiently render a large amount of 3D work.
A prime example of this a render farm. This is where a cluster of computers are used to collectively render 3D scenes and/or animation using a queue system. The increase in computers used means render time would be better, but the advance in graphics and aesthetics would counterbalance this, though using a render farm would still be better than using a single or two computers. This is different from a render wall, a networked, tiled display used for real-time rendering.
Lighting:
Lighting is used in rendering to provide either natural or artificial light to a scene. Different types of light can be created and used at different positions and angles to create different types of day, or different types of lighting in a building. Also, different colours can be used to imitate spotlights in theatres or indoor clubs.
Standard Lighting:
This sphere has been rendered using a standard light, positioned above and slightly away from the sphere, but pointed at it using the rotate tool. The light is extremely broad with no softening, and would be used as artificial light that was close to the object.
Distance Lighting:
Distance lighting has basically the same effect as standard lighting, using a broad area of light with little softness on the shadow and shading on the shape.
Lightbulb:
The lightbulb provides a soft light that isn't entirely focused on the object. It can be moved so that the shadow will be transfered to one specific side based on the bulb's position. As the bulb's light is broad it can be used over multiple objects without having to move them too close together.
Spotlight:
A spotlight is a move direct light and is used to focus on one or just a small group of objects. It has no softness and would need to be pulled higher to create a wider area of light.
Coloured Spotlight:
A spotlight but in yellow. This can be used for coloured light such as lamposts and theatre lights, and can be moved around easily to simulate movement of light.
Mixing Coloured Spotlights:
A combination of two coloured spotlights creates a mixed central colour where the two overlap. This would be handy in situations where spots would cross, or when a colour mix is quickly needed for a light. The light would need to be softer, though, to create the feel of a real spotlight.









No comments:
Post a Comment