X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Frenderer.cpp;h=af0d087398da9010816a0cce0f8bf563dc1f69d0;hb=db2fd517dcd215e9d16345287d413f2a64f5ba03;hp=5108ff4c8a48b26ba1283bb66027d4cc17899a56;hpb=9d6c244eb728336c64ee23d5c55e45c6696aa65c;p=libs%2Fgl.git diff --git a/source/renderer.cpp b/source/renderer.cpp index 5108ff4c..af0d0873 100644 --- a/source/renderer.cpp +++ b/source/renderer.cpp @@ -11,6 +11,7 @@ #include "renderer.h" #include "texture.h" #include "texturing.h" +#include "texunit.h" #include "vertexarray.h" #include "windingtest.h" @@ -74,6 +75,11 @@ void Renderer::set_texturing(const Texturing *t) state->texture = 0; } +unsigned Renderer::allocate_effect_texunit() +{ + return --state->lowest_effect_texunit; +} + void Renderer::set_material(const Material *m) { state->material = m; @@ -291,12 +297,14 @@ void Renderer::apply_state() Renderer::State::State(): texture(0), texturing(0), + lowest_effect_texunit(TexUnit::get_n_units()), material(0), lighting(0), shprog(0), shdata_count(0), mesh(0), - winding_test(0) + winding_test(0), + reverse_winding(false) { }