5 use Module::Pluggable search_path => ['Display::Plugins'];
6 use Clutter qw( :init );
9 use lib "$FindBin::Bin/lib";
14 'full|f!' => \$full_screen,
17 my $stage = Clutter::Stage->get_default();
18 $stage->set_color(Clutter::Color->parse('Black'));
19 $stage->signal_connect('key-press-event' => sub { Clutter->main_quit() });
24 $stage->set_size(800, 600);
27 my @modules = loadModules();
34 for my $module (@modules) {
42 for my $module (plugins()) {
43 warn "Considering $module\n";
46 die "Failed to load plugin: $module ($@)\n";
49 push @modules, $module->new($stage);
57 my $timeline = $alpha->get_timeline();
59 return int($timeline->get_progress() * Clutter::Alpha->MAX_ALPHA);
63 return Clutter::Alpha->smoothstep_dec($_[0]);
66 return Clutter::Alpha->smoothstep_inc($_[0]);