source: GTP/trunk/App/Demos/Illum/Shark3D/version164x12u/IllumDemo/bin/res/levelutil/shader/prog/ogl_glsl/comic_ogl_glsl_vs1x0.s3d_shadercode_run @ 2196

Revision 2196, 2.3 KB checked in by szirmay, 17 years ago (diff)
Line 
1///////////////////////////////////////////////////////////////////////////////
2//
3//      ##  ######
4//       ######  ###
5//  ## ###############        Shark 3D Engine (www.shark3d.com)
6//   ########## # # #
7//    ########                Copyright (c) 1996-2006 Spinor GmbH.
8//   ######### # # #          All rights reserved.
9//  ##   ##########
10//      ##
11//
12///////////////////////////////////////////////////////////////////////////////
13
14@include "levelutil/shader/prog/ogl_glsl/" \
15        "include_stddef_ogl_glsl_vs1x0.s3d_shadercode_run"
16
17///////////////////////////////////////////////////////////////////////////////
18
19void main(void)
20{
21    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
22
23    vec4 posView = gl_ModelViewMatrix * gl_Vertex;
24    gl_FogFragCoord = posView.z / posView.w;
25
26    vec3 normalView = normalize(gl_NormalMatrix * gl_Normal);
27    vec4 diffuseOut = gl_FrontMaterial.emission;
28    vec4 specularOut = vec4(0);
29//!!! hack to detect nvidia
30#ifdef __GLSL_CG_DATA_TYPES
31    for(int i = 0; i < gl_MaxLights; i++)
32    {
33        s3d_ColPair result;
34        s3d_calcPointLightTerm(
35                result, posView.xyz, normalView, gl_FrontMaterial.shininess,
36                gl_LightSource[i], gl_FrontLightProduct[i]);
37        diffuseOut += result.diffuse;   
38        specularOut += result.specular;   
39    }
40#else
41    s3d_ColPair result;
42    s3d_calcPointLightTerm(
43            result, posView.xyz, normalView, gl_FrontMaterial.shininess,
44            gl_LightSource[0], gl_FrontLightProduct[0]);
45    diffuseOut += result.diffuse;   
46    specularOut += result.specular;   
47   
48    s3d_calcPointLightTerm(
49            result, posView.xyz, normalView, gl_FrontMaterial.shininess,
50            gl_LightSource[1], gl_FrontLightProduct[1]);
51    diffuseOut += result.diffuse;   
52    specularOut += result.specular;   
53   
54    s3d_calcPointLightTerm(
55            result, posView.xyz, normalView, gl_FrontMaterial.shininess,
56            gl_LightSource[2], gl_FrontLightProduct[2]);
57    diffuseOut += result.diffuse;   
58    specularOut += result.specular;   
59#endif
60         
61    gl_FrontColor = vec4(0,1,0,0);//gl_Color;
62    gl_TexCoord[0].x = dot(diffuseOut.xyz, vec3(0.3, 0.5, 0.2));
63    gl_TexCoord[0].y = 0.0;
64}
65
66///////////////////////////////////////////////////////////////////////////////
Note: See TracBrowser for help on using the repository browser.