|
Objects are the building blocks of your scene. There are a lot of different types of objects supported by POV-Ray. In the sections which follows, we describe "Finite Solid Primitives", "Finite Patch Primitives", "Infinite Solid Primitives", "Isosurface Object", "Parametric Object", and "Light Sources". These primitive shapes may be combined into complex shapes using "Constructive Solid Geometry" (also known as CSG).
The basic syntax of an object is a keyword describing its type, some floats, vectors or other parameters which further define its location and/or shape and some optional object modifiers such as texture, interior_texture, pigment, normal, finish, interior, bounding, clipping or transformations. Specifically the syntax is:
OBJECT: FINITE_SOLID_OBJECT | FINITE_PATCH_OBJECT | INFINITE_SOLID_OBJECT | ISOSURFACE_OBJECT | PARAMETRIC_OBJECT | CSG_OBJECT | LIGHT_SOURCE | object { OBJECT_IDENTIFIER [OBJECT_MODIFIERS...] } FINITE_SOLID_OBJECT: BLOB | BOX | CONE | CYLINDER | HEIGHT_FIELD | JULIA_FRACTAL | LATHE | PRISM | SPHERE | SPHERESWEEP | SUPERELLIPSOID | SOR | TEXT | TORUS FINITE_PATCH_OBJECT: BICUBIC_PATCH | DISC | MESH | MESH2 | POLYGON | TRIANGLE | SMOOTH_TRIANGLE INFINITE_SOLID_OBJECT: PLANE | POLY | CUBIC | QUARTIC | QUADRIC ISOSURFACE_OBJECT: ISOSURFACE PARAMETRIC_OBJECT: PARAMETRIC CSG_OBJECT: UNION | INTERSECTION | DIFFERENCE | MERGE
Object identifiers may be declared to make scene files more readable and to parameterize scenes so that changing a single declaration changes many values. An identifier is declared as follows.
OBJECT_DECLARATION: #declare IDENTIFIER = OBJECT | #local IDENTIFIER = OBJECT
Where IDENTIFIER is the name of the identifier up to 40
characters long and OBJECT is any valid object. To invoke
an object identifier, you wrap it in an object{...}
statement.
You use the object
statement regardless of what type of object
it originally was. Although early versions of POV-Ray required this
object
wrapper all of the time, now it is only used with
OBJECT_IDENTIFIERS.
Object modifiers are covered in detail later. However here is a brief overview.
The texture describes the surface properties of the object. Complete details are in "Textures". Textures are combinations of pigments, normals, and finishes. In the section "Pigment" you'll learn how to specify the color or pattern of colors inherent in the material. In "Normal" we describe a method of simulating various patterns of bumps, dents, ripples or waves by modifying the surface normal vector. The section on "Finish" describes the reflective properties of the surface. The "Interior" is a feature introduced in POV-Ray 3.1. It contains information about the interior of the object which was formerly contained in the finish and halo parts of a texture. Interior items are no longer part of the texture. Instead, they attach directly to the objects. The halo feature has been discontinued and replaced with a new feature called "Media" which replaces both halo and atmosphere.
Bounding shapes are finite, invisible shapes which wrap around complex, slow rendering shapes in order to speed up rendering time. Clipping shapes are used to cut away parts of shapes to expose a hollow interior. Transformations tell the ray-tracer how to move, size or rotate the shape and/or the texture in the scene.
|
|