Index: /branches/network/src/lib/graphics/Makefile.am
===================================================================
--- /branches/network/src/lib/graphics/Makefile.am	(revision 6740)
+++ /branches/network/src/lib/graphics/Makefile.am	(revision 6741)
@@ -11,5 +11,7 @@
 			   text_engine/text_engine.cc \
 			   text_engine/text.cc \
-			   text_engine/font.cc
+			   text_engine/font.cc \
+			   effects/graphics_effect.cc \
+			   effects/fog_effect.cc
 
 noinst_HEADERS = graphics_engine.h \
@@ -20,5 +22,7 @@
 		 text_engine/text_engine.h \
 		 text_engine/text.h \
-		 text_engine/font.h
+		 text_engine/font.h \
+		 effects/graphics_effect.h \
+		 effects/fog_effect.h
 
 
Index: /branches/network/src/lib/graphics/effects/fog_effect.cc
===================================================================
--- /branches/network/src/lib/graphics/effects/fog_effect.cc	(revision 6741)
+++ /branches/network/src/lib/graphics/effects/fog_effect.cc	(revision 6741)
@@ -0,0 +1,80 @@
+
+
+/*
+   orxonox - the future of 3D-vertical-scrollers
+
+   Copyright (C) 2004 orx
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+### File Specific:
+   main-programmer: Patrick Boenzli
+*/
+
+#define DEBUG_SPECIAL_MODULE DEBUG_MODULE_GRAPHICS
+
+#include "fog_effect.h"
+
+#include "load_param.h"
+#include "factory.h"
+
+
+using namespace std;
+
+CREATE_FACTORY(FogEffect, CL_LIGHT);
+
+
+
+/**
+ *  default constructor
+ * @param root The XML-element to load the FogEffect from
+ */
+ FogEffect::FogEffect(const TiXmlElement* root)
+{
+
+  if (root != NULL)
+    this->loadParams(root);
+}
+
+
+/**
+ *  destroys a FogEffect
+ */
+FogEffect::~FogEffect()
+{}
+
+
+/**
+ * @param root The XML-element to load the FogEffect from
+ */
+void FogEffect::loadParams(const TiXmlElement* root)
+{
+  GraphicsEffect::loadParams(root);
+
+//   LoadParam(root, "diffuse-color", this, FogEffect, setDiffuseColor)
+//       .describe("sets the diffuse color of the FogEffect (red [0-1], green [0-1], blue [0-1])");
+}
+
+
+/**
+ * initializes the fog effect
+ */
+bool FogEffect::init()
+{}
+
+
+/**
+ * activates the fog effect
+ */
+bool FogEffect::activate()
+{}
+
+
+/**
+ * deactivates the fog effect
+ */
+bool FogEffect::deactivate()
+{}
Index: /branches/network/src/lib/graphics/effects/fog_effect.h
===================================================================
--- /branches/network/src/lib/graphics/effects/fog_effect.h	(revision 6741)
+++ /branches/network/src/lib/graphics/effects/fog_effect.h	(revision 6741)
@@ -0,0 +1,29 @@
+/**
+ * @file fog_effect.h
+ *  atmospheric fog
+ */
+
+#ifndef _FOG_EFFECT
+#define _FOG_EFFECT
+
+#include "graphics_effect.h"
+
+class TiXmlElement;
+
+//! A class that handles FogEffects. The FogEffectManager operates on this.
+class FogEffect : public GraphicsEffect
+{
+  public:
+    FogEffect(const TiXmlElement* root = NULL);
+    virtual ~FogEffect();
+
+    virtual void loadParams(const TiXmlElement* root);
+
+    virtual bool init();
+
+    virtual bool activate();
+    virtual bool deactivate();
+};
+
+
+#endif /* _FOG_EFFECT */
Index: /branches/network/src/lib/graphics/effects/graphics_effect.cc
===================================================================
--- /branches/network/src/lib/graphics/effects/graphics_effect.cc	(revision 6741)
+++ /branches/network/src/lib/graphics/effects/graphics_effect.cc	(revision 6741)
@@ -0,0 +1,67 @@
+
+
+/*
+   orxonox - the future of 3D-vertical-scrollers
+
+   Copyright (C) 2004 orx
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+### File Specific:
+   main-programmer: Patrick Boenzli
+   co-programmer: ...
+*/
+
+#define DEBUG_SPECIAL_MODULE DEBUG_MODULE_GRAPHICS
+
+
+#include "graphics_effect.h"
+
+#include "load_param.h"
+
+
+using namespace std;
+
+
+
+/**
+ * @param root The XML-element to load the GraphicsEffect from
+
+  @todo what to do, if no GraphicsEffect-Slots are open anymore ???
+ */
+GraphicsEffect::GraphicsEffect(const TiXmlElement* root)
+{
+
+  if (root != NULL)
+    this->loadParams(root);
+}
+
+
+/**
+ *  destroys a GraphicsEffect
+ */
+GraphicsEffect::~GraphicsEffect()
+{}
+
+
+/**
+ * @param root The XML-element to load the GraphicsEffect from
+ */
+void GraphicsEffect::loadParams(const TiXmlElement* root)
+{
+  BaseObject::loadParams(root);
+
+//   LoadParam(root, "diffuse-color", this, GraphicsEffect, setDiffuseColor)
+//       .describe("sets the diffuse color of the GraphicsEffect (red [0-1], green [0-1], blue [0-1])");
+
+}
+
+
+/**
+ *  initializes the graphics effect
+ */
+bool GraphicsEffect::init()
+{}
Index: /branches/network/src/lib/graphics/effects/graphics_effect.h
===================================================================
--- /branches/network/src/lib/graphics/effects/graphics_effect.h	(revision 6741)
+++ /branches/network/src/lib/graphics/effects/graphics_effect.h	(revision 6741)
@@ -0,0 +1,29 @@
+/**
+ * @file graphics_effect.h
+ *  abstract type of graphical effects
+ */
+
+#ifndef _GRAPHICS_EFFECT
+#define _GRAPHICS_EFFECT
+
+#include "base_object.h"
+
+class TiXmlElement;
+
+//! A class that handles GraphicsEffects. The GraphicsEffectManager operates on this.
+class GraphicsEffect : public BaseObject
+{
+  public:
+    GraphicsEffect(const TiXmlElement* root = NULL);
+    virtual ~GraphicsEffect();
+
+    virtual void loadParams(const TiXmlElement* root);
+
+    virtual bool init();
+
+    virtual bool activate() = 0;
+    virtual bool deactivate() = 0;
+};
+
+
+#endif /* _GRAPHICS_EFFECT */
