Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMitchell Stokes <mogurijin@gmail.com>2014-03-28 09:32:06 +0400
committerMitchell Stokes <mogurijin@gmail.com>2014-03-28 09:32:06 +0400
commitdf9d6737b912b71fb91579b43ea6c7786d88f803 (patch)
tree0466230d0ce29d297888826f623426728243a995 /source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h
parent3ec0c73211d6786664a303a7413cae4e67ef6cf5 (diff)
BGE code cleanup: Removing OpenGL and bf_gpu code from KX_LightObject
The ultimate goal is to only allow the rasterizer to handle OpenGL and bf_gpu calls. This commit creates a RAS_ILightObject interface and a RAS_OpenGLLight implementation.
Diffstat (limited to 'source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h')
-rw-r--r--source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h
index ae9e89cd8cc..1334ddb2a26 100644
--- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h
+++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h
@@ -46,6 +46,7 @@ using namespace std;
class RAS_IStorage;
class RAS_ICanvas;
+class RAS_OpenGLLight;
#define RAS_MAX_TEXCO 8 /* match in BL_Material */
#define RAS_MAX_ATTRIB 16 /* match in BL_BlenderShader */
@@ -117,7 +118,7 @@ class RAS_OpenGLRasterizer : public RAS_IRasterizer
/* Render tools */
void *m_clientobject;
void *m_auxilaryClientInfo;
- std::vector<struct RAS_LightObject *> m_lights;
+ std::vector<RAS_OpenGLLight *> m_lights;
int m_lastlightlayer;
bool m_lastlighting;
void *m_lastauxinfo;
@@ -315,9 +316,11 @@ public:
bool RayHit(struct KX_ClientObjectInfo *client, class KX_RayCast *result, void * const data);
bool NeedRayCast(struct KX_ClientObjectInfo *) { return true; }
- void AddLight(struct RAS_LightObject *lightobject);
- void RemoveLight(struct RAS_LightObject *lightobject);
- int ApplyLights(int objectlayer, const MT_Transform &viewmat);
+ RAS_ILightObject* CreateLight();
+ void AddLight(RAS_ILightObject* lightobject);
+
+ void RemoveLight(RAS_ILightObject* lightobject);
+ int ApplyLights(int objectlayer, const MT_Transform& viewmat);
void MotionBlur();