Reference Section 8.2
Documentation

From POV-Wiki
Jump to: navigation, search

This document is protected, so submissions, corrections and discussions should be held on this documents talk page.


Contents

Objects

Infinite Solid Objects

Describe a solid, possibly infinite, shape:
INFINITE_SOLID_OBJECT:
PLANE | POLY | CUBIC | QUARTIC | QUADRIC

The plane object:
PLANE:
Jump to SDL
plane { V_NORMAL, F_DISTANCE [OBJECT_MODIFIERS] }

The poly object:
POLY:
Jump to SDL
poly { ORDER, < POLY_COEFFICIENTS > [POLY_MODIFIERS] }
ORDER:
An integer value between 2 and 35 inclusive.
POLY_COEFFICIENTS:
A quantity n of FLOATs separated by commas, where n is ((ORDER+1)*(ORDER+2)*(ORDER+3))/6.
POLY_MODIFIERS:
[sturm [BOOL]] & [OBJECT_MODIFIERS]

The polynomial object:
POLYNOMIAL:
Jump to SDL
polynomial { ORDER, [POLYNOMIAL_COEFFICIENTS]... [POLY_MODIFIERS] }
ORDER:
An integer value between 2 and 35 inclusive. The sum of X_POWER, Y_POWER and Z_POWER of any xyz(): coefficient must never be greater than this integer.
POLYNOMIAL_COEFFICIENTS:
xyz( X_POWER , Y_POWER , Z_POWER):VALUE [,]
X_POWER
The power of x for that coefficient. It's a positive or null integer.
Y_POWER
The power of y for that coefficient. It's a positive or null integer.
Z_POWER
The power of z for that coefficient. It's a positive or null integer.
VALUE
The value as a FLOAT of the coefficient of the polynomial equation for that powers of x,y and z. If a coefficient is not specified, its value defaults to 0.
POLY_MODIFIERS:
[sturm [BOOL]] & [OBJECT_MODIFIERS]

The cubic object:
CUBIC:
cubic { < CUBIC_COEFFICIENTS > [POLY_MODIFIERS] }
CUBIC_COEFFICIENTS:
20 FLOATs separated by commas.

The quartic object:
QUARTIC:
quartic { < QUARTIC_COEFFICIENTS > [POLY_MODIFIERS] }
QUARTIC_COEFFICIENTS:
35 FLOATs separated by commas.

The quadric object:
QUADRIC:
Jump to SDL
quadric { < FLOAT, FLOAT, FLOAT >, < FLOAT, FLOAT, FLOAT >, < FLOAT, FLOAT, FLOAT >, FLOAT [OBJECT_MODIFIERS] }

Quick Reference Contents

CSG

Describe one complex shape from multiple shapes:
CSG_OBJECT:
Jump to SDL
UNION | INTERSECTION | DIFFERENCE | MERGE

Combine multiple shapes into one:
UNION:
union { UNION_OBJECT UNION_OBJECT... [UNION_MODIFIERS] }
UNION_OBJECT:
OBJECT | LIGHT
UNION_MODIFIERS:
[split_union BOOL] & [OBJECT_MODIFIERS]

Create a new shape from the overlapping portions of multiple shapes:
INTERSECTION:
intersection { SOLID_OBJECT SOLID_OBJECT... [INTERSECTION_MODIFIERS] }
SOLID_OBJECT:
FINITE_SOLID_OBJECT | INFINITE_SOLID_OBJECT | ISOSURFACE | CSG_OBJECT
INTERSECTION_MODIFIERS:
[cutaway_textures] & [OBJECT_MODIFIERS]

Subtract one or more shapes from another:
DIFFERENCE:
difference { SOLID_OBJECT SOLID_OBJECT... [DIFFERENCE_MODIFIERS] }
DIFFERENCE_MODIFIERS:
[cutaway_textures] & [OBJECT_MODIFIERS]

Combine multiple shapes into one, removing internal surfaces:
MERGE:
merge { SOLID_OBJECT SOLID_OBJECT... [OBJECT_MODIFIERS] }

Quick Reference Contents

Object Modifiers

Manipulate the appearance of an object
OBJECT_MODIFIERS:
[OBJECT_PHOTONS] & [CLIPPED_BY] & [BOUNDED_BY] & [MATERIAL] & [INTERIOR] & [INTERIOR_TEXTURE] &[TEXTURE] & [PIGMENT] & [NORMAL] & [FINISH] & [TRANSFORMATION...] & [no_shadow] & [no_image[BOOL]] & [no_radiosity[BOOL]] & [no_reflection[BOOL]] & [inverse] & [double_illuminate[BOOL]] & [hollow [BOOL]] & [radiosity { importance IMPORTANCE }]

