diff options
Diffstat (limited to 'nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/material.gl')
-rw-r--r-- | nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/material.gl | 200 |
1 files changed, 200 insertions, 0 deletions
diff --git a/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/material.gl b/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/material.gl new file mode 100644 index 000000000..900ec9109 --- /dev/null +++ b/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/material.gl @@ -0,0 +1,200 @@ +_C_ License Applicability. Except to the extent portions of this file are +_C_ made subject to an alternative license as permitted in the SGI Free +_C_ Software License B, Version 1.1 (the "License"), the contents of this +_C_ file are subject only to the provisions of the License. You may not use +_C_ this file except in compliance with the License. You may obtain a copy +_C_ of the License at Silicon Graphics, Inc., attn: Legal Services, 1600 +_C_ Amphitheatre Parkway, Mountain View, CA 94043-1351, or at: +_C_ +_C_ http://oss.sgi.com/projects/FreeB +_C_ +_C_ Note that, as provided in the License, the Software is distributed on an +_C_ "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS +_C_ DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND +_C_ CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A +_C_ PARTICULAR PURPOSE, AND NON-INFRINGEMENT. +_C_ +_C_ Original Code. The Original Code is: OpenGL Sample Implementation, +_C_ Version 1.2.1, released January 26, 2000, developed by Silicon Graphics, +_C_ Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc. +_C_ Copyright in any portions created by third parties is as indicated +_C_ elsewhere herein. All Rights Reserved. +_C_ +_C_ Additional Notice Provisions: The application programming interfaces +_C_ established by SGI in conjunction with the Original Code are The +_C_ OpenGL(R) Graphics System: A Specification (Version 1.2.1), released +_C_ April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version +_C_ 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X +_C_ Window System(R) (Version 1.3), released October 19, 1998. This software +_C_ was created using the OpenGL(R) version 1.2.1 Sample Implementation +_C_ published by SGI, but has not been independently verified as being +_C_ compliant with the OpenGL(R) version 1.2.1 Specification. +_C_ +_C_ The first character in this file must be an '_'! +_C_ Anything on a line after _C_ is ignored +_define(_filters,eqn)_C_ +_C_ eqn is automatically replaced with neqn for nroff +_header(Material,specify material parameters for the lighting model) +_names(Material,[fi]) +.SH PARAMETERS +_phead(_param1) +Specifies which face or faces are being updated. +Must be one of +_const(FRONT), +_const(BACK), or +_const(FRONT_AND_BACK). +_phead(_param2) +Specifies the single-valued material parameter of the face or faces +that is being updated. +Must be _const(SHININESS). +_phead(_param3) +Specifies the value that parameter _const(SHININESS) will be set to. +_names(Material,[fi]v) +.SH PARAMETERS +_phead(_param1) +Specifies which face or faces are being updated. +Must be one of +_const(FRONT), +_const(BACK), or +_const(FRONT_AND_BACK). +_phead(_param2) +Specifies the material parameter of the face or faces that is being updated. +Must be one of +_const(AMBIENT), +_const(DIFFUSE), +_const(SPECULAR), +_const(EMISSION), +_const(SHININESS), +_const(AMBIENT_AND_DIFFUSE), or +_const(COLOR_INDEXES). +_phead(_param3) +Specifies a pointer to the value or values that _param2 will be set to. +.SH DESCRIPTION +_cmnd assigns values to material parameters. +There are two matched sets of material parameters. +One, +the \f2front-facing\fP set, +is used to shade points, +lines, +bitmaps, +and all polygons +(when two-sided lighting is disabled), +or just front-facing polygons +(when two-sided lighting is enabled). +The other set, +\f2back-facing\fP, +is used to shade back-facing polygons only when two-sided lighting is enabled. +Refer to the _cmnd(LightModel) reference page for details concerning one- and +two-sided lighting calculations. +.P +_cmnd takes three arguments. +The first, +_param1, +specifies whether the +_const(FRONT) materials, the +_const(BACK) materials, or both +_const(FRONT_AND_BACK) materials will be modified. +The second, +_param2, +specifies which of several parameters in one or both sets will be modified. +The third, +_param3, +specifies what value or values will be assigned to the specified parameter. +.P +Material parameters are used in the lighting equation that is optionally +applied to each vertex. +The equation is discussed in the _cmnd(LightModel) reference page. +The parameters that can be specified using _cmnd, +and their interpretations by the lighting equation, are as follows: +.TP 20 +_const(AMBIENT) +_param3 contains four integer or floating-point values that specify +the ambient RGBA reflectance of the material. +Integer values are mapped linearly such that the most positive representable +value maps to 1.0, +and the most negative representable value maps to \-1.0. +Floating-point values are mapped directly. +Neither integer nor floating-point values are clamped. +The initial ambient reflectance for both front- and back-facing materials +is (0.2, 0.2, 0.2, 1.0). +.TP +_const(DIFFUSE) +_param3 contains four integer or floating-point values that specify +the diffuse RGBA reflectance of the material. +Integer values are mapped linearly such that the most positive representable +value maps to 1.0, +and the most negative representable value maps to \-1.0. +Floating-point values are mapped directly. +Neither integer nor floating-point values are clamped. +The initial diffuse reflectance for both front- and back-facing materials +is (0.8, 0.8, 0.8, 1.0). +.TP +_const(SPECULAR) +_param3 contains four integer or floating-point values that specify +the specular RGBA reflectance of the material. +Integer values are mapped linearly such that the most positive representable +value maps to 1.0, +and the most negative representable value maps to \-1.0. +Floating-point values are mapped directly. +Neither integer nor floating-point values are clamped. +The initial specular reflectance for both front- and back-facing materials +is (0, 0, 0, 1). +.TP +_const(EMISSION) +_param3 contains four integer or floating-point values that specify +the RGBA emitted light intensity of the material. +Integer values are mapped linearly such that the most positive representable +value maps to 1.0, +and the most negative representable value maps to \-1.0. +Floating-point values are mapped directly. +Neither integer nor floating-point values are clamped. +The initial emission intensity for both front- and back-facing materials +is (0, 0, 0, 1). +.TP +_const(SHININESS) +_param3 is a single integer or floating-point value that specifies +the RGBA specular exponent of the material. +Integer and floating-point values are mapped directly. +Only values in the range [0,128] are accepted. +The initial specular exponent for both front- and back-facing materials +is 0. +.TP +_const(AMBIENT_AND_DIFFUSE) +Equivalent to calling _cmnd twice with the same parameter values, +once with _const(AMBIENT) and once with _const(DIFFUSE). +.TP +_const(COLOR_INDEXES) +_param3 contains three integer or floating-point values specifying +the color indices for ambient, +diffuse, +and specular lighting. +These three values, +and _const(SHININESS), +are the only material values used by the color index mode lighting equation. +Refer to the _cmnd(LightModel) reference page for a discussion +of color index lighting. +.SH NOTES +The material parameters can be updated at any time. +In particular, +_cmnd can be called between a call to _cmnd(Begin) and the corresponding +call to _cmnd(End). +If only a single material parameter is to be changed per vertex, +however, +_cmnd(ColorMaterial) is preferred over _cmnd +(see _cmnd(ColorMaterial)). +.P +While the ambient, diffuse, specular and emission material parameters +all have alpha components, only the diffuse alpha component is used in +the lighting computation. +.SH ERRORS +_const(INVALID_ENUM) is generated if either _param1 or _param2 is not +an accepted value. +.P +_const(INVALID_VALUE) is generated if a specular exponent outside the range +[0,128] is specified. +.SH ASSOCIATED GETS +_cmnd(GetMaterial) +.SH SEE ALSO +_cmnd(ColorMaterial), +_cmnd(Light), +_cmnd(LightModel) |