projects
/
demo
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added morphing to the cow
[demo]
/
src
/
morph_renderer.cc
diff --git
a/src/morph_renderer.cc
b/src/morph_renderer.cc
index
f31b8fe
..
ae91625
100644
(file)
--- a/
src/morph_renderer.cc
+++ b/
src/morph_renderer.cc
@@
-30,6
+30,7
@@
bool MorphRenderer::create()
diff_loc = sprog->get_uniform_location("diffuse");
spec_loc = sprog->get_uniform_location("specular");
shin_loc = sprog->get_uniform_location("shininess");
diff_loc = sprog->get_uniform_location("diffuse");
spec_loc = sprog->get_uniform_location("specular");
shin_loc = sprog->get_uniform_location("shininess");
+ t_loc = sprog->get_uniform_location("t");
/* uniform locations for matrices */
/* uniform locations for matrices */
@@
-52,4
+53,14
@@
void MorphRenderer::draw() const
for(size_t i=0; i<scene->objects.size(); i++) {
draw_object(scene->objects[i]);
}
for(size_t i=0; i<scene->objects.size(); i++) {
draw_object(scene->objects[i]);
}
+}
+
+void MorphRenderer::draw_object(Object *object) const
+{
+ float t = (sin(time_sec) + 1) * 0.5;
+
+ if(t_loc != -1)
+ sprog->set_uniformf(t_loc, t);
+
+ Renderer::draw_object(object);
}
\ No newline at end of file
}
\ No newline at end of file