Browse Source

De-inlined Light::clean().

vectorfields
Vladimír Vondruš 14 years ago
parent
commit
be98437682
  1. 1
      src/CMakeLists.txt
  2. 26
      src/Light.cpp
  3. 6
      src/Light.h

1
src/CMakeLists.txt

@ -12,6 +12,7 @@ set(Magnum_SRCS
AbstractShaderProgram.cpp
Camera.cpp
IndexedMesh.cpp
Light.cpp
Mesh.cpp
Scene.cpp
Shader.cpp

26
src/Light.cpp

@ -0,0 +1,26 @@
/*
Copyright © 2010, 2011, 2012 Vladimír Vondruš <mosra@centrum.cz>
This file is part of Magnum.
Magnum is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License version 3
only, as published by the Free Software Foundation.
Magnum is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License version 3 for more details.
*/
#include "Light.h"
namespace Magnum {
void Light::setClean() {
if(!isDirty()) return;
_position = transformation(true).at(3).xyz();
Object::setClean();
}
}

6
src/Light.h

@ -47,11 +47,7 @@ class Light: public Object {
/**
* Recomputes light position.
*/
inline virtual void setClean() {
if(!isDirty()) return;
_position = transformation(true).at(3).xyz();
Object::setClean();
}
virtual void setClean();
private:
Vector3 _position;

Loading…
Cancel
Save