|
|
| ARC550 Advanced Computer Applications in Architecture Lecture Notes |
Return to ARC550
home page
|
 |
| Friday April 12, 2002: Form·Z Rendering part 1 |
| Rendering |
- Objects with faces
- Faces with fronts and backs
- Normals
- Sorting
- Display list
|
| Rendering types |
| Wireframe |
No sorting, no surfaces, no surface properties, no shadows, no
transparencies, no reflectances |
| Hidden surface |
Calculates surfaces to determine which are visible, displays only
edges (segments) |
| Quick paint |
Z buffer sort, flat colors, surface properties, no light sources, no
shadows, no transparencies, no reflectances |
| Surface render |
Full boundary sort, flat colors, surface properties, no light
sources, no shadows, no transparencies, no reflectances |
| Shaded render |
Lambert shading, better at shading curved surfaces. |
| Renderzone |
Z buffer sort |
Quickest, least accurate |
All can have
- surface properties,
- light sources,
- shadows,
- transparencies,
- reflectances
|
| Full boundary sort |
Slower, more accurate |
| Gouraud shading |
Better at showing curved surfaces |
| Phong shading |
Even better at showing curved surfaces, adds highlights |
| Ray trace |
Highest quality, slowest |
| Notes by Allen Williams: 4/12/02
- Rendering
- In the academic environment, a great deal of time is spent completing final presentation
renderings, where as in the workplace, only a fraction of this time is used to complete
the same task.
- One of the first items to keep in mind is the following: modeling and rendering are very
different processes, both in what they accomplish visually, and how they are accomplished
as far as the computer is concerned.
- A good place to begin a discussion on the topic of rendering is with an item already
covered in class: the relational database. We have discussed how this is a series of
tables linked to each other, which, when used in conjunction with one another,
describe a model.
- For a moment, let one consider the table of points.
- The order of points in this table is very important. When considering the points which
make up an object, the order in which these points were created (and thus stored in this
table) describes the boundary of the object, and its direction.
- Note: While a 2D surface has height and width, it has no thickness. However, one of
these two sides is the front, and the other is the back.
- To understand which is which, one first must have grasp a simple geometric rule known as
the right hand rule: when looking at the right hand, the thumb can seen to indicate a
hypothetical Z axis, perpendicular to the screen and coming out from the screen. The
fingers of the right hand indicate positive rotation. Thus counter clockwise
rotation is positive; clockwise is negative. Therefore, if one imagines a square with the
first point in the lower left hand corner of the screen, the second point in the lower
right hand corner, the third point in the upper right, and the fourth in the upper left,
one can imagine this counter clockwise movement of points, which tells one that this is
the front of this surface.
- If the option is activated, projecting from the centroid of this face is an arrow which
is called the normal. This indicates the front of the face. (To activate this
option, under the menu items select display, followed by display options. In the resulting
dialogue box which pops up, select view normals. In this same location, on can chose
whether or not the direction of the faces should be shown).
- Another option is to view bounding volumes. This essentially takes the maximum and
minimum x,y, and z values of each object, and constructs a box around it.
- Types of renderings.
- Form· Z has seven methods of renderings we will deal with in
class: wireframe, quickpaint, hidden line, surface render, shaded render, open gl, and
renderzone. (This list increases in image quality, wireframe being the most basic, and
renderzone the most realistic).
- Quickpaint.
- Uses shades of colors and lines to define objects.
- The image is constructed from the rear of the view to the front, one element or face at
a time.
- To do this requires a sorting process.
- The sorting process begins by minimizing the faces to be sorted.
- The normal of each face is compared to the line of sight. The line of sight is
perpendicular to the screen with the object point (the center of interest) located in the
center of the screen.
- The normal of each face can then be compared to the line of sight.
- If the angle formed by the normal and the line of sight is less than 90 degrees then the
face will be seen. If the angle is greater than 90 degrees then the face is presumed to
not be visible and the face can be excluded from the sorting process. This step will
reduce the faces to be sorted by some 50%.
- A sorting algorithm is then used to determine the order in which faces are to be
displayed. It relies on the location of the centroid of each face in the model relative to
the eyepoint. The centroids (and thus the faces) may thus be sorted, from the farthest
away from the eye point to the closest.
- Lets take a quick look at how this is done:
- The data of the model is contained in the database.
- A z buffer sort yields a new list of information called the display list.
- The display list order is crucial.
- Items at the top of this list are the furthest from the eye point, and items at the
bottom are the closest.
- Therefore the items at the top are rendered first (therefore, potentially behind other
objects).
- This method, however, is not precise and yields inaccuracies in rendering at times. For
example, if there are two objects on the screen, both are 5 wide and 5 high;
one however is 20 long and the other is 18 long. One can imagine a case where
the centroid of the longer box lies behind that of the smaller box, yet because of its
length, the end face of longer one projects in front of the shorter. Based on the process
described above, this case could yield very confusing results.
- The advantage of Quickpaint however is its speed
it is fast.
|