blob: 02a5f54a82b58e83b3418d2b71cb746f4dee9786 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#include "RendererEntity.hpp"
#include <glm/gtc/matrix_transform.hpp>
#include <optick.h>
#include "Entity.hpp"
#include "World.hpp"
RendererEntity::RendererEntity(unsigned int id): entityId(id) {}
void RendererEntity::Render(std::shared_ptr<Gal::Pipeline> pipeline, const World *world) {
OPTICK_EVENT();
glm::mat4 model = glm::mat4(1.0);
const Entity &entity = world->GetEntity(entityId);
model = glm::translate(model, entity.pos.glm());
model = glm::translate(model, glm::vec3(0, entity.height / 2.0, 0));
model = glm::scale(model, glm::vec3(entity.width, entity.height, entity.width));
pipeline->SetShaderParameter("model", model);
pipeline->SetShaderParameter("color", entity.renderColor);
}
|