X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Funiform.cpp;h=37868e794cb762200d7706f3c46ad74207bfd07b;hp=641552e7d878b67c3ddcdd007a7b1e7ab5f5eccf;hb=5172d32d67595ea0b70184fadcfcb8e023cccbc8;hpb=249ce48a66074d0f0b6e23caeb77fad7c3d238ae diff --git a/source/uniform.cpp b/source/uniform.cpp index 641552e7..37868e79 100644 --- a/source/uniform.cpp +++ b/source/uniform.cpp @@ -1,10 +1,11 @@ /* $Id$ This file is part of libmspgl -Copyright © 2007 Mikko Rasa, Mikkosoft Productions +Copyright © 2007, 2010-2011 Mikko Rasa, Mikkosoft Productions Distributed under the LGPL */ +#include #include "arb_shader_objects.h" #include "uniform.h" @@ -94,5 +95,21 @@ Uniform4f *Uniform4f::clone() const return new Uniform4f(v[0], v[1], v[2], v[3]); } + +UniformMatrix4x4f::UniformMatrix4x4f(const float *vp) +{ + std::copy(vp, vp+16, v); +} + +void UniformMatrix4x4f::apply(int index) const +{ + glUniformMatrix4fvARB(index, 1, false, v); +} + +UniformMatrix4x4f *UniformMatrix4x4f::clone() const +{ + return new UniformMatrix4x4f(v); +} + } // namespace GL } // namespace Msp