Sha256: b59957bb51cc79791d586b63c2b849308c0061bcfe4907877e3b420648d01b4c

Contents?: true

Size: 1.05 KB

Versions: 21

Compression:

Stored size: 1.05 KB

Contents

#pragma once
// Std. Includes
#include <string>
#include <map>
#include <vector>

// GL Includes
#include <opengl.h>
#include <pixlib/mesh.hpp>
#include <pixlib/shader.hpp>
#include <pixlib/drawable.hpp>

// Include GLM
#include <glm/glm.hpp>
#include <glm/gtc/matrix_transform.hpp>
#include <glm/gtc/type_ptr.hpp>

namespace Pixlib {
  class Cube : public Drawable
  {
  public:
    /*  Functions   */
    // Constructor, expects a filepath to a 3D model.
    Cube();
    Cube(const Texture& defaultTexture);

    // Draws the model, and thus all its meshes
    virtual void Draw(const Shader& shader);
    
    int  addInstance(glm::vec3 posDelta, glm::vec2 texDelta, glm::vec3 projDelta);
    void moveInstance(int instance, const glm::vec3& position);

    int numInstances();

    Texture getDefaultTexture();
  private:
    /*  Model Data  */
    std::vector<Mesh> meshes;
    Texture defaultTexture;

    /*  Functions   */
    // Loads a model with supported ASSIMP extensions from file and stores the resulting meshes in the meshes vector.
    void loadModel();
  };
}

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
pixo-0.4.5 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.4.4 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.4.3 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.4.2 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.4.1 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.4.0 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.3.2 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.3.1 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.3.0 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.2.6 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.2.5 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.2.4 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.2.3 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.2.2 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.2.1 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.2.0 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.1.4 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.1.3 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.1.2 ext/pixo/pixlib/include/pixlib/cube.hpp
pixo-0.1.1 ext/pixo/pixlib/include/pixlib/cube.hpp