better
This commit is contained in:
parent
5210e22684
commit
64de49cf99
3 changed files with 18 additions and 4 deletions
|
|
@ -16,7 +16,7 @@ vec4 PhongShading(void)
|
|||
vec3 L = normalize(gl_LightSource[0].position.xyz-vPos.xyz);
|
||||
|
||||
if(gl_LightSource[0].position.w < 0.5){
|
||||
L = normalize(gl_LightSource[0].position.xyz);
|
||||
L = -normalize(gl_LightSource[0].position.xyz);
|
||||
}
|
||||
|
||||
vec4 ambient = gl_FrontLightProduct[0].ambient;
|
||||
|
|
@ -59,7 +59,7 @@ float ShadowCoef(void){
|
|||
shadow_coef -= 0.2;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return shadow_coef;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -49,6 +49,11 @@ GSClient GSClientCreate(GSEngine engine) {
|
|||
client->light0[2] = 0;
|
||||
client->light0[3] = 1;
|
||||
|
||||
client->light0[0] = -1;
|
||||
client->light0[1] = -1;
|
||||
client->light0[2] = 0;
|
||||
client->light0[3] = 0;
|
||||
|
||||
client->skybox_enabled = GSFalse;
|
||||
|
||||
if((client->sengine = GSSoundEngineCreate(client)) == NULL) {
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ GSBool GSGLShadowBeforeMapping(GSGL gl) {
|
|||
if(gl->engine->client->light0[3]) {
|
||||
GSGLCameraPerspective(gl, GSGLMaxShadowDistance, GSGLMaxShadowDistance);
|
||||
} else {
|
||||
glOrtho(-GSGLMaxShadowDistance / 2, GSGLMaxShadowDistance / 2, -GSGLMaxShadowDistance / 2, GSGLMaxShadowDistance / 2, -GSGLMaxDistance, GSGLMaxDistance);
|
||||
glOrtho(-10, 10, -10, 10, -10, 20);
|
||||
}
|
||||
|
||||
glGetDoublev(GL_PROJECTION_MATRIX, gl->shadow_projection);
|
||||
|
|
@ -66,7 +66,16 @@ GSBool GSGLShadowBeforeMapping(GSGL gl) {
|
|||
glMatrixMode(GL_MODELVIEW);
|
||||
glGetDoublev(GL_MODELVIEW_MATRIX, gl->shadow_old_modelview);
|
||||
glLoadIdentity();
|
||||
GSGLCameraLookAt(gl, gl->engine->client->light0, zero);
|
||||
if(gl->engine->client->light0[3]){
|
||||
GSGLCameraLookAt(gl, gl->engine->client->light0, zero);
|
||||
}else{
|
||||
GSVector3 n;
|
||||
int i;
|
||||
|
||||
for(i = 0; i < 3; i++) n[i] = -gl->engine->client->light0[i];
|
||||
|
||||
GSGLCameraLookAt(gl, n, zero);
|
||||
}
|
||||
|
||||
glGetDoublev(GL_MODELVIEW_MATRIX, gl->shadow_modelview);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue