10.1.10 Texture
- Describe the surface of an object
- TEXTURE:
PLAIN_TEXTURE | LAYERED_TEXTURE | PATTERNED_TEXTURE
Quick Reference Contents
10.1.10.1 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
10.1.10.2 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
10.1.10.3 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 }
- 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
10.1.10.4 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]
- 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]] }
- PIGMENT_LIST_PATTERN:
brick PIGMENT, PIGMENT [BRICK_ITEMS] |
checker PIGMENT, PIGMENT |
hexagon PIGMENT, PIGMENT, PIGMENT |
object { LIST_OBJECT PIGMENT, PIGMENT }
- 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.
- 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.
- PIGMENT_MODIFIERS:
[QUICK_COLOR] & [PATTERN_MODIFIERS]
- QUICK_COLOR:
quick_color COLOR | quick_colour COLOR
Quick Reference Contents
10.1.10.5 Normal
- Simulate the visual or tactile surface characteristics of a texture:
- NORMAL:
- Jump to SDL
normal { NORMAL_BODY }
- NORMAL_BODY:
[NORMAL_IDENTIFIER] [NORMAL_TYPE] [NORMAL_MODIFIERS]
- NORMAL_TYPE:
NORMAL_PATTERN | BUMP_MAP
- NORMAL_PATTERN:
NORMAL_LIST_PATTERN |
MAP_PATTERN [F_DEPTH] [SLOPE_MAP] |
MAP_PATTERN NORMAL_MAP
- NORMAL_LIST_PATTERN:
brick 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 { NORMAL_MAP_BODY } [BLEND_MAP_MODIFIERS]
- NORMAL_MAP_BODY:
NORMAL_MAP_IDENTIFIER | NORMAL_MAP_ENTRY...
- There may be from 2 to 256 map entries.
- NORMAL_MAP_ENTRY:
[ FLOAT NORMAL_BODY ]
- The brackets here are part of the map entry.
- SLOPE_MAP:
slope_map { SLOPE_MAP_BODY } [BLEND_MAP_MODIFIERS]
- SLOPE_MAP_BODY:
SLOPE_MAP_IDENTIFIER | SLOPE_MAP_ENTRY...
- There may be from 2 to 256 map entries.
- SLOPE_MAP_ENTRY:
[ FLOAT, < F_HEIGHT, F_SLOPE > ]
- The brackets here are part of the map entry.
- BUMP_MAP:
bump_map { BITMAP_IMAGE [BUMP_MAP_MODIFIERS] }
- BUMP_MAP_MODIFIERS:
[BITMAP_MODIFIERS] & [BUMP_METHOD] & [bump_size FLOAT]
- BUMP_METHOD:
use_index | use_color | use_colour
- NORMAL_MODIFIERS:
[PATTERN_MODIFIERS] & [bump_size FLOAT] & [no_bump_scale [BOOL]] & [accuracy FLOAT]
Quick Reference Contents
10.1.10.6 Finish
- Describe the reflective properties of a surface:
- FINISH:
- Jump to SDL
finish { [FINISH_IDENTIFIER] [FINISH_ITEMS] }
- FINISH_ITEMS:
[ambient COLOR] & [diffuse FLOAT] & [brilliance FLOAT] & [PHONG] & [SPECULAR] &
[REFLECTION] & [IRID] & [crand FLOAT] & [conserve_energy [BOOL]]
- PHONG:
phong FLOAT & [phong_size FLOAT] & [metallic [FLOAT]]
- SPECULAR:
specular FLOAT & [roughness FLOAT] & [metallic [FLOAT]]
- REFLECTION:
reflection COLOR [reflection_exponent FLOAT] |
reflection { [COLOR,] COLOR [REFLECTION_ITEMS] }
- REFLECTION_ITEMS:
[fresnel BOOL] & [falloff FLOAT] & [exponent FLOAT] & [metallic [FLOAT]]
- Must also use
interior {ior FLOAT}
in the object when fresnel
is used.
- IRID:
irid { F_AMOUNT [IRID_ITEMS] }
- IRID_ITEMS:
[thickness FLOAT] & [turbulence FLOAT]
Quick Reference Contents
10.1.10.7 Pattern
- Specify a pattern function for a texture, pigment, normal or density:
- MAP_PATTERN:
- Jump to SDL
AGATE | average | boxed | bozo | bumps | cells | CRACKLE | 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 | spherical | spiral1 I_NUM_ARMS | spiral2 I_NUM_ARMS | spotted | waves |
wood | wrinkles
- AGATE:
agate [agate_turb FLOAT]
- CRACKLE:
crackle [CRACKLE_TYPES]
- CRACKLE_TYPES:
[form VECTOR] & [metric FLOAT] & [offset FLOAT] & [solid]
- DENSITY_FILE:
density_file df3 FILE_NAME [interpolate DENSITY_INTERPOLATE]
- DENSITY_INTERPOLATE:
0 | 1
- FACETS:
facets FACETS_TYPE
- Note,
facets
can only be used as a normal
pattern.
- FACETS_TYPE:
coords F_SCALE | size F_SIZE_FACTOR
- FRACTAL:
MANDELBROT_FRACTAL | JULIA_FRACTAL | MAGNET_MANDEL_FRACTAL | MAGNET_JULIA_FRACTAL
- MANDELBROT_FRACTAL:
mandel I_ITERATIONS [exponent INT] [exterior EXTERIOR_TYPE, F_FACTOR] [interior INTERIOR_TYPE, F_FACTOR]
- JULIA_FRACTAL:
julia V2_COMPLEX, I_ITERATIONS [exponent INT] [exterior EXTERIOR_TYPE, F_FACTOR] [interior INTERIOR_TYPE, F_FACTOR]
- MAGNET_MANDEL_FRACTAL:
magnet MAGNET_TYPE mandel I_ITERATIONS [exterior EXTERIOR_TYPE, F_FACTOR] [interior INTERIOR_TYPE, F_FACTOR]
- MAGNET_TYPE:
1 | 2
- MAGNET_JULIA_FRACTAL:
magnet MAGNET_TYPE julia V2_COMPLEX, I_ITERATIONS [exterior EXTERIOR_TYPE, F_FACTOR] [interior INTERIOR_TYPE, F_FACTOR]
- EXTERIOR_TYPE:
0 | 1 | 2 | 3 | 4 | 5 | 6
- INTERIOR_TYPE:
0 | 1 | 2 | 3 | 4 | 5 | 6
- IMAGE_PATTERN:
image_pattern {BITMAP_IMAGE [IMAGE_PATTERN_MODIFIERS] }
- IMAGE_PATTERN_MODIFIERS:
[BITMAP_MODIFIERS] & [use_alpha]
- QUILTED:
quilted [control0 FLOAT] [control1 FLOAT]
- SLOPE:
slope { V_DIRECTION [, F_LOW_SLOPE, F_HIGH_SLOPE ] [altitude VECTOR [, F_LOW_ALT, F_HIGH_ALT ]] }
- The
slope
pattern does not work in media densities.
Quick Reference Contents
10.1.10.8 Pattern Modifiers
- Modify the evaluation of a pattern function:
- PATTERN_MODIFIERS:
- Jump to SDL
[TURBULENCE] & [WARP...] & [TRANSFORMATION...] & [noise_generator NG_TYPE]
- NG_TYPE:
1 | 2 | 3
- TURBULENCE:
turbulence VECTOR & [octaves INT] & [omega FLOAT] & [lambda FLOAT]
- WARP:
warp { WARP_ITEM }
- WARP_ITEM:
REPEAT_WARP | BLACK_HOLE_WARP | TURBULENCE | CYLINDRICAL_WARP | SPHERICAL_WARP | TOROIDAL_WARP | PLANAR_WARP
- REPEAT_WARP:
repeat VECTOR [offset VECTOR] [flip VECTOR]
- BLACK_HOLE_WARP:
black_hole V_LOCATION, F_RADIUS [BLACK_HOLE_ITEMS]
- BLACK_HOLE_ITEMS:
[strength FLOAT] & [falloff FLOAT] & [inverse] & [repeat VECTOR [turbulence VECTOR]]
- CYLINDRICAL_WARP:
cylindrical [orientation VECTOR] [dist_exp FLOAT]
- SPHERICAL_WARP:
spherical [orientation VECTOR] [dist_exp FLOAT]
- TOROIDAL_WARP:
toroidal [orientation VECTOR] [dist_exp FLOAT] [major_radius FLOAT]
- PLANAR_WARP:
planar [V_NORMAL, F_DISTANCE]
- Modify the usage of a blend map:
- BLEND_MAP_MODIFIERS:
- Jump to SDL
- [frequency FLOAT] & [phase FLOAT] & [WAVEFORM]
- WAVEFORM:
- Jump to SDL
ramp_wave | triangle_wave | sine_wave | scallop_wave | cubic_wave | poly_wave [F_EXPONENT]
- Specify a two-dimensional bitmap image for a pattern:
- BITMAP_IMAGE:
FUNCTION_IMAGE | BITMAP_TYPE FILE_NAME
- FUNCTION_IMAGE:
- Jump to SDL
function I_WIDTH, I_HEIGHT { FUNCTION_IMAGE_BODY }
- FUNCTION_IMAGE_BODY:
PIGMENT | FN_FLOAT | pattern { PATTERN [PATTERN_MODIFIERS] }
- PATTERN:
MAP_PATTERN | brick [BRICK_ITEMS] | checker | hexagon | object { LIST_OBJECT }
- BITMAP_TYPE:
- Jump to SDL
gif | tga | iff | ppm | pgm | png | jpeg | tiff | sys
- Modify how a 2-D bitmap is to be applied to a 3-D surface:
- BITMAP_MODIFIERS:
- Jump to SDL
[once] & [map_type MAP_TYPE] & [interpolate INTERPOLATE_TYPE]
- MAP_TYPE:
0 | 1 | 2 | 5
- INTERPOLATE_TYPE:
2 | 4
Quick Reference Contents