Specify how an object should interact with photons:
OBJECT_PHOTONS:
Jump to SDL
photons { OBJECT_PHOTON_ITEMS }
OBJECT_PHOTON_ITEMS:
[target [F_SPACING_MULT]] & [refraction BOOL] & [reflection BOOL] & [collect BOOL] & [pass_through [BOOL]]

Slice a portion of a shape:
CLIPPED_BY:
clipped_by { UNTEXTURED_SOLID_OBJECT... } |
clipped_by { bounded_by }
UNTEXTURED_SOLID_OBJECT:
FINITE_SOLID_OBJECT | INFINITE_SOLID_OBJECT
Use neither with a texture applied.

Specify a bounding shape for an object:
BOUNDED_BY:
bounded_by { UNTEXTURED_SOLID_OBJECT... } |
bounded_by { clipped_by }

Quick Reference Contents

UV Mapping

Map a texture to an object using surface coordinates:
UV_MAPPING:
Jump to SDL
uv_mapping PIGMENT | pigment { uv_mapping PIGMENT_BODY } |
uv_mapping NORMAL | normal { uv_mapping NORMAL_BODY } |
uv_mapping TEXTURE | texture { uv_mapping TEXTURE_BODY }

Quick Reference Contents

Material

Group together surface textures and interior properties:
MATERIAL:
material { [MATERIAL_IDENTIFIER] [MATERIAL_ITEM ...] }
MATERIAL_ITEMS:
TEXTURE | INTERIOR_TEXTURE | INTERIOR | TRANSFORMATION

Quick Reference Contents

Interior

Describe the interior of an object:
INTERIOR:
Jump to SDL
interior { [INTERIOR_IDENTIFIER] [INTERIOR_ITEMS] }
INTERIOR_ITEMS:
[ior FLOAT] & [dispersion FLOAT] & [dispersion_samples INT] & [caustics FLOAT] & [fade_distance FLOAT] & [fade_power FLOAT] & [fade_color COLOR] & [MEDIA...]

Quick Reference Contents

Interior Texture

Describe the interior surface of an object:
INTERIOR_TEXTURE:
interior_texture { TEXTURE_BODY }

Quick Reference Contents

Texture

Describe the surface of an object
TEXTURE:
PLAIN_TEXTURE | LAYERED_TEXTURE | PATTERNED_TEXTURE

Quick Reference Contents

Plain Texture

Describe a texture consisting of a single pigment, normal and finish:
PLAIN_TEXTURE:
texture { PLAIN_TEXTURE_BODY }
PLAIN_TEXTURE_BODY:
[PLAIN_TEXTURE_IDENT] [PNF_IDENTIFIERS] [PNF_ITEMS]
PNF_IDENTIFIERS:
[PIGMENT_IDENTIFIER] & [NORMAL_IDENTIFIER] & [FINISH_IDENTIFIER]
PNF_ITEMS:
[PIGMENT] & [NORMAL] & [FINISH] & [TRANSFORMATION...]

Quick Reference Contents

Layered Texture

Describe a texture consisting of two or more semi-transparent layers:
LAYERED_TEXTURE:
Jump to SDL
texture { LAYERED_TEXTURE_IDENT } |
PLAIN_TEXTURE PLAIN_TEXTURE...

Quick Reference Contents

Patterned Texture

Describe a texture using a pattern or blending function:
PATTERNED_TEXTURE:
Jump to SDL
texture { PATTERNED_TEXTURE_BODY }
PATTERNED_TEXTURE_BODY:
PATTERNED_TEXTURE_IDENT [TRANSFORMATION...] | TEXTURE_PATTERN [PATTERN_MODIFIERS] | MATERIAL_MAP [TRANSFORMATION...]
TEXTURE_PATTERN:
TEXTURE_LIST_PATTERN | MAP_PATTERN TEXTURE_MAP
TEXTURE_LIST_PATTERN:
brick TEXTURE, TEXTURE [BRICK_ITEMS] |
checker TEXTURE, TEXTURE |
hexagon TEXTURE, TEXTURE, TEXTURE |
object { LIST_OBJECT TEXTURE, TEXTURE }
square TEXTURE, TEXTURE, TEXTURE, TEXTURE |
tiling [PATTERN_NUMBER] [TEXTURE_MAP] |
triangular TEXTURE, TEXTURE, TEXTURE, TEXTURE, TEXTURE, TEXTURE

BRICK_ITEMS:

[brick_size VECTOR] & [mortar FLOAT]

LIST_OBJECT:

