aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/LeashKnotRenderer.cpp
blob: b210379fc229b9892cdcb4d00a9b53b49a2fdd5a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include "stdafx.h"
#include "LeashKnotRenderer.h"
#include "LeashKnotModel.h"

ResourceLocation LeashKnotRenderer::KNOT_LOCATION = ResourceLocation(TN_ITEM_LEASHKNOT);

LeashKnotRenderer::LeashKnotRenderer() : EntityRenderer()
{
	model = new LeashKnotModel();
}

LeashKnotRenderer::~LeashKnotRenderer()
{
	delete model;
}

void LeashKnotRenderer::render(shared_ptr<Entity> entity, double x, double y, double z, float rot, float a)
{
    glPushMatrix();
    glDisable(GL_CULL_FACE);

    glTranslatef((float) x, (float) y, (float) z);

    float scale = 1 / 16.0f;
    glEnable(GL_RESCALE_NORMAL);
    glScalef(-1, -1, 1);

    glEnable(GL_ALPHA_TEST);

    bindTexture(entity);
    model->render(entity, 0, 0, 0, 0, 0, scale, true);

    glPopMatrix();
}

ResourceLocation *LeashKnotRenderer::getTextureLocation(shared_ptr<Entity> entity)
{
    return &KNOT_LOCATION;
}