aboutsummaryrefslogtreecommitdiffstats
path: root/src/world.cpp
diff options
context:
space:
mode:
authordrumsetmonkey <abelleisle@roadrunner.com>2016-01-07 08:47:59 -0500
committerdrumsetmonkey <abelleisle@roadrunner.com>2016-01-07 08:47:59 -0500
commita85accc62dab6d3edc4fb4ffb991ce4c537394f6 (patch)
treed37eb193a7210ef88af7da5776acc881377c04bf /src/world.cpp
parente043a2432c4dacce56a308948188482fb230ff33 (diff)
Player has a light
Diffstat (limited to 'src/world.cpp')
-rw-r--r--src/world.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/world.cpp b/src/world.cpp
index c6ab6e1..6fc84f8 100644
--- a/src/world.cpp
+++ b/src/world.cpp
@@ -617,7 +617,10 @@ LOOP2:
glUseProgram(shaderProgram);
glUniform1i(glGetUniformLocation(shaderProgram, "sampler"), 0);
glUniform1f(glGetUniformLocation(shaderProgram, "amb"), float(shade+50.0f)/100.0f);
- if(light.size() == 0){
+ if(p->light){
+ glUniform2f(glGetUniformLocation(shaderProgram, "lightLocation"), p->loc.x - offset.x+SCREEN_WIDTH/2,p->loc.y);
+ glUniform3f(glGetUniformLocation(shaderProgram, "lightColor"), 1.0f,1.0f,1.0f);
+ }else if(light.size() == 0){
glUniform2f(glGetUniformLocation(shaderProgram, "lightLocation"), 0,-1000);
glUniform3f(glGetUniformLocation(shaderProgram, "lightColor"), 0.0f,0.0f,0.0f);
}else{
@@ -1211,7 +1214,10 @@ void IndoorWorld::draw(Player *p){
glUseProgram(shaderProgram);
glUniform1i(glGetUniformLocation(shaderProgram, "sampler"), 0);
glUniform1f(glGetUniformLocation(shaderProgram, "amb"), 0.0f);
- if(light.size() == 0){
+ if(p->light){
+ glUniform2f(glGetUniformLocation(shaderProgram, "lightLocation"), p->loc.x - offset.x+SCREEN_WIDTH/2,p->loc.y);
+ glUniform3f(glGetUniformLocation(shaderProgram, "lightColor"), 1.0f,1.0f,1.0f);
+ }else if(light.size() == 0){
glUniform2f(glGetUniformLocation(shaderProgram, "lightLocation"), 0,-1000);
glUniform3f(glGetUniformLocation(shaderProgram, "lightColor"), 0.0f,0.0f,0.0f);
}else{