UNTEXTURED_SOLID_OBJECT | UNTEXTURED_SOLID_OBJECT_IDENT
TEXTURE_MAP:
texture_map { TEXTURE_MAP_BODY } [BLEND_MAP_MODIFIERS]
TEXTURE_MAP_BODY:
TEXTURE_MAP_IDENTIFIER | TEXTURE_MAP_ENTRY...
There may be from 2 to 256 map entries.
TEXTURE_MAP_ENTRY:
[ FLOAT TEXTURE_BODY ]
The brackets here are part of the map entry.
TEXTURE_BODY:
PLAIN_TEXTURE_BODY | LAYERED_TEXTURE_IDENT | PATTERNED_TEXTURE_BODY
MATERIAL_MAP:
material_map { BITMAP_IMAGE [BITMAP_MODIFIERS] TEXTURE... }

Quick Reference Contents

Pigment

Describe a color or pattern of colors for a texture:
PIGMENT:
Jump to SDL
pigment { PIGMENT_BODY }
PIGMENT_BODY:
[PIGMENT_IDENTIFIER] [PIGMENT_TYPE] [PIGMENT_MODIFIERS] [PAVEMENT_MODIFIERS]
PIGMENT_TYPE:
COLOR | COLOR_LIST_PATTERN | PIGMENT_LIST_PATTERN | IMAGE_MAP | MAP_PATTERN [COLOR_MAP] | MAP_PATTERN PIGMENT_MAP
COLOR_LIST_PATTERN:
brick [COLOR [, COLOR]] [BRICK_ITEMS] |
checker [COLOR [, COLOR]] |
hexagon [COLOR [, COLOR [, COLOR]]] |
object { LIST_OBJECT [COLOR [, COLOR]] } |
square [COLOR_1 [, COLOR_2 [, COLOR_3 [, COLOR_4]]]] |
tiling [PATTERN_NUMBER] [COLOR_MAP] |
triangular [COLOR_1 [, COLOR_2 [, COLOR_3 [, COLOR_4 [, COLOR_5 [, COLOR_6]]]]]]
PIGMENT_LIST_PATTERN:
brick PIGMENT, PIGMENT [BRICK_ITEMS] |
checker PIGMENT, PIGMENT |
hexagon PIGMENT, PIGMENT, PIGMENT |
object { LIST_OBJECT PIGMENT, PIGMENT } |
square [COLOR_1 [, COLOR_2 [, COLOR_3 [, COLOR_4]]]] |
tiling [PATTERN_NUMBER] [PIGMENT_MAP] |
triangular [COLOR_1 [, COLOR_2 [, COLOR_3 [, COLOR_4 [, COLOR_5 [, COLOR_6]]]]]]
IMAGE_MAP:
image_map {BITMAP_IMAGE [IMAGE_MAP_MODIFIER...] [BITMAP_MODIFIERS] }
IMAGE_MAP_MODIFIER:
filter I_PALETTE, F_AMOUNT | filter all F_AMOUNT | transmit I_PALETTE, F_AMOUNT | transmit all F_AMOUNT
COLOR_MAP:
color_map { COLOR_MAP_BODY } [BLEND_MAP_MODIFIERS] |
colour_map { COLOR_MAP_BODY } [BLEND_MAP_MODIFIERS]
COLOR_MAP_BODY:
COLOR_MAP_IDENTIFIER | COLOR_MAP_ENTRY...
There may be from 2 to 256 map entries.
COLOR_MAP_ENTRY:
[ FLOAT COLOR ]
The brackets here are part of the map entry.
PATTERN_NUMBER:
[ INT ]
1 of 24 different patterns.
PIGMENT_MAP:
pigment_map { PIGMENT_MAP_BODY } [BLEND_MAP_MODIFIERS]
PIGMENT_MAP_BODY:
PIGMENT_MAP_IDENTIFIER | PIGMENT_MAP_ENTRY...
There may be from 2 to 256 map entries.
PIGMENT_MAP_ENTRY:
[ FLOAT PIGMENT_BODY ]
The brackets here are part of the map entry.
PAVEMENT_MODIFIERS:
Jump to SDL
pavement number_of_sides SIDES_VALUE | number_of_tiles TILES_VALUE | pattern PATTERN_VALUE | exterior EXTERIOR_VALUE | interior INTERIOR_VALUE | form FORM_VALUE | PATTERN_MODIFIERS
PIGMENT_MODIFIERS:
[QUICK_COLOR] & [PATTERN_MODIFIERS]
QUICK_COLOR:
quick_color COLOR | quick_colour COLOR

Quick Reference Contents


Finite Patch Objects Normal


This document is protected, so submissions, corrections and discussions should be held on this documents talk page.

Personal tools
Variants
Actions
Content
Other Pages
Toolbox