您的位置:首页 > 其它

Rendering

2015-12-29 23:01 387 查看
Rendering
This is a
smart resource.
Use a QR reader
or the
Aurasma
app to access additional content.



https://goo.gl/3UR5vR
 


What is rendering?
Rendering is the name given to the process in three dimensional graphics whereby
a geometric description of an object is converted into a two dimensional image-plane representation that looks real. (Tucker 2005)

So what this means is taking the information stored on your hard drive or disc
and turning this into the graphics that you see on screen.

Rasterization
Rasterizing is widely used to render 3D games. This is due to the way it balances
the real time performance needed with the ability to create the pretty pictures we’ve come to expect from modern games. Basically, the way this works is the rasterizer looks at the thousands of triangles that make up the 3d scene and determines which will
be visible in the current perspective. With that information the engine then analyses the light sources along with some other environmental details to add light and colour to the pixels on each triangle. Here is an example comparing rasterization to a higher
end rendering method such as ray tracing;



Ray tracing
Ray tracing is a rendering technique that is capable of creating photorealistic
images from 3Dimensional scenes. The way it works is by calculating the path of every ray of light and following it through the scene until it reaches the camera. This means that ray tracing can create very accurate reflections and refractions.
In general terms ray tracing works by creating a ray for each pixel that will
be displayed on screen. Then the path of each ray is traced from the camera back through the scene to the original light source.
Here’s an example with a pig in a top hat which demonstrates how this works.



So in this example the screen is represented by the eye of the bloke sitting on
the stool. We then trace a ray of light back to the pig. But on the way this ray travels through the glass which cases the light to refract. Once the light gets to the pig this is the point at which the colour would have been calculated. We then follow the
ray further back to the light source, which in this case is provided by the lamp on the moles helmet. Again, the light travels through the glass on the way which add some more refraction. This happens for every pixel and for every light in the scene. This
means a lot of information needs to be calculated. For this reason ray tracing is not yet suitable for real time rendering.
Here’s an example of the type of image you can create when rendering using ray
tracing.



For more information look at The Art of 3D: Computer Animation and Effects By
Isaac V. Kerlow page 63 which is where the pig in the top hat example comes from.

Radiosity
Radiosity is a rendering technique that focuses on global lighting and works to
track the way that light spreads and diffuses around a scene. This is done in an attempt to simulate the effect of light bouncing around a room. This is a really good method for recreating natural shading. Have a look in the corner of any room or where the
walls meet the ceiling - you’ll notice that shadows tend to gather there. This is something that can be recreated really well using radiosity.



This example shows a scene rendered with and without radiosity. For more information
on radiosity look at 3D Computer Graphics: A Mathematical Introduction with OpenGL By Samuel R. Buss page 272.

Some of the rendering methods I’ve covered here could be used together to create
very detailed scenes that will run in real time. In games this can be achieve through the use of light maps. These are often used on the static elements of games such as terrain or architecture and they work by baking the lighting data straight onto the texture.
Below is an example of the level of detail that can be achieved using lightmaps;



Distributed rendering
For those using high end rendering methods the time taken to render can be a real
issue. For example a single frame from Toy Story 3 took 16 hours to render. With a little bit of quick maths (16 x 24 x 103 / 24 =) we can see that in order to render the whole movie using only one computer it would have taken 1648 days to complete. That’s
just over 4 and a half years. The solution for this is distributed rendering, also known as using a render farm. This involves sending the project to a ‘farm’ of networked computer which each render a small part of each frame. These parts are then sent back
to the host system which combines these pieces to create the whole frame. This dramatically reduces render time. Commercial render farms often have hundreds of these networked computers (or nodes) and they look like the example below;



The promotional video below explains how render farms work



http://goo.gl/IePNtG



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  3D