%
/*--------------------------------------------------------------------*\
|
|   Copyright (c)1989,1990 National Computer Graphics Association
|
|       Permission is granted to any individual or instititution 
|  to use, copy, or redistribute this software so long as it is not
|    sold for profit, provided this copyright notice is retained.
|
|                         Developed for the
|               National Computer Graphics Association
|                        2722 Merrilee Drive
|                         Fairfax, VA  22031
|                           (703) 698-9600
|
|                                 by
|                SimGraphics Engineering Corporation
|                   1137 Huntington Drive, Suite A
|                      South Pasadena, CA  91030
|                           (213) 255-0900
|---------------------------------------------------------------------
|
| Author	:	SimGraphics Engineering Corporation
| File          :	specular.v05
| Date          :	Tue Jul 10 16:43:18 PDT 1990
| Project       :	Picture Level Benchmark
| Description	:	See specular.doc
| Status	:	Version 1.02
| Revisions     :	1.01: Apply_to_global3 removed from data file 
|			and moved to inside test loop.  This eased
|			problems for PHIGS ports.
|
|			1.02:
|			Define_light properties were changed.
|
|			Files specular.d02 d04 d06 d08 d10
|			have been dropped.  Any verb file
|			that use to call these files now call 
|			files dst.d01 d03 d05 d07 d09 respectivel.
|
\*--------------------------------------------------------------------*/
%
    Configuration rgb double_buffer true_color  ; 
    Read_geometry_file "dst.d05";
    Specify_report_file "specular.r05";
    Default_view_specification  1  500 parallel;
    Active_view  1  ; 

% ****************************************************************** %
% Set up static attributes                                           %
% ****************************************************************** %
    HLHS_Removal hlhs_enable ;
    Text_prec Stroke ;
    Char_exp  1 ;
    Text_color  1  1  1 ;
    char_height  30 ;
    Background_color    0.300000  0.300000  0.800000 ;
    Interior_style solid ;
    Interior_color  1  1  1 ;
    Backface_interior_color  1  1  1 ;
    Interior_lighting  4 ;	% (specular) %
    Backface_processing  1  0 ;	% backface_identify but cull_none %
    Edge_flag disable ;

% ****************************************************************** %
% Set up matrix for position geometry on the screen                  %
% ****************************************************************** %
    Identity3  0  ; 
    Identity3  1  ; 
    Apply_to_global3  1  ; 
    Identity3  2  ; 
    Translate3  0  -375   400  0 Postconcat; % Set Initial position  %
    Translate3  1   250     0  0 Postconcat; % Set Column offset     %
    Translate3  2     0  -200  0 Postconcat; % Set Row offset        %
    Push_matrix3  ; 			     % Push Initial position %


% ****************************************************************** %
% Create a ramped light table                                        %
% ****************************************************************** %
    Define_light
      % Index in light source table   %  1
      % Light source color components %  1.000000    0.000000    0.000000
      % Non-directional light source  %  Ambient_light
     ; 
    Define_light
      % Index in light source table   %  2
      % Light source color components %  0.500000    1.000000    0.500000
      % Directional     light source  %  Directional_light {
      % Direction                     %  1           1          -1       }
    ;
    Define_light
      % Index in light source table   %  3
      % Light source color components %  0.500000    0.500000    1.000000
      % Positional      light source  %  Positional_light {
      % Position                      %  0           100         200
      % Attenuation                   %  0.500000    0.005000            }
    ;						
    Define_light
      % Index in light source table   %  4
      % Light source color components %  1.000000    0.500000    0.500000
      % Spot            light source  %  Spot_light      {
      % Position                      %  0          -100         500
      % Direction                     %  0           0           -1
      % Concentration                 %  10.00000
      % Spread angle in degrees       %  32
      % Attenuation                   %  1.000000    0.000000            }
    ;						


% ****************************************************************** %
%                                                                    % 
%                                                                    % 
%                        Begin Test Loop                             % 
%                                                                    % 
% ****************************************************************** %
Begin_test  1  ; 
	Text3  -450  -450  0 "Specular Test: TRI3 true parallel";
	Text3  -450  -495  0 "specular.v05";

% ****************************************************************** % 
%                                                                    % 
%                        Row 1 Column 1                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  1;
  Interior_shading  1;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  1.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Light_state
	activate_list { 1  2}
	deactivate_list { 3}
  ;

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Apply_to_global3  0  ; 
  Execute_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 1 Column 2                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  2;
  Interior_shading  2;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.333333
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.666667
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Call_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 1 Column 3                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  3;
  Interior_shading  3;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.666667
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.333333
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Execute_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 1 Column 4                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  4;
  Interior_shading  4;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  1.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Call_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 2 Column 1                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  5;
  Interior_shading  1;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  1.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Light_state
	activate_list { 1  3}
	deactivate_list { 2}
  ;

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Pop_matrix3  ; 
  Concat_matrix3  2  0 postconcat  ; 		% Move down one row %
  Push_matrix3  ; 
  Apply_to_global3  0  ; 
  Call_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 2 Column 2                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  6;
  Interior_shading  2;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.333333
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.666667
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Execute_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 2 Column 3                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  1;
  Interior_shading  3;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.666667
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.333333
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Call_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 2 Column 4                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  2;
  Interior_shading  4;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  1.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Execute_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 3 Column 1                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  3;
  Interior_shading  1;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  1.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Light_state
	activate_list { 1  4}
	deactivate_list { 3}
  ;

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Pop_matrix3  ; 
  Concat_matrix3  2  0 postconcat  ; 		% Move down one row %
  Push_matrix3  ; 
  Apply_to_global3  0  ; 
  Execute_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 3 Column 2                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  4;
  Interior_shading  2;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.333333
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.666667
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Call_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 3 Column 3                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  5;
  Interior_shading  3;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.666667
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.333333
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Execute_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 3 Column 4                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  6;
  Interior_shading  4;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  1.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Call_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 4 Column 1                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  1;
  Interior_shading  1;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  1.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Light_state
	activate_list   { 1  2  3  4}
	deactivate_list { }
  ;

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Pop_matrix3  ; 
  Concat_matrix3  2  0 postconcat  ; 		% Move down one row %
  Push_matrix3  ; 
  Apply_to_global3  0  ; 
  Call_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 4 Column 2                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  2;
  Interior_shading  2;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.333333
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.666667
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Execute_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 4 Column 3                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  3;
  Interior_shading  3;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.666667
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.333333
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Call_structure 20  ; 
  

% ****************************************************************** % 
%                                                                    % 
%                        Row 4 Column 4                              %
%                                                                    % 
% ****************************************************************** %
  % ********************************************************** %
  % Interior_pattern_index should have no effect               %
  % because Interior_style is SOLID                            %
  % ********************************************************** %
  Interior_pattern_index  4;
  Interior_shading  4;
  Surface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  1.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 
  Backface_properties
    % Ambient reflection coefficient    %  0.200000
    % Diffuse reflection coefficient    %  0.250000
    % Specular reflection coefficient   %  0.000000
    % Specularity true-color components %  0  0  1
    % Specular exponent                 %  8
    % Transparency coefficient          %  1
  ; 

  % *************************************************************** %
  % Matrix operations to position graphics                          %
  % *************************************************************** %
  Concat_matrix3  1  0 postconcat  ; 		% Move over one column %
  Apply_to_global3  0  ; 
  Execute_structure 20  ; 
  
End_test  ; 
Sleep 5 ;