X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=tools%2Fviewer.cpp;h=fde5b8d4e757d1defdf37d7149bf2d7776387769;hb=147ec71f9fe3bd6b7ce25a7b74122f0282a99393;hp=b0e3420dab0395394f02ec0aa8525a8b04bff089;hpb=23d4100160bfa33359ce297b6b36244abcaa5f82;p=libs%2Fgl.git diff --git a/tools/viewer.cpp b/tools/viewer.cpp index b0e3420d..fde5b8d4 100644 --- a/tools/viewer.cpp +++ b/tools/viewer.cpp @@ -11,8 +11,8 @@ #include #include #include +#include #include -#include #include #include #include @@ -71,7 +71,7 @@ private: GL::Renderable *renderable; GL::AnimatedObject *anim_object; GL::AnimationPlayer *anim_player; - GL::Light light; + GL::DirectionalLight light; GL::Lighting lighting; GL::Camera camera; float yaw; @@ -204,6 +204,7 @@ Viewer::Viewer(int argc, char **argv): { GL::SequenceTemplate *tmpl = load(opts.renderable_name); GL::SequenceBuilder bld(*tmpl); + bld.set_debug_name(FS::basename(opts.renderable_name)); sequence = bld.build(view); } else @@ -226,19 +227,20 @@ Viewer::Viewer(int argc, char **argv): mouse.signal_button_release.connect(sigc::bind_return(sigc::mem_fun(this, &Viewer::button_release), false)); mouse.signal_axis_motion.connect(sigc::bind_return(sigc::mem_fun(this, &Viewer::axis_motion), false)); - light.set_position(GL::Vector4(0, 0, 1, 0)); + light.set_direction(GL::Vector3(0, 0, -1)); lighting.attach(light); + camera.set_debug_name("Camera"); camera.set_up_direction(GL::Vector3(0, 0, 1)); update_camera(); if(!sequence) { sequence = new GL::Sequence(); + sequence->set_debug_name("Sequence"); GL::Sequence::Step &step = sequence->add_step(0, *renderable); step.set_lighting(&lighting); step.set_depth_test(GL::LEQUAL); - step.set_blend(GL::Blend(GL::SRC_ALPHA, GL::ONE_MINUS_SRC_ALPHA)); } view.set_content(sequence); @@ -368,7 +370,7 @@ void Viewer::update_light() float sy = sin(light_yaw); float cp = cos(light_pitch); float sp = sin(light_pitch); - light.set_position(GL::Vector4(-cy*cp, -sy*cp, -sp, 0)); + light.set_direction(GL::Vector3(cy*cp, sy*cp, sp)); }