Monday, 20 January 2014

HA4 Task 6 – Constraints

What constraints are involved in working within a 3D environment - polygon count, file size and rendering time?

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

                                                                                                                    

Polygon Count and File Size:

The two common measurements of an object's 'cost’ or file size are the polygon count and vertex count. For example, a game character may stretch anywhere from 200-300 polygons, to 40,000+ polygons. A high-end third-person console or PC game may use many vertices or polygons per character, and an iOS tower defence game might use very few per character.


Polygons Vs. Triangles
When a game artist talks about the poly count of a model, they really mean the triangle count. Games almost always use triangles not polygons because most modern graphic hardware is built to accelerate the rendering of triangles.
The polygon count that's reported in a modelling app is always misleading, because a model's triangle count is higher. It's usually best therefore to switch the polygon counter to a triangle counter in your modelling app, so you're using the same counting method everyone else is using.
Polygons however do have a useful purpose in game development. A model made of mostly four-sided polygons (quads) will work well with edge-loop selection & transform methods that speed up modelling, make it easier to judge the "flow" of a model, and make it easier to weight a skinned model to its bones. Artists usually preserve these polygons in their models as long as possible. When a model is exported to a game engine, the polygons are all converted into triangles automatically. However different tools will create different triangle layouts within those polygons. A quad can end up either as a "ridge" or as a "valley" depending on how it's triangulated. Artists need to carefully examine a new model in the game engine to see if the triangle edges are turned the way they wish. If not, specific polygons can then be triangulated manually.


Triangle Count vs. Vertex Count
Vertex count is ultimately more important for performance and memory than the triangle count, but for historical reasons artists more commonly use triangle count as a performance measurement. On the most basic level, the triangle count and the vertex count can be similar if the all the triangles are connected to one another. 1 triangle uses 3 vertices, 2 triangles use 4 vertices, 3 triangles use 5 vertices, and 4 triangles use 6 vertices and so on. However, seams in UVs, changes to shading/smoothing groups, and material changes from triangle to triangle etc. are all treated as a physical break in the model's surface, when the model is rendered by the game. The vertices must be duplicated at these breaks, so the model can be sent in renderable chunks to the graphics card.
Overuse of smoothing groups, over-splittage of UVs, too many material assignments (and too much misalignment of these three properties), all of these lead to a much larger vertex count. This can stress the transform stages for the model, slowing performance. It can also increase the memory cost for the mesh because there are more vertices to send and store.





Information:
http://wiki.polycount.net/PolygonCount
                                                                                                                              

Rendering time:

3D Rendering is the process of producing an image based on three-dimensional data stored within a computer.

3D rendering is a creative process that is similar to photography or cinematography, because you are lighting and staging scenes and producing images. Unlike regular photography, however, the scenes being photographed are imaginary, and everything appearing in a 3D rendering needs to be created (or re-created) in the computer before it can be rendered. This is a lot of work, but allows for an almost infinite amount of creative control over what appears in the scene, and how it is depicted.

The three-dimensional data that is depicted could be a complete scene including geometric models of different three dimensional objects, buildings, landscapes, and animated characters - artists need to create this scene by Modeling and Animating before the Rendering can be done. The 3D rendering process depicts this three-dimensional scene as a picture, taken from a specified location and perspective. The rendering could add the simulation of realistic lighting, shadows, atmosphere, color, texture, and optical effects such as the refraction of light or motion-blur seen on moving objects - or the rendering might not be realistic at all, and could be designed to appear as a painting or abstract image.

Rendering may take from fractions of a second to days for a single image/frame. In general, different methods are better suited for either photo-realistic rendering, or real-time rendering.

Real-time:

Real-time rendering is one of the interactive areas of computer graphics, it means creating synthetic images fast enough on the computer so that the viewer can interact with a virtual environment. The most common place to find real-time rendering is in video games. The rate at which images are displayed is measured in frames per second (frame/s) or Hertz (Hz). The frame rate is the measurement of how quickly an imaging device produces unique consecutive images.



Non Real Time/Pre-rendering:

Pre-rendering is the process in which video footage is not rendered in real-time by the hardware that is outputing or playing back the video. Instead, the video is a recording of a footage that was previously rendered on a different equipment (typically one that is more powerful than the hardware used for playback). Pre-rendered assets (typically movies) may also be outsourced by the developer to an outside production company. Such assets usually have a level of complexity that is too great for the target platform to render in real-time.

The term pre-rendered describes anything that is not rendered in real-time. This includes content that could have been run in real-time with more effort on the part of the developer (e.g. video that covers a large number of a game's environments without pausing to load, or video of a game in an early state of development that is rendered in slow-motion and then played back at regular speed).



The rendering process is computationally expensive, given the complex variety of physical processes being simulated. Computer processing power has increased rapidly over the years, allowing for a progressively higher degree of realistic rendering. Film studios that produce computer-generated animations typically make use of a render farm to generate images in a timely manner. However, falling hardware costs mean that it is entirely possible to create small amounts of 3D animation on a home computer system. The output of the renderer is often used as only one small part of a completed motion-picture scene. Many layers of material may be rendered separately and integrated into the final shot using compositing software.


Reflection/Scattering - How light interacts with the surface at a given point
Shading - How material properties vary across the surface




Information:  
http://en.wikipedia.org/wiki/Pre-rendering
http://www.3drender.com/glossary/3drendering.html
http://en.wikipedia.org/wiki/3D_rendering

No comments:

Post a Comment