home *** CD-ROM | disk | FTP | other *** search
- Subj:Radiance scene description
-
- Altogether, there are at least 4 "languages" involved with Radiance
- scene descriptions: the basic scene input language, the function file
- language, the data file language and the font language. All except
- the function file language are exceedingly simple.
-
- Scene Input
- ===========
-
- statement:primitive
- | alias
- | command
- | comment
-
- primitive:STRING type STRING
- INTEGER string_args
- INTEGER integer_args
- INTEGER real_args
-
- alias:STRING alias STRING STRING
-
- command:'!' STRING string_args
-
- comment:'#' string_args
-
- string_args:/* nothing */
- | STRING string_args
-
- integer_args:/* nothing */
- | INTEGER integer_args
-
- real_args:/* nothing */
- | REAL real_args
-
- type:"polygon"
- | "cone"
- | "sphere"
- | "texfunc"
- | "ring"
- | "cylinder"
- | "instance"
- | "cup"
- | "bubble"
- | "tube"
- | "plastic"
- | "metal"
- | "glass"
- | "trans"
- | "dielectric"
- | "interface"
- | "plasfunc"
- | "metfunc"
- | "brightfunc"
- | "brightdata"
- | "brighttext"
- | "colorpict"
- | "glow"
- | "source"
- | "light"
- | "illum"
- | "spotlight"
- | "mirror"
- | "transfunc"
- | "BRTDfunc"
- | "plasdata"
- | "metdata"
- | "transdata"
- | "colorfunc"
- | "antimatter"
- | "colordata"
- | "colortext"
- | "texdata"
- | "mixfunc"
- | "mixdata"
- | "mixtext"
- | "prism1"
- | "prism2"
-
- Function File
- =============
-
- decl:';'
- | function_decl ';'
- | variable_decl ';'
-
- function_decl:ID '(' id_list ')' assign_op e1
-
- variable_decl:ID assign_op e1
-
- id_list:ID
- | ID ',' id_list
-
- assign_op:'='
- | ':'
-
- e1:e1 '+' e2
- | e1 '-' e2
- | e2
-
- e2:e2 '*' e3
- | e2 '/' e3
- | e3
-
- e3:e4 '^' e3
- | e4
-
- e4:'+' e5
- | '-' e5
- | e5
-
- e5:'(' e1 ')'
- | ID
- | ID '(' id_list ')'
- | REAL
- | '$' INTEGER
-
- Comments may appear between any two tokens set off by curly braces {},
- and may be nested to any level.
-
- Data File
- =========
-
- data:dimensions value_list
-
- dimensions:INTEGER dim_list
-
- dim_list:dim
- | dim dim_list
-
- dim:REAL REAL INTEGER
- | '0' '0' INTEGER indep_list
-
- indep_list:REAL
- | REAL indep_list
-
- value_list:/* nothing */
- | REAL value_list
-
- Font File
- =========
-
- glyph_list:/* nothing */
- | glyph glyph_list
-
- glyph:INTEGER INTEGER coord_list
-
- coord_list:/* nothing */
- | INTEGER INTEGER coord_list
-
- --------------------------------------------------------------
-
- With regards to your topics, I have the following comments.
-
- Specification of scene parameters:
- - Radiance uses a right-hand coordinate system
- - The eyepoint and view direction are given as options
- to the renderers, and can be stored in a separate file
-
- Supported primitives:
- - N-sided polygons
- - spheres
- - cones, cylinders, rings
- - hierarchical instancing for very complex geometries
-
- Lighting models:
- - Completely general
- - Converter provided for IES luminaire specification
-
- Textures:
- - I break "textures" into two kinds, patterns and textures
- - Patterns are variation in color, and can be specified as
- pictures, data or functions in any combination
- - Textures are perturbations in surface normal, and can
- be specified in the same ways as patterns
- - A light source distribution is a pattern
-
- Bit Mapping:
- - Usually given as a picture-type pattern (ie. "colorpict" type)
- - True bit-maps (ie. 1-bit depth images) may also be produced
- using a special bit font
-
- CSG:
- - Radiance has an "antimatter" type which supports some rudimentary
- CSG subtraction, but otherwise we are strictly B-rep
-
- Looping constructs or Recursion:
- - The function file language supports recursion
- - The "xform" program provides iteration for repeated objects
-
- Functions or Procedures:
- - The function file language supports functions without side effects
-
- User extensibility:
- - The user may create function files, data files and font files,
- or provide his/her own images for patterns
- - General bidirectional reflection distribution functions may
- also be specified in the same way as patterns and textures
-
-
-