Sha256: c84d6cf405312be55c09161ae42a81373b91d5fc1780201bb3e9680bc40db960

Contents?: true

Size: 1.17 KB

Versions: 1

Compression:

Stored size: 1.17 KB

Contents

#include <pixlib/app.hpp>

namespace Pixlib {
  App::App() :
   scene()
  {  }

  App::~App() {
    for (LedCluster* i : led_clusters) {
      delete i;
    }
    led_clusters.clear();
  }

  void App::addFadeCandy(FadeCandy* fc) {
    LedCluster *lc = new LedCluster(fc);

    scene.addCluster(lc);
    led_clusters.push_back(lc);
  }

  float App::scene_fps() {
    return scene.getFps();
  }

  float App::scene_render_time() {
    return scene.get_render_time();
  }

  float App::led_render_time() {
    float total = 0;
    for (LedCluster* i : led_clusters) {
      total += i->render_time();
    }
    return total;
  }

  void App::ProcessMouseMovement(int xoffset, int yoffset) {
    camera.ProcessMouseMovement(xoffset, yoffset);
  }


  void App::ProcessMouseScroll(float x) {
    camera.ProcessMouseScroll(x);
  }

  void App::move_perspective_to_camera() {
    viewed_from.moveTowards(camera, scene.getTimeDelta()*0.8);
  }

  void App::tick(Pattern* pattern, int width, int height) {
    camera.rotate(scene_render_time() * 5);

    for (LedCluster* led_cluster : led_clusters) {
      led_cluster->render(viewed_from, *pattern);
    }
    //scene.render(camera, width, height);
  }
}

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
pixo-0.1.1 ext/pixo/pixlib/src/app.cpp