#include "shader_vars.h" namespace shader { struct vin vin; varying_3f vin::vertex_3f ("gl_Vertex"); varying_4f vin::vertex_4f ("gl_Vertex"); varying_3f vin::normal_3f ("gl_Normal"); varying_3f vin::color_3f ("gl_Color"); varying_4f vin::color_4f ("gl_Color"); varying_3f vin::secondary_color_3f ("gl_SecondaryColor"); varying_4f vin::secondary_color_4f ("gl_SecondaryColor"); varying_1f vin::tex_coord_1f[8] = { varying_1f ("gl_TexCoord[0]"), varying_1f ("gl_TexCoord[1]"), varying_1f ("gl_TexCoord[2]"), varying_1f ("gl_TexCoord[3]"), varying_1f ("gl_TexCoord[4]"), varying_1f ("gl_TexCoord[5]"), varying_1f ("gl_TexCoord[6]"), varying_1f ("gl_TexCoord[7]"), }; varying_2f vin::tex_coord_2f[8] = { varying_2f ("gl_TexCoord[0]"), varying_2f ("gl_TexCoord[1]"), varying_2f ("gl_TexCoord[2]"), varying_2f ("gl_TexCoord[3]"), varying_2f ("gl_TexCoord[4]"), varying_2f ("gl_TexCoord[5]"), varying_2f ("gl_TexCoord[6]"), varying_2f ("gl_TexCoord[7]"), }; varying_3f vin::tex_coord_3f[8] = { varying_3f ("gl_TexCoord[0]"), varying_3f ("gl_TexCoord[1]"), varying_3f ("gl_TexCoord[2]"), varying_3f ("gl_TexCoord[3]"), varying_3f ("gl_TexCoord[4]"), varying_3f ("gl_TexCoord[5]"), varying_3f ("gl_TexCoord[6]"), varying_3f ("gl_TexCoord[7]"), }; varying_4f vin::tex_coord_4f[8] = { varying_4f ("gl_TexCoord[0]"), varying_4f ("gl_TexCoord[1]"), varying_4f ("gl_TexCoord[2]"), varying_4f ("gl_TexCoord[3]"), varying_4f ("gl_TexCoord[4]"), varying_4f ("gl_TexCoord[5]"), varying_4f ("gl_TexCoord[6]"), varying_4f ("gl_TexCoord[7]"), }; glvar const vin::vertex ("gl_Vertex"); glvar const vin::normal ("gl_Normal"); glvar const vin::color ("gl_Color"); glvar const vin::secondary_color ("gl_SecondaryColor"); glvar const vin::tex_coord[8] = { glvar ("gl_MultiTexCoord0"), glvar ("gl_MultiTexCoord1"), glvar ("gl_MultiTexCoord2"), glvar ("gl_MultiTexCoord3"), glvar ("gl_MultiTexCoord4"), glvar ("gl_MultiTexCoord5"), glvar ("gl_MultiTexCoord6"), glvar ("gl_MultiTexCoord7"), }; glvar const vin::fog_coord ("gl_FogCoord"); struct vout vout; glvar const vout::position ("gl_Position"); glvar const vout::point_size ("gl_PointSize"); glvar const vout::clip_vertex ("gl_ClipVertex"); glvar const vout::front_color ("gl_FontColor"); glvar const vout::back_color ("gl_BackColor"); glvar const vout::front_secondary_color ("gl_FrontSecondaryColor"); glvar const vout::back_secondary_color ("gl_BackSecondaryColor"); glvar const vout::tex_coord[8] = { glvar ("gl_TexCoord[0]"), glvar ("gl_TexCoord[1]"), glvar ("gl_TexCoord[2]"), glvar ("gl_TexCoord[3]"), glvar ("gl_TexCoord[4]"), glvar ("gl_TexCoord[5]"), glvar ("gl_TexCoord[6]"), glvar ("gl_TexCoord[7]"), }; glvar const vout::fog_frag_coord ("gl_FogFragCoord"); struct fin fin; glvar const fin::frag_coord ("gl_FragCoord"); glvar const fin::front_facing ("gl_FrontFacing"); glvar const fin::color ("gl_Color"); glvar const fin::secondary_color ("gl_SecondaryColor"); glvar const fin::tex_coord[8] = { glvar ("gl_TexCoord[0]"), glvar ("gl_TexCoord[1]"), glvar ("gl_TexCoord[2]"), glvar ("gl_TexCoord[3]"), glvar ("gl_TexCoord[4]"), glvar ("gl_TexCoord[5]"), glvar ("gl_TexCoord[6]"), glvar ("gl_TexCoord[7]"), }; glvar const fin::fog_frag_coord ("gl_FogFragCoord"); struct fout fout; glvar const fout::frag_color ("gl_FragColor"); glvar const fout::frag_depth ("gl_FragDepth"); glvar const fout::frag_data[2] = { glvar ("gl_FragData[0]"), glvar ("gl_FragData[1]") }; glvar gl::model_view_matrix ("gl_ModelViewMatrix"), gl::projection_matrix ("gl_ProjectionMatrix"), gl::model_view_projection_matrix ("gl_ModelViewProjectionMatrix"), gl::texture_matrix[8] = { glvar ("gl_TextureMatrix[0]"), glvar ("gl_TextureMatrix[1]"), glvar ("gl_TextureMatrix[2]"), glvar ("gl_TextureMatrix[3]"), glvar ("gl_TextureMatrix[4]"), glvar ("gl_TextureMatrix[5]"), glvar ("gl_TextureMatrix[6]"), glvar ("gl_TextureMatrix[7]"), }; glvar gl::model_view_matrix_inverse ("gl_ModelViewMatrixInverse"), gl::projection_matrix_inverse ("gl_ProjectionMatrixInverse"), gl::model_view_projection_matrix_inverse ("gl_ModelViewProjectionMatrixInverse"), gl::texture_matrix_inverse[8] = { glvar ("gl_TextureMatrixInverse[0]"), glvar ("gl_TextureMatrixInverse[1]"), glvar ("gl_TextureMatrixInverse[2]"), glvar ("gl_TextureMatrixInverse[3]"), glvar ("gl_TextureMatrixInverse[4]"), glvar ("gl_TextureMatrixInverse[5]"), glvar ("gl_TextureMatrixInverse[6]"), glvar ("gl_TextureMatrixInverse[7]"), }; glvar gl::model_view_matrix_transpose ("gl_ModelViewMatrixTranspose"), gl::projection_matrix_transpose ("gl_ProjectionMatrixTranspose"), gl::model_view_projection_matrix_transpose ("gl_ModelViewProjectionMatrixTranspose"), gl::texture_matrix_transpose[8] = { glvar ("gl_TextureMatrixTranspose[0]"), glvar ("gl_TextureMatrixTranspose[1]"), glvar ("gl_TextureMatrixTranspose[2]"), glvar ("gl_TextureMatrixTranspose[3]"), glvar ("gl_TextureMatrixTranspose[4]"), glvar ("gl_TextureMatrixTranspose[5]"), glvar ("gl_TextureMatrixTranspose[6]"), glvar ("gl_TextureMatrixTranspose[7]"), }; glvar gl::model_view_matrix_inverse_transpose ("gl_ModelViewMatrixInverseTranspose"), gl::projection_matrix_inverse_transpose ("gl_ProjectionMatrixInverseTranspose"), gl::model_view_projection_matrix_inverse_transpose ("gl_ModelViewProjectionMatrixInverseTranspose"), gl::texture_matrix_inverse_transpose[8] = { glvar ("gl_TextureMatrixInverseTranspose[0]"), glvar ("gl_TextureMatrixInverseTranspose[1]"), glvar ("gl_TextureMatrixInverseTranspose[2]"), glvar ("gl_TextureMatrixInverseTranspose[3]"), glvar ("gl_TextureMatrixInverseTranspose[4]"), glvar ("gl_TextureMatrixInverseTranspose[5]"), glvar ("gl_TextureMatrixInverseTranspose[6]"), glvar ("gl_TextureMatrixInverseTranspose[7]"), }; glvar gl::normal_matrix ("gl_NormalMatrix"); glvar gl::normal_scale ("gl_NormalScale"); glvar gl::depth_range_near ("gl_DepthRange.near"), gl::depth_range_far ("gl_DepthRange.far"), gl::depth_range_diff ("gl_DepthRange.diff"); glvar gl::clip_plane[2] = { glvar ("gl_ClipPlane[0]"), glvar ("gl_ClipPlane[1]") }; glvar gl::front_material_emission ("gl_FrontMaterialEmission"), gl::front_material_ambient ("gl_FrontMaterialAmbient"), gl::front_material_diffuse ("gl_FrontMaterialDiffuse"), gl::front_material_specular ("gl_FrontMaterialSpecular"), gl::front_material_shininess ("gl_FrontMaterialShininess"); glvar gl::back_material_emission ("gl_BackMaterialEmission"), gl::back_material_ambient ("gl_BackMaterialAmbient"), gl::back_material_diffuse ("gl_BackMaterialDiffuse"), gl::back_material_specular ("gl_BackMaterialSpecular"), gl::back_material_shininess ("gl_BackMaterialShininess"); glvar gl::light_model_ambient ("gl_LightModel.ambient"); glvar gl::front_light_model_product_scene_color ("gl_FrontLightModelProduct.sceneColor"); glvar gl::back_light_model_product_scene_color ("gl_BackLightModelProduct.sceneColor"); }