Index: /orxonox/trunk/src/lib/collision_detection/bv_tree_node.h
===================================================================
--- /orxonox/trunk/src/lib/collision_detection/bv_tree_node.h	(revision 4701)
+++ /orxonox/trunk/src/lib/collision_detection/bv_tree_node.h	(revision 4702)
@@ -31,5 +31,5 @@
   virtual void collideWith(BVTreeNode* treeNode, PNode* nodeA, PNode* nodeB) = NULL;
 
-  virtual void drawBV(int depth, int drawMode) const = NULL;
+  virtual void drawBV(int depth, int drawMode) = NULL;
 
 
Index: /orxonox/trunk/src/lib/collision_detection/obb.h
===================================================================
--- /orxonox/trunk/src/lib/collision_detection/obb.h	(revision 4701)
+++ /orxonox/trunk/src/lib/collision_detection/obb.h	(revision 4702)
@@ -29,4 +29,5 @@
 
 
+
  public:
   Vector*          axis;                       //!< Axes of oriented box [x,y,z]
@@ -34,4 +35,6 @@
   float            covarianceMatrix[3][3];     //!< the covariance matrix
 
+  bool                bCollided;                  //!< is true if this obb has collided
+
 };
 
Index: /orxonox/trunk/src/lib/collision_detection/obb_tree.cc
===================================================================
--- /orxonox/trunk/src/lib/collision_detection/obb_tree.cc	(revision 4701)
+++ /orxonox/trunk/src/lib/collision_detection/obb_tree.cc	(revision 4702)
@@ -72,4 +72,9 @@
   transparentMaterial[3]->setAmbient(5.0, 3.0, 1.0);
   transparentMaterial[4]->setAmbient(1.0, 0.0, 7.0);
+
+  this->collisionMaterial = new Material();
+  this->collisionMaterial->setIllum(5);
+  this->collisionMaterial->setTransparency(0.5);
+  this->collisionMaterial->setAmbient(1.0, 1.0, 1.0);
 
   this->id = 0;
Index: /orxonox/trunk/src/lib/collision_detection/obb_tree.h
===================================================================
--- /orxonox/trunk/src/lib/collision_detection/obb_tree.h	(revision 4701)
+++ /orxonox/trunk/src/lib/collision_detection/obb_tree.h	(revision 4702)
@@ -32,6 +32,7 @@
     virtual void drawBV(int depth, int drawMode) const;
 
-    Material* getMaterial(unsigned int depth) { return material[depth%5]; }
-    Material* getTransparentMaterial(unsigned int depth) { return transparentMaterial[depth%5]; }
+    Material* getMaterial(unsigned int depth) { return this->material[depth%5]; }
+    Material* getTransparentMaterial(unsigned int depth) { return this->transparentMaterial[depth%5]; }
+    Material* getCollisionMaterial() { return this->collisionMaterial; }
     int getID() { return ++this->id;}
     inline OBBTreeNode* getRootNode() { return this->rootNode; }
@@ -47,4 +48,5 @@
     Material**           material;
     Material**           transparentMaterial;
+    Material*            collisionMaterial;
     int                  id;
 };
Index: /orxonox/trunk/src/lib/collision_detection/obb_tree_node.cc
===================================================================
--- /orxonox/trunk/src/lib/collision_detection/obb_tree_node.cc	(revision 4701)
+++ /orxonox/trunk/src/lib/collision_detection/obb_tree_node.cc	(revision 4702)
@@ -694,10 +694,12 @@
     }
 
-  return true;
-}
-
-
-
-void OBBTreeNode::drawBV(int depth, int drawMode) const
+    boxA->bCollided = true; /* use this ONLY!!!! for drawing operations */
+    boxB->bCollided = true;
+    return true;
+}
+
+
+
+void OBBTreeNode::drawBV(int depth, int drawMode)
 {
   this->obbTree->getMaterial(treeIndex)->select();
@@ -774,6 +776,10 @@
     float* len = this->bvElement->halfLength;
 
-    if( drawMode & DRAW_BV_BLENDED)
+    if( this->bvElement->bCollided)
+      this->obbTree->getCollisionMaterial()->select();
+    else if( drawMode & DRAW_BV_BLENDED)
       this->obbTree->getTransparentMaterial(treeIndex)->select();
+
+
 
     /* draw bounding box */
@@ -918,4 +924,6 @@
   }
 
+
+
   if( this->nodeLeft != NULL && depth != 0 )
     this->nodeLeft->drawBV(depth - 1, drawMode);
@@ -923,4 +931,5 @@
     this->nodeRight->drawBV(depth - 1, drawMode);
 
+  this->bvElement->bCollided = false;
 }
 
Index: /orxonox/trunk/src/lib/collision_detection/obb_tree_node.h
===================================================================
--- /orxonox/trunk/src/lib/collision_detection/obb_tree_node.h	(revision 4701)
+++ /orxonox/trunk/src/lib/collision_detection/obb_tree_node.h	(revision 4702)
@@ -36,5 +36,5 @@
     virtual void collideWith(BVTreeNode* treeNode, PNode* nodeA, PNode* nodeB);
 
-    virtual void drawBV(int depth, int drawMode) const;
+    virtual void drawBV(int depth, int drawMode);
 
     void debug(void) const;
@@ -52,5 +52,4 @@
     OBBTreeNode*        nodeLeft;                   //!< ref to the left tree node
     OBBTreeNode*        nodeRight;                  //!< ref to the right tree node
-
 
   private:
