## 3.8 Quick 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`
  An item not in brackets indicates that it is a required item.
`[ITEM]`
  Brackets surround an optional item. If brackets are part of the item, that is noted where applicable.
`ITEM...`
  An ellipsis indicates an item that may be used one or more times.
`[ITEM...]`
  An ellipsis within brackets indicates an item that may be used zero or more times.
`ITEM ITEM`
  Two or more juxtaposed items indicates that they should be used in the given order.
`ITEM | ITEM`
  A pipe separates two or more alternatives from which only one item should be used.
`ITEM & ITEM`
  An ampersand separates two or more items that may be used in any order.

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_`
  A FLOAT item
`I_`
  An INT item
`V_`
  A VECTOR item
`V4_`
  A 4-D VECTOR item

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.

Section Contents

- 3.8.1 Quick Reference Contents
- 3.8.2 The Scene
- 3.8.3 Language Basics
  - 3.8.3.1 Floats
  - 3.8.3.2 Vectors
  - 3.8.3.3 Colors
  - 3.8.3.4 User defined Functions
  - 3.8.3.5 Strings
  - 3.8.3.6 Arrays
  - 3.8.3.7 Splines
- 3.8.4 Language Directives
  - 3.8.4.1 File Inclusion
  - 3.8.4.2 Identifier Declaration
  - 3.8.4.3 File Input/Output
  - 3.8.4.4 Default Texture
  - 3.8.4.5 Version Identfier
  - 3.8.4.6 Control Flow Directives
  - 3.8.4.7 Message Streams
  - 3.8.4.8 Macro
  - 3.8.4.9 Embedded Directives
- 3.8.5 Transformations
- 3.8.6 Camera
- 3.8.7 Lights
  - 3.8.7.1 Lightgroup
- 3.8.8 Objects
  - 3.8.8.1 Finite Solid Objects
  - 3.8.8.2 Finite Patch Objects
  - 3.8.8.3 Infinite Solid Objects
  - 3.8.8.4 Isosurface
  - 3.8.8.5 Parametric
  - 3.8.8.6 CSG
- 3.8.9 Object Modifiers
  - 3.8.9.1 UV Mapping
  - 3.8.9.2 Material
  - 3.8.9.3 Interior
  - 3.8.9.4 Interior Texture
- 3.8.10 Texture
  - 3.8.10.1 Plain Texture
  - 3.8.10.2 Layered Texture
  - 3.8.10.3 Patterned Texture
  - 3.8.10.4 Pigment
  - 3.8.10.5 Normal
  - 3.8.10.6 Finish
  - 3.8.10.7 Pattern
  - 3.8.10.8 Pattern Modifiers
- 3.8.11 Media
- 3.8.12 Atmospheric Effects
  - 3.8.12.1 Background
  - 3.8.12.2 Fog
  - 3.8.12.3 Sky Sphere
  - 3.8.12.4 Rainbow
- 3.8.13 Global Settings
  - 3.8.13.1 Radiosity
  - 3.8.13.2 Photons