| POV-Ray for Unix version 3.7 | ||||
|
|
||||
| Home | POV-Ray for Unix | POV-Ray Tutorial | POV-Ray Reference | |
This is a consolidation of the entire syntax for the POV-Ray's Scene Description Language. Note that the syntax conventions used here are slightly different than those used in the user documentation.
The following syntax conventions are used:
ITEM[ITEM]ITEM...[ITEM...]ITEM ITEMITEM | ITEMITEM & ITEM Juxtaposition has precedence over the pipe or ampersand. In the following example, you would select one of the keyword and vector pairs. For that last pair, the keyword itself is optional.
rgb 3D_VECTOR | rgbf 4D_VECTOR | rgbt 4D_VECTOR | [rgbft] 5D_VECTOR
Some item names are simply descriptive in nature. An indication of the item's type is given by a prefix on the item name, as follows:
F_I_V_V4_ Note: This document provides only the syntax of the Scene Description Language (SDL). The intent is to provide a single reference for all statements and keywords. It does not provide definitions for the numerous keywords nor explain their usage.
SCENE_ITEM...LANGUAGE_DIRECTIVE | CAMERA | LIGHT | OBJECT | ATMOSPHERIC_EFFECT | GLOBAL_SETTINGSNUMERIC_TERM [SIGN NUMERIC_TERM]...+ | -NUMERIC_FACTOR [MULT NUMERIC_FACTOR]...* | /FLOAT_LITERAL | FLOAT_IDENTIFIER | SIGN NUMERIC_EXPRESSION | FLOAT_FUNCTION | FLOAT_BUILT_IN_IDENT |
( FULL_EXPRESSION ) | ! NUMERIC_EXPRESSION | VECTOR.DOT_ITEM | FLOAT_FUNCTION_INVOCATION[DIGIT...][.]DIGIT...[EXP[SIGN]DIGIT...]0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9e | Eabs (FLOAT) | acos (FLOAT) | acosh (FLOAT) | asc (STRING) | asin (FLOAT) | asinh (FLOAT) |
atan (FLOAT) | atanh (FLOAT) | atan2 (FLOAT,FLOAT) | ceil (FLOAT) | cos (FLOAT) |
cosh (FLOAT) | defined (IDENTIFIER) | degrees (FLOAT) | dimensions (ARRAY_IDENTIFIER) |
dimension_size (ARRAY_IDENTIFIER,INT) | div (FLOAT,FLOAT) | exp (FLOAT) |
file_exists (STRING) | floor (FLOAT) | int (FLOAT) | inside (SOLID_OBJECT_IDENT, VECTOR) | ln (FLOAT) | log (FLOAT) |
max (FLOAT,FLOAT[,FLOAT]...) | min (FLOAT,FLOAT[,FLOAT]...) | mod (FLOAT,FLOAT) | pow (FLOAT,FLOAT) |
radians (FLOAT) | rand (FLOAT) | seed (FLOAT) | select (FLOAT,FLOAT,FLOAT,[FLOAT]) | sin (FLOAT) | sinh (FLOAT) | sqrt (FLOAT) |
strcmp (STRING,STRING) | strlen (STRING) | tan (FLOAT) | tanh (FLOAT) | val (STRING) |
vdot (VECTOR,VECTOR) | vlength (VECTOR)BOOLEAN_KEYWORD | clock | clock_delta | clock_on | final_clock | final_frame |
frame_number | image_height | image_width | initial_clock | initial_frame | pi | versiontrue | yes | on | false | no | offLOGICAL_EXPRESSION [? FULL_EXPRESSION : FULL_EXPRESSION]REL_TERM [LOGICAL_OPERATOR REL_TERM]...& | |FLOAT [REL_OPERATOR FLOAT]...< | <= | = | >= | > | !=x | y | z | t | u | v | red | green | blue | filter | transmit | grayFLOATBOOLEAN_KEYWORD | LOGICAL_EXPRESSIONVECTOR_TERM [SIGN VECTOR_TERM]...VECTOR_EXPRESSION [MULT VECTOR_EXPRESSION]...VECTOR_LITERAL | VECTOR_IDENTIFIER | SIGN VECTOR_EXPRESSION | VECTOR_FUNCTION | VECTOR_BUILT_IN_IDENT |
! VECTOR_EXPRESSION | FLOAT |
VECTOR_FUNCTION_INVOCATION |
COLOR_FUNCTION_INVOCATION |
SPLINE_INVOCATION< FLOAT, FLOAT [, FLOAT [, FLOAT [, FLOAT ]]] >min_extent (OBJECT_IDENTIFIER) | max_extent (OBJECT_IDENTIFIER) |
trace (OBJECT_IDENTIFIER,VECTOR,VECTOR[,VECTOR_IDENTIFIER]) |
vaxis_rotate (VECTOR,VECTOR,FLOAT) | vcross (VECTOR,VECTOR) | vrotate (VECTOR,VECTOR) |
vnormalize (VECTOR) | vturbulence (FLOAT,FLOAT,FLOAT,VECTOR)x | y | z | t | u | v[color] COLOR_BODY | colour COLOR_BODYCOLOR_VECTOR | COLOR_KEYWORD_GROUP | COLOR_IDENTIFIERrgb 3D_VECTOR | rgbf 4D_VECTOR | rgbt 4D_VECTOR | [rgbft] 5D_VECTOR | srgb 3D_VECTOR | srgbf 4D_VECTOR | srgbt 4D_VECTOR | srgbft 5D_VECTOR[COLOR_IDENTIFIER] COLOR_KEYWORD_ITEMS[red FLOAT] & [green FLOAT] & [blue FLOAT] & [filter FLOAT] & [transmit FLOAT]FLOAT_USER_FUNCTION | VECTOR_USER_FUNCTION | COLOR_USER_FUNCTIONfunction { FN_FLOAT } | function (IDENT_LIST) { FN_FLOAT } | function { pattern { PATTERN [PATTERN_MODIFIERS]} }IDENT_ITEM [, IDENT_LIST]x | y | z | u | v | PARAM_IDENTIFIERMAP_PATTERN | brick [BRICK_ITEM] | checker | hexagon | object { LIST_OBJECT }function { SPECIAL_VECTOR_FUNCTION }TRANSFORM | SPLINEfunction { PIGMENT }LOGIC_AND [OR LOGIC_AND]|REL_TERM [AND REL_TERM]&TERM [REL_OPERATOR TERM]< | <= | = | >= | > | !=FACTOR [SIGN FACTOR]+ | -EXPRESSION [MULT EXPRESSION]* | /FLOAT_LITERAL | FLOAT_IDENTIFIER | FN_FLOAT_FUNCTION | FLOAT_BUILT_IN_IDENT |
( FN_FLOAT ) | IDENT_ITEM | SIGN EXPRESSION |
VECTOR_FUNCTION_INVOCATION.FN_DOT_ITEM | COLOR_FUNCTION_INVOCATION.FN_DOT_ITEM |
FLOAT_FUNCTION_INVOCATIONDOT_ITEM | hfabs (FN_FLOAT) | acos (FN_FLOAT)
| acosh (FN_FLOAT) |
asin (FN_FLOAT) | asinh (FN_FLOAT) |
atan (FN_FLOAT) | atanh (FN_FLOAT) |
atan2 (FN_FLOAT,FN_FLOAT) | ceil (FN_FLOAT) | cos (FN_FLOAT) | cosh (FN_FLOAT) | degrees (FN_FLOAT) | exp (FN_FLOAT) |
floor (FN_FLOAT) | int (FN_FLOAT) | ln (FN_FLOAT) | log (FN_FLOAT) | max (FN_FLOAT,FN_FLOAT[,FN_FLOAT]...) |
min (FN_FLOAT,FN_FLOAT[,FN_FLOAT]...) | mod (FN_FLOAT,FN_FLOAT) | pow (FN_FLOAT,FN_FLOAT) | prod (IDENTIFIER, FN_FLOAT, FN_FLOAT, FN_FLOAT) | radians (FN_FLOAT) | sin (FN_FLOAT) | sinh (FN_FLOAT) | sqrt (FN_FLOAT) | sum (IDENTIFIER, FN_FLOAT, FN_FLOAT, FN_FLOAT) |tan (FN_FLOAT) |
tanh (FN_FLOAT) | select (FN_FLOAT,FN_FLOAT,FN_FLOAT [,FN_FLOAT])#declare FLOAT_FUNCTION_IDENTIFIER = FLOAT_USER_FUNCTION |
#local FLOAT_FUNCTION_IDENTIFIER = FLOAT_USER_FUNCTION |
#declare VECTOR_FUNCTION_IDENTIFIER = VECTOR_USER_FUNCTION |
#local VECTOR_FUNCTION_IDENTIFIER = VECTOR_USER_FUNCTION |
#declare COLOR_FUNCTION_IDENTIFIER = COLOR_USER_FUNCTION |
#local COLOR_FUNCTION_IDENTIFIER = COLOR_USER_FUNCTIONFLOAT_FUNCTION_IDENTIFIER (FN_PARAM_LIST)VECTOR_FUNCTION_IDENTIFIER (FN_PARAM_LIST)COLOR_FUNCTION_IDENTIFIER (FN_PARAM_LIST)FN_PARAM_ITEM [, FN_PARAM_LIST]x | y | z | u | v | FLOATSTRING_FUNCTION | STRING_IDENTIFIER | STRING_LITERALchr (INT) | concat (STRING,STRING[,STRING]...) | str (FLOAT,INT,INT) | strlwr (STRING) |
strupr (STRING) | substr (STRING,INT,INT) | vstr (INT,VECTOR,STRING,INT,INT)QUOTE [CHARACTER...] QUOTE"\a - alarm\b - backspace\f - form feed\n - new line\r - carriage return\t - horizontal tab\uNNNN - unicode character four-digit code\v - vertical tab\\ - backslash\' - single quote\" - double quoteSTRING_LITERAL [STRING_REL_OPERATOR STRING_LITERAL]...< | <= | = | >= | > | !=#declare ARRAY_IDENTIFIER = array DIMENSION... [ARRAY_INITIALIZER] |
#local ARRAY_IDENTIFIER = array DIMENSION... [ARRAY_INITIALIZER][ INT ]{ ARRAY_INITIALIZER [, ARRAY_INITIALIZER]... } |
{ RVALUE [, RVALUE]... }#declare ARRAY_REFERENCE = RVALUE [;] |
#local ARRAY_REFERENCE = RVALUE [;]ARRAY_IDENTIFIER ELEMENT...[ INT ]spline { SPLINE_ITEMS }[SPLINE_TYPE] PATH_LIST | SPLINE_IDENTIFIER [SPLINE_TYPE][PATH_LIST]linear_spline | quadratic_spline | cubic_spline | natural_splineFLOAT, VECTOR [[,] PATH_LIST]SPLINE_IDENTIFIER ( FLOAT [, SPLINE_TYPE] )INCLUDE_DIRECTIVE | IDENTIFIER_DECLARATION | UNDEF_DIRECTIVE | FOPEN_DIRECTIVE | FCLOSE_DIRECTIVE | READ_DIRECTIVE | WRITE_DIRECTIVE | DEFAULT_DIRECTIVE | VERSION_DIRECTIVE | IF_DIRECTIVE | IFDEF_DIRECTIVE | IFNDEF_DIRECTIVE | SWITCH_DIRECTIVE | WHILE_DIRECTIVE | FOR_DIRECTIVE | TEXT_STREAM_DIRECTIVE | MACRO_DEFINITION#include FILE_NAMESTRING#declare [deprecated] IDENTIFIER = RVALUE [;] |
#local [deprecated] IDENTIFIER = RVALUE [;]FLOAT | VECTOR | COLOR | USER_FUNCTION | STRING | ARRAY_REFERENCE | SPLINE | TRANSFORM | CAMERA | LIGHT | OBJECT | MATERIAL |
INTERIOR | TEXTURE | TEXTURE_MAP | PIGMENT | COLOR_MAP | PIGMENT_MAP | NORMAL | SLOPE_MAP | NORMAL_MAP | FINISH | MEDIA | DENSITY |
DENSITY_MAP | FOG | RAINBOW | SKY_SPHERE#undef IDENTIFIER#fopen FILE_HANDLE_IDENTIFIER FILE_NAME OPEN_TYPEread | write | append#fclose FILE_HANDLE_IDENTIFIER#read ( FILE_HANDLE_IDENTIFIER, DATA_IDENTIFIER [, DATA_IDENTIFIER]... )UNDECLARED_IDENTIFIER | FLOAT_IDENTIFIER | VECTOR_IDENTIFIER | STRING_IDENTIFIER | ARRAY_REFERENCE#write ( FILE_HANDLE_IDENTIFIER, [BINARY_WORD_TYPE,] DATA_ITEM [, DATA_ITEM]... )uint8 | sint8 | uint16be | uint16le | sint16be | sint16le | sint32be | sint32le
FLOAT | VECTOR | STRING#default { DEFAULT_ITEM }PLAIN_TEXTURE | PIGMENT | NORMAL | FINISH#version FLOAT;#if ( BOOL ) TOKENS [#elseif ( BOOL ) TOKENS] [#else TOKENS] #end#ifdef ( IDENTIFIER ) TOKENS [#elseif ( IDENTIFER ) TOKENS] [#else TOKENS] #end#ifndef ( IDENTIFIER ) TOKENS [#elseif ( IDENTIFER ) TOKENS] [#else TOKENS] #end#switch ( FLOAT ) SWITCH_CLAUSE... [#else TOKENS] #end#case ( FLOAT ) TOKENS [#break] |
#range ( F_LOW, F_HIGH ) TOKENS [#break]#while ( LOGICAL_EXPRESSION ) TOKENS [#break] #end#for (Identifier, Start, End [, Step]) TOKENS [#break] #end#debug STRING | #error STRING | #warning STRING#macro MACRO_IDENTIFIER ( [PARAM_IDENTIFIER [, PARAM_IDENTIFIER]...] ) TOKENS [#break] #endMACRO_IDENTIFIER ( [ACTUAL_PARAM [, ACTUAL_PARAM]...] )IDENTIFIER | RVALUEIDENTIFIER_DECLARATION | UNDEF_DIRECTIVE | READ_DIRECTIVE | WRITE_DIRECTIVE | IF_DIRECTIVE |
IFDEF_DIRECTIVE | IFNDEF_DIRECTIVE | SWITCH_DIRECTIVE | WHILE_DIRECTIVE | TEXT_STREAM_DIRECTIVErotate VECTOR | scale VECTOR | translate VECTOR | TRANSFORM | MATRIXtransform TRANSFORM_IDENTIFIER | transform { [TRANSFORM_ITEM...] }TRANSFORM_IDENTIFIER | TRANSFORMATION | inversematrix < F_VAL00, F_VAL01, F_VAL02, F_VAL10, F_VAL11, F_VAL12, F_VAL20, F_VAL21, F_VAL22, F_VAL30, F_VAL31, F_VAL32 >camera { [CAMERA_TYPE] [CAMERA_ITEMS] [CAMERA_MODIFIERS] } |camera { CAMERA_IDENTIFIER [TANSFORMATIONS ...] }perspective | orthographic | mesh_camera {MESHCAM_MODIFIERS} location direction smooth | fisheye | ultra_wide_angle | omnimax | panoramic | spherical | cylinder CYLINDER_TYPE1 | 2 | 3 | 4[location VECTOR] & [right VECTOR] & [up VECTOR] & [direction VECTOR] & [sky VECTOR] [angle [angle F_HORIZONTAL] [,F_VERTICAL]] & [look_at VECTOR] & [FOCAL_BLUR] & [NORMAL] & [TRANSFORMATION...]aperture FLOAT & blur_samples [MIN_SAMPLES,] MAX_SAMPLES & [focal_point VECTOR] & [confidence FLOAT] & [variance FLOAT] & [bokeh {pigment {BOKEH}}]RAYS_PER_PIXEL & DISTRIBUTION_TYPE & [MAX_DISTANCE] & MESH_OBJECT & [MESH_OBJECT...]FLOAT > 10 | 1 | 2 | 3FLOAT > EPSILONINTINTCOLOR_VECTOR in the range of <0,0,0> ... <1,1,0>LIGHT_SOURCE | LIGHT_GROUPlight_source { V_LOCATION, COLOR [LIGHT_SOURCE_ITEMS] }[LIGHT_TYPE] & [AREA_LIGHT_ITEMS] & [LIGHT_MODIFIERS]spotlight [SPOTLIGHT_ITEMS] | cylinder [SPOTLIGHT_ITEMS][radius FLOAT] & [falloff FLOAT] & [tightness FLOAT] & [point_at VECTOR]area_light V_AXIS1, V_AXIS2, I_SIZE1, I_SIZE2 [AREA_LIGHT_MODIFIERS][adaptive INT] & [jitter] & [circular] & [orient] & [area_illumination [BOOL]][LIGHT_PHOTONS] & [looks_like { OBJECT }] & [TRANSFORMATION...] & [fade_distance FLOAT] &[fade_power FLOAT] & [media_attenuation [BOOL]] & [media_interaction [BOOL]] &[shadowless] & [projected_through { OBJECT_IDENTIFIER }] & [parallel [point_at VECTOR]]photons { LIGHT_PHOTON_ITEMS }[refraction BOOL] & [reflection BOOL] & [area_light]light_group { LIGHT_GROUP_ITEM... [LIGHT_GROUP_MODIFIERS] }LIGHT_SOURCE | OBJECT | LIGHT_GROUP[global_lights BOOL] & [TRANSFORMATION...]FINITE_SOLID_OBJECT | FINITE_PATCH_OBJECT | INFINITE_SOLID_OBJECT | ISOSURFACE | PARAMETRIC | CSG_OBJECT | OBJECT_STATEMENTobject { OBJECT_IDENTIFIER [OBJECT_MODIFIERS] }BLOB | BOX | CONE | CYLINDER | HEIGHT_FIELD | JULIA_FRACTAL | LATHE | OVUS | PRISM | SPHERE | SPHERE_SWEEP | SUPERELLIPSOID | SOR | TEXT | TORUSblob { [threshold FLOAT] BLOB_ITEM... [BLOB_MODIFIERS] }sphere { V_CENTER, F_RADIUS, [strength] F_STRENGTH [COMPONENT_MODIFIERS] } |
cylinder { V_END1, V_END2, F_RADIUS, [strength] F_STRENGTH [COMPONENT_MODIFIERS] }[TEXTURE] & [PIGMENT] & [NORMAL] & [FINISH] & [TRANSFORMATION...][hierarchy [BOOL]] & [sturm [BOOL]] & [OBJECT_MODIFIERS]box { V_CORNER1, V_CORNER2 [BOX_MODIFIERS] }[UV_MAPPING] & [OBJECT_MODIFIERS]cone { V_BASE_CENTER, F_BASE_RADIUS, V_CAP_CENTER, F_CAP_RADIUS [open] [OBJECT_MODIFIERS] }cylinder { V_BASE_CENTER, V_CAP_CENTER, F_RADIUS [open] [OBJECT_MODIFIERS] }height_field { HF_IMAGE [HF_MODIFIERS] }FUNCTION_IMAGE | [HF_TYPE] FILE_NAME [gamma HF_GAMMA] [premultiplied BOOL]exr | gif | hdr | iff | jpeg | pgm | png | ppm | sys | tga | tiffFLOAT | srgb[hierarchy [BOOL]] & [smooth] & [water_level FLOAT] & [OBJECT_MODIFIERS]julia_fractal { 4D_VECTOR [JF_ITEMS] [OBJECT_MODIFIERS] }[ALGEBRA_ITEM] & [max_iteration INT] & [precision FLOAT] & [slice V4_NORMAL, F_DISTANCE]quaternion [QUATER_FUNCTION] | hypercomplex [HYPER_FUNCTION]sqr | cubesqr | cube | exp | reciprocal | sin | asin | sinh | asinh | cos | acos | cosh | acosh | tan | atan | tanh | atanh | ln | pwr (FLOAT,FLOAT)lathe { [LATHE_SPLINE_TYPE] I_NUM_POINTS, POINT_LIST [LATHE_MODIFIERS] }linear_spline | quadratic_spline | cubic_spline | bezier_spline2D_VECTOR [, 2D_VECTOR]...[sturm [BOOL]] & [UV_MAPPING] & [OBJECT_MODIFIERS]ovus { BOTTOM_RADIUS, TOP_RADIUS [OBJECT_MODIFIERS] }prism { [PRISM_ITEMS] F_HEIGHT1, F_HEIGHT2, I_NUM_POINTS, POINT_LIST [open] [PRISM_MODIFIERS] }[PRISM_SPLINE_TYPE] & [PRISM_SWEEP_TYPE]linear_spline | quadratic_spline | cubic_spline | bezier_splinelinear_sweep | conic_sweep[sturm [BOOL]] & [OBJECT_MODIFIERS]sphere { V_CENTER, F_RADIUS [SPHERE_MODIFIERS] }[UV_MAPPING] & [OBJECT_MODIFIERS]sphere_sweep { SWEEP_SPLINE_TYPE I_NUM_SPHERES, SPHERE_LIST [tolerance F_DEPTH_TOLERANCE] [OBJECT_MODIFIERS] }linear_spline | b_spline | cubic_splineV_CENTER, F_RADIUS [, SPHERE_LIST]superellipsoid { < FLOAT, FLOAT > [OBJECT_MODIFIERS] }sor { I_NUM_POINTS, POINT_LIST [open] [SOR_MODIFIERS] }[sturm [BOOL]] & [UV_MAPPING] & [OBJECT_MODIFIERS]text { ttf FILE_NAME STRING F_THICKNESS, V_OFFSET [OBJECT_MODIFIERS] }torus { F_MAJOR_RADIUS, F_MINOR_RADIUS [TORUS_MODIFIERS] }[sturm [BOOL]] & [UV_MAPPING] & [OBJECT_MODIFIERS]BICUBIC_PATCH | DISC | MESH | MESH2 | POLYGON | TRIANGLE | SMOOTH_TRIANGLEbicubic_patch { PATCH_ITEMS [PATCH_UV_VECTORS] CONTROL_POINTS [BICUBIC_PATCH_MODIFIERS] }type PATCH_TYPE & [u_steps INT] & [v_steps INT] & [flatness FLOAT]0 | 1uv_vectors V2_CORNER1, V2_CORNER2, V2_CORNER3, V2_CORNER4[UV_MAPPING] & [OBJECT_MODIFIERS]disc { V_CENTER, V_NORMAL, F_RADIUS [, F_HOLE_RADIUS] [OBJECT_MODIFIERS] }mesh { MESH_TRIANGLE... [MESH_MODIFIERS] }triangle { V_CORNER1, V_CORNER2, V_CORNER3 [MESH_UV_VECTORS] [MESH_TEXTURE] } |
smooth_triangle { V_CORNER1, V_NORMAL1, V_CORNER2, V_NORMAL2, V_CORNER3, V_NORMAL3 [MESH_UV_VECTORS] [MESH_TEXTURE] }uv_vectors V2_CORNER1, V2_CORNER2, V2_CORNER3texture { TEXTURE_IDENTIFIER } |
texture_list { TEXTURE_IDENTIFIER TEXTURE_IDENTIFIER TEXTURE_IDENTIFIER }[inside_vector V_DIRECTION] & [hierarchy [BOOL]] & [UV_MAPPING] & [OBJECT_MODIFIERS]mesh2 { MESH2_VECTORS [TEXTURE_LIST] MESH2_INDICES [MESH2_MODIFIERS] }VERTEX_VECTORS [NORMAL_VECTORS] [UV_VECTORS]vertex_vectors { I_NUM_VERTICES, VECTOR [, VECTOR]... }normal_vectors { I_NUM_NORMALS, VECTOR [, VECTOR]... }uv_vectors { I_NUM_UV_VECTORS, 2D_VECTOR [, 2D_VECTOR]... }texture_list { I_NUM_TEXTURES, TEXTURE [, TEXTURE]... }FACE_INDICES [NORMAL_INDICES] [UV_INDICES]face_indices { I_NUM_FACES, FACE_INDICES_ITEM [, FACE_INDICES_ITEM]... }VECTOR [, I_TEXTURE_INDEX [, I_TEXTURE_INDEX, I_TEXTURE_INDEX ]]normal_indices { I_NUM_FACES, VECTOR [, VECTOR]... }uv_indices { I_NUM_FACES, VECTOR [, VECTOR]... }[inside_vector V_DIRECTION] & [UV_MAPPING] & [OBJECT_MODIFIERS]polygon { I_NUM_POINTS, V_POINT [, V_POINT]... [OBJECT_MODIFIERS] }triangle { V_CORNER1, V_CORNER2, V_CORNER3 [OBJECT_MODIFIERS] }smooth_triangle { V_CORNER1, V_NORMAL1, V_CORNER2, V_NORMAL2, V_CORNER3, V_NORMAL3 [OBJECT_MODIFIERS] }PLANE | POLY | CUBIC | QUARTIC | QUADRICplane { V_NORMAL, F_DISTANCE [OBJECT_MODIFIERS] }poly { ORDER, < POLY_COEFFICIENTS > [POLY_MODIFIERS] }((ORDER+1)*(ORDER+2)*(ORDER+3))/6.[sturm [BOOL]] & [OBJECT_MODIFIERS]cubic { < CUBIC_COEFFICIENTS > [POLY_MODIFIERS] }quartic { < QUARTIC_COEFFICIENTS > [POLY_MODIFIERS] }quadric { < FLOAT, FLOAT, FLOAT >, < FLOAT, FLOAT, FLOAT >, < FLOAT, FLOAT, FLOAT >, FLOAT [OBJECT_MODIFIERS] }isosurface { FLOAT_USER_FUNCTION [ISOSURFACE_ITEMS] [OBJECT_MODIFIERS] }[contained_by { CONTAINER }] & [threshold FLOAT] & [accuracy FLOAT] & [max_gradient FLOAT [evaluate F_MIN_ESTIMATE, F_MAX_ESTIMATE, F_ATTENUATION]] & [open] & [INTERSECTION_LIMIT]sphere { V_CENTER, F_RADIUS } | box { V_CORNER1, V_CORNER2 }max_trace INT | all_intersectionsparametric { FLOAT_USER_FUNCTION, FLOAT_USER_FUNCTION, FLOAT_USER_FUNCTION 2D_VECTOR, 2D_VECTOR [PARAMETRIC_ITEMS] [UV_MAPPING] & [OBJECT_MODIFIERS] }[contained_by { CONTAINER }] & [max_gradient FLOAT] & [accuracy FLOAT] & [precompute I_DEPTH, x, y, z]sphere { V_CENTER, F_RADIUS } | box { V_CORNER1, V_CORNER2 }UNION | INTERSECTION | DIFFERENCE | MERGEunion { UNION_OBJECT UNION_OBJECT... [UNION_MODIFIERS] }OBJECT | LIGHT[split_union BOOL] & [OBJECT_MODIFIERS]intersection { SOLID_OBJECT SOLID_OBJECT... [INTERSECTION_MODIFIERS] }FINITE_SOLID_OBJECT | INFINITE_SOLID_OBJECT | ISOSURFACE | CSG_OBJECT[cutaway_textures] & [OBJECT_MODIFIERS]difference { SOLID_OBJECT SOLID_OBJECT... [DIFFERENCE_MODIFIERS] }[cutaway_textures] & [OBJECT_MODIFIERS]merge { SOLID_OBJECT SOLID_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 }]photons { OBJECT_PHOTON_ITEMS }[target [F_SPACING_MULT]] & [refraction BOOL] & [reflection BOOL] & [collect BOOL] & [pass_through [BOOL]]clipped_by { UNTEXTURED_SOLID_OBJECT... } |
clipped_by { bounded_by }FINITE_SOLID_OBJECT | INFINITE_SOLID_OBJECTbounded_by { UNTEXTURED_SOLID_OBJECT... } |
bounded_by { clipped_by }uv_mapping PIGMENT | pigment { uv_mapping PIGMENT_BODY } |
uv_mapping NORMAL | normal { uv_mapping NORMAL_BODY } |
uv_mapping TEXTURE | texture { uv_mapping TEXTURE_BODY }material { [MATERIAL_IDENTIFIER] [MATERIAL_ITEM ...] }TEXTURE | INTERIOR_TEXTURE | INTERIOR | TRANSFORMATIONinterior { [INTERIOR_IDENTIFIER] [INTERIOR_ITEMS] }[ior FLOAT] & [dispersion FLOAT] & [dispersion_samples INT] & [caustics FLOAT] & [fade_distance FLOAT] & [fade_power FLOAT] & [fade_color COLOR] & [MEDIA...]interior_texture { TEXTURE_BODY }PLAIN_TEXTURE | LAYERED_TEXTURE | PATTERNED_TEXTUREtexture { PLAIN_TEXTURE_BODY }[PLAIN_TEXTURE_IDENT] [PNF_IDENTIFIERS] [PNF_ITEMS][PIGMENT_IDENTIFIER] & [NORMAL_IDENTIFIER] & [FINISH_IDENTIFIER][PIGMENT] & [NORMAL] & [FINISH] & [TRANSFORMATION...]texture { LAYERED_TEXTURE_IDENT } |
PLAIN_TEXTURE PLAIN_TEXTURE...texture { PATTERNED_TEXTURE_BODY }PATTERNED_TEXTURE_IDENT [TRANSFORMATION...] | TEXTURE_PATTERN [PATTERN_MODIFIERS] | MATERIAL_MAP [TRANSFORMATION...]TEXTURE_LIST_PATTERN | MAP_PATTERN TEXTURE_MAPbrick 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_size VECTOR] & [mortar FLOAT]UNTEXTURED_SOLID_OBJECT | UNTEXTURED_SOLID_OBJECT_IDENTtexture_map { TEXTURE_MAP_BODY } [BLEND_MAP_MODIFIERS]TEXTURE_MAP_IDENTIFIER | TEXTURE_MAP_ENTRY...[ FLOAT TEXTURE_BODY ]PLAIN_TEXTURE_BODY | LAYERED_TEXTURE_IDENT | PATTERNED_TEXTURE_BODYmaterial_map { BITMAP_IMAGE [BITMAP_MODIFIERS] TEXTURE... }pigment { PIGMENT_BODY }[PIGMENT_IDENTIFIER] [PIGMENT_TYPE] [PIGMENT_MODIFIERS] [PAVEMENT_MODIFIERS]COLOR | COLOR_LIST_PATTERN | PIGMENT_LIST_PATTERN | IMAGE_MAP | MAP_PATTERN [COLOR_MAP] | MAP_PATTERN PIGMENT_MAPbrick [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]]]]]]
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 {BITMAP_IMAGE [IMAGE_MAP_MODIFIER...] [BITMAP_MODIFIERS] }filter I_PALETTE, F_AMOUNT | filter all F_AMOUNT | transmit I_PALETTE, F_AMOUNT | transmit all F_AMOUNTcolor_map { COLOR_MAP_BODY } [BLEND_MAP_MODIFIERS] |
colour_map { COLOR_MAP_BODY } [BLEND_MAP_MODIFIERS]COLOR_MAP_IDENTIFIER | COLOR_MAP_ENTRY...[ FLOAT COLOR ][ INT ]pigment_map { PIGMENT_MAP_BODY } [BLEND_MAP_MODIFIERS]PIGMENT_MAP_IDENTIFIER | PIGMENT_MAP_ENTRY...[ FLOAT PIGMENT_BODY ]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[QUICK_COLOR] & [PATTERN_MODIFIERS]quick_color COLOR | quick_colour COLORnormal { NORMAL_BODY }[NORMAL_IDENTIFIER] [NORMAL_TYPE] [NORMAL_MODIFIERS]NORMAL_PATTERN | BUMP_MAPNORMAL_LIST_PATTERN |
MAP_PATTERN [F_DEPTH] [SLOPE_MAP] |
MAP_PATTERN NORMAL_MAPbrick NORMAL, NORMAL [BRICK_ITEMS] | brick [F_DEPTH] [BRICK_ITEMS] |
checker NORMAL, NORMAL | checker [F_DEPTH] |
hexagon NORMAL, NORMAL, NORMAL | hexagon [F_DEPTH] |
object { LIST_OBJECT NORMAL, NORMAL } | object { LIST_OBJECT } [F_DEPTH]normal_map { NORMAL_MAP_BODY } [BLEND_MAP_MODIFIERS]NORMAL_MAP_IDENTIFIER | NORMAL_MAP_ENTRY...[ FLOAT NORMAL_BODY ]slope_map { SLOPE_MAP_BODY } [BLEND_MAP_MODIFIERS]SLOPE_MAP_IDENTIFIER | SLOPE_MAP_ENTRY...[ FLOAT, < F_HEIGHT, F_SLOPE > ]bump_map { BITMAP_IMAGE [BUMP_MAP_MODIFIERS] }[BITMAP_MODIFIERS] & [BUMP_METHOD] & [bump_size FLOAT]use_index | use_color | use_colour[PATTERN_MODIFIERS] & [bump_size FLOAT] & [no_bump_scale [BOOL]] & [accuracy FLOAT]finish { [FINISH_IDENTIFIER] [FINISH_ITEMS] }[ambient COLOR] & [diffuse FLOAT [, FLOAT]] & [brilliance FLOAT] & [PHONG] & [SPECULAR] & [REFLECTION] & [IRID] & [crand FLOAT] & [SUBSURFACE] & [conserve_energy [BOOL]]phong FLOAT & [phong_size FLOAT] & [metallic [FLOAT]]specular FLOAT & [roughness FLOAT] & [metallic [FLOAT]]reflection COLOR [reflection_exponent FLOAT] |
reflection { [COLOR,] COLOR [REFLECTION_ITEMS] }[fresnel BOOL] & [falloff FLOAT] & [exponent FLOAT] & [metallic [FLOAT]]interior {ior FLOAT} in the object when fresnel is used.irid { F_AMOUNT [IRID_ITEMS] }[thickness FLOAT] & [turbulence FLOAT]subsurface { COLOR, COLOR }AGATE | aoi | average | boxed | bozo | bumps | cells | CRACKLE | cubic | cylindrical | DENSITY_FILE |
dents | FACETS | FRACTAL | function { FN_FLOAT } | gradient VECTOR | granite | IMAGE_PATTERN |
leopard | marble | onion | pigment_pattern { PIGMENT_BODY } | planar | QUILTED | radial |
ripples | SLOPE [SLOPE_EXTENSION] | spherical | spiral1 I_NUM_ARMS | spiral2 I_NUM_ARMS | spotted | waves |
wood | wrinklesagate [agate_turb FLOAT]crackle [CRACKLE_TYPES][form VECTOR] & [metric FLOAT] & [offset FLOAT] & [solid]density_file df3 FILE_NAME [interpolate DENSITY_INTERPOLATE]0 | 1 | 2facets FACETS_TYPEfacets can only be used as a normal pattern.coords F_SCALE | size F_SIZE_FACTORMANDELBROT_FRACTAL | JULIA_FRACTAL | MAGNET_MANDEL_FRACTAL | MAGNET_JULIA_FRACTALmandel I_ITERATIONS [exponent INT] [exterior EXTERIOR_TYPE, F_FACTOR] [interior INTERIOR_TYPE, F_FACTOR]julia V2_COMPLEX, I_ITERATIONS [exponent INT] [exterior EXTERIOR_TYPE, F_FACTOR] [interior INTERIOR_TYPE, F_FACTOR]magnet MAGNET_TYPE mandel I_ITERATIONS [exterior EXTERIOR_TYPE, F_FACTOR] [interior INTERIOR_TYPE, F_FACTOR]1 | 2magnet MAGNET_TYPE julia V2_COMPLEX, I_ITERATIONS [exterior EXTERIOR_TYPE, F_FACTOR] [interior INTERIOR_TYPE, F_FACTOR]0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 80 | 1 | 2 | 3 | 4 | 5 | 6image_pattern {BITMAP_IMAGE [IMAGE_PATTERN_MODIFIERS] }[BITMAP_MODIFIERS] & [use_alpha]quilted [control0 FLOAT] [control1 FLOAT]slope { V_DIRECTION [, F_LOW_SLOPE, F_HIGH_SLOPE ] [altitude VECTOR [, F_LOW_ALT, F_HIGH_ALT ]] }slope pattern does not work in media densities.slope { point_at REFERENCE_POINT [, F_LOW_SLOPE, F_HIGH_SLOPE ] }altitude keyword to be used.[TURBULENCE] & [WARP...] & [TRANSFORMATION...] & [noise_generator NG_TYPE]1 | 2 | 3turbulence VECTOR & [octaves INT] & [omega FLOAT] & [lambda FLOAT]warp { WARP_ITEM }REPEAT_WARP | BLACK_HOLE_WARP | TURBULENCE | CYLINDRICAL_WARP | SPHERICAL_WARP | TOROIDAL_WARP | PLANAR_WARP | cubicrepeat VECTOR [offset VECTOR] [flip VECTOR]black_hole V_LOCATION, F_RADIUS [BLACK_HOLE_ITEMS][strength FLOAT] & [falloff FLOAT] & [inverse] & [repeat VECTOR [turbulence VECTOR]]cylindrical [orientation VECTOR] [dist_exp FLOAT]spherical [orientation VECTOR] [dist_exp FLOAT]toroidal [orientation VECTOR] [dist_exp FLOAT] [major_radius FLOAT]planar [V_NORMAL, F_DISTANCE]ramp_wave | triangle_wave | sine_wave | scallop_wave | cubic_wave | poly_wave [F_EXPONENT]FUNCTION_IMAGE | BITMAP_TYPE FILE_NAME [gamma BITMAP_GAMMA] [premultiplied CAVEAT]
function I_WIDTH, I_HEIGHT { FUNCTION_IMAGE_BODY }PIGMENT | FN_FLOAT | pattern { PATTERN [PATTERN_MODIFIERS] }MAP_PATTERN | brick [BRICK_ITEMS] | checker | hexagon | object { LIST_OBJECT }exr | gif | hdr | iff | jpeg | pgm | png | ppm | sys | tga | tiffFLOAT | srgbBOOL argument. This option does NOT apply when using material_map.[once] & [map_type MAP_TYPE] & [interpolate INTERPOLATE_TYPE]0 | 1 | 2 | 52 | 3 | 4media { [MEDIA_IDENTIFIER] [MEDIA_ITEMS] }[method METHOD_TYPE] & [intervals INT] & [samples I_MIN, I_MAX] & [confidence FLOAT] & [variance FLOAT] & [ratio FLOAT] & [absorption COLOR] & [emission COLOR] & [aa_threshold FLOAT] & [aa_level INT] & [SCATTERING] & [DENSITY...] & [TRANSFORMATION...] & [collect BOOL]1 | 2 | 3scattering { SCATTERING_TYPE, COLOR [eccentricity FLOAT] [extinction FLOAT] }1 | 2 | 3 | 4 | 5density { DENSITY_BODY }[DENSITY_IDENTIFIER] [DENSITY_TYPE] [PATTERN_MODIFIERS]COLOR | COLOR_LIST_PATTERN | DENSITY_LIST_PATTERN | MAP_PATTERN [COLOR_MAP] | MAP_PATTERN DENSITY_MAPbrick DENSITY, DENSITY [BRICK_ITEMS] |
checker DENSITY, DENSITY |
hexagon DENSITY, DENSITY, DENSITY |
object { LIST_OBJECT DENSITY, DENSITY }density_map { DENSITY_MAP_BODY } [BLEND_MAP_MODIFIERS]DENSITY_MAP_IDENTIFIER | DENSITY_MAP_ENTRY...[ FLOAT DENSITY_BODY ]MEDIA | BACKGROUND | FOG | SKY_SPHERE | RAINBOWbackground { COLOR }CONSTANT_FOG | GROUND_FOGfog { [FOG_IDENTIFIER] [fog_type 1] FOG_ITEMS }distance FLOAT & COLOR & [TURBULENCE]] [turb_depth FLOATfog { [FOG_IDENTIFIER] fog_type 2 GROUND_FOG_ITEMS }FOG_ITEMS & fog_offset FLOAT & fog_alt FLOAT & [up VECTOR [TRANSFORMATION...]]sky_sphere { [SKY_SPHERE_IDENTIFIER] [SKY_SPHERE_ITEM...] }PIGMENT | TRANSFORMATIONrainbow { [RAINBOW_IDENTIFIER] [RAINBOW_ITEMS] }direction VECTOR & angle FLOAT & width FLOAT & distance FLOAT & COLOR_MAP & [jitter FLOAT] & [up VECTOR] & [arc_angle FLOAT] & [falloff_angle FLOAT]global_settings { GLOBAL_SETTING_ITEMS }[adc_bailout FLOAT] & [ambient_light COLOR] & [assumed_gamma GAMMA_VALUE] & [hf_gray_16 [BOOL]] & [irid_wavelength COLOR] & [charset GLOBAL_CHARSET] & [max_intersections INT] & [max_trace_level INT] & [mm_per_unit INT] & [number_of_waves INT] & [noise_generator NG_TYPE] & [subsurface {samples INT, INT}] & [RADIOSITY] & [PHOTONS]FLOAT | srgbascii | utf8 | sys1 | 2 | 3radiosity { [RADIOSITY_ITEMS] }[adc_bailout FLOAT] & [always_sample BOOL] & [brightness FLOAT] & [count INT[,INT]] & [error_bound FLOAT] & [gray_threshold FLOAT] & [low_error_factor FLOAT] & [max_sample FLOAT] & [maximum_reuse FLOAT] & [media BOOL] & [minimum_reuse FLOAT] & [nearest_count INT[,INT]] & [normal BOOL] & [pretrace_end FLOAT] & [pretrace_start FLOAT] & [recursion_limit INT]photons { PHOTON_QUANTITY [PHOTON_ITEMS] }spacing FLOAT | count INT[gather I_MIN, I_MAX] & [media I_MAX_STEPS [, F_FACTOR]] & [jitter FLOAT] & [max_trace_level INT] & [adc_bailout FLOAT] & [save_file FILE_NAME] & [load_file FILE_NAME] & [autostop FLOAT] & [expand_thresholds F_INCREASE, F_MIN] & [radius [FLOAT, FLOAT, FLOAT, FLOAT]]