This repository has been archived on 2025-03-10. You can view files and clone it, but cannot push or open issues or pull requests.
Grayson Riffe (Desktop) 9158de2f39 Added Cubemap
2021-09-06 01:06:47 -05:00

38 lines
748 B
C++

#pragma once
#include "Model.h"
#include "Assets.h"
#include "Utility.h"
namespace nf {
class Shader;
class Entity {
public:
Entity();
void create(Asset* modelAsset, Asset* textureAsset = nullptr);
bool isConstructed();
void setPosition(double x, double y, double z);
void setPosition(const Vec3& position);
void setRotation(double x, double y, double z);
void setRotation(const Vec3& rotation);
void setScale(double x);
void setScale(double x, double y, double z);
void setScale(const Vec3& scale);
void bind(Shader* shader);
Model* getModel() const;
~Entity();
private:
void setModelMatrix(Shader* shader);
bool m_constructed;
Model* m_model;
Vec3 m_position;
Vec3 m_rotation;
Vec3 m_scale;
};
}