Index: /orxonox/trunk/src/lib/collision_detection/obb_tree.cc
===================================================================
--- /orxonox/trunk/src/lib/collision_detection/obb_tree.cc	(revision 4670)
+++ /orxonox/trunk/src/lib/collision_detection/obb_tree.cc	(revision 4671)
@@ -51,5 +51,5 @@
     transparentMaterial[i] = new Material();
     transparentMaterial[i]->setIllum(3);
-    transparentMaterial[i]->setTransparency(0.5);
+    transparentMaterial[i]->setTransparency(0.2);
   }
   transparentMaterial[0]->setAmbient(0.0, 0.3, 0.0);
Index: /orxonox/trunk/src/lib/collision_detection/obb_tree_node.cc
===================================================================
--- /orxonox/trunk/src/lib/collision_detection/obb_tree_node.cc	(revision 4670)
+++ /orxonox/trunk/src/lib/collision_detection/obb_tree_node.cc	(revision 4671)
@@ -761,4 +761,39 @@
     glEnd();
 
+
+    if( drawMode & DRAW_BV_BLENDED)
+    {
+      glBegin(GL_QUADS);
+      glVertex3f(cen.x - axis[0].x * len[0] + axis[1].x * len[1] - axis[2].x * len[2],
+                 cen.y - axis[0].y * len[0] + axis[1].y * len[1] - axis[2].y * len[2],
+                 cen.z - axis[0].z * len[0] + axis[1].z * len[1] - axis[2].z * len[2]);
+      glVertex3f(cen.x + axis[0].x * len[0] + axis[1].x * len[1] - axis[2].x * len[2],
+                 cen.y + axis[0].y * len[0] + axis[1].y * len[1] - axis[2].y * len[2],
+                 cen.z + axis[0].z * len[0] + axis[1].z * len[1] - axis[2].z * len[2]);
+      glVertex3f(cen.x + axis[0].x * len[0] - axis[1].x * len[1] - axis[2].x * len[2],
+                 cen.y + axis[0].y * len[0] - axis[1].y * len[1] - axis[2].y * len[2],
+                 cen.z + axis[0].z * len[0] - axis[1].z * len[1] - axis[2].z * len[2]);
+      glVertex3f(cen.x - axis[0].x * len[0] - axis[1].x * len[1] - axis[2].x * len[2],
+                 cen.y - axis[0].y * len[0] - axis[1].y * len[1] - axis[2].y * len[2],
+                 cen.z - axis[0].z * len[0] - axis[1].z * len[1] - axis[2].z * len[2]);
+      glEnd();
+
+      glBegin(GL_QUADS);
+      glVertex3f(cen.x - axis[0].x * len[0] + axis[1].x * len[1] + axis[2].x * len[2],
+                 cen.y - axis[0].y * len[0] + axis[1].y * len[1] + axis[2].y * len[2],
+                 cen.z - axis[0].z * len[0] + axis[1].z * len[1] + axis[2].z * len[2]);
+      glVertex3f(cen.x + axis[0].x * len[0] + axis[1].x * len[1] + axis[2].x * len[2],
+                 cen.y + axis[0].y * len[0] + axis[1].y * len[1] + axis[2].y * len[2],
+                 cen.z + axis[0].z * len[0] + axis[1].z * len[1] + axis[2].z * len[2]);
+      glVertex3f(cen.x + axis[0].x * len[0] - axis[1].x * len[1] + axis[2].x * len[2],
+                 cen.y + axis[0].y * len[0] - axis[1].y * len[1] + axis[2].y * len[2],
+                 cen.z + axis[0].z * len[0] - axis[1].z * len[1] + axis[2].z * len[2]);
+      glVertex3f(cen.x - axis[0].x * len[0] - axis[1].x * len[1] + axis[2].x * len[2],
+                 cen.y - axis[0].y * len[0] - axis[1].y * len[1] + axis[2].y * len[2],
+                 cen.z - axis[0].z * len[0] - axis[1].z * len[1] + axis[2].z * len[2]);
+      glEnd();
+    }
+
+
     if( drawMode & DRAW_BV_BLENDED)
       this->obbTree->getMaterial(treeIndex)->select();
@@ -771,4 +806,7 @@
     if( !(drawMode & DRAW_SINGLE && depth != 0))
     {
+      if( drawMode & DRAW_BV_BLENDED)
+        this->obbTree->getTransparentMaterial(treeIndex)->select();
+
     /* now draw the separation plane */
     Vector a1 = this->bvElement->axis[(this->longestAxisIndex + 1)%3];
@@ -783,4 +821,8 @@
     glVertex3f(c.x + a1.x * l1 - a2.x * l2, c.y + a1.y * l1- a2.y * l2, c.z + a1.z * l1 - a2.z * l2);
     glEnd();
+
+    if( drawMode & DRAW_BV_BLENDED)
+      this->obbTree->getMaterial(treeIndex)->select();
+
     }
   }
Index: /orxonox/trunk/src/subprojects/collision_detection/collision_detection.cc
===================================================================
--- /orxonox/trunk/src/subprojects/collision_detection/collision_detection.cc	(revision 4670)
+++ /orxonox/trunk/src/subprojects/collision_detection/collision_detection.cc	(revision 4671)
@@ -232,4 +232,21 @@
 }
 
+
+int blendedBox(GtkWidget* nonInterest, void* widget)
+{
+  if(drawMode & DRAW_BV_BLENDED)
+  {
+    int temp = drawMode & DRAW_BV_BLENDED;
+    drawMode ^= temp;
+    printf("Removing OBB Polygons\n");
+  }
+  else
+  {
+    drawMode |= DRAW_BV_BLENDED;
+    printf("Drawing OBB Polygons\n");
+  }
+}
+
+
 int treeDepth(GtkWidget* nonInterest, void* widget)
 {
@@ -258,7 +275,12 @@
     Box* windowBox = new Box('v');
     {
-      CheckButton* BoxPolygons = new CheckButton("BoxPolygons");
+      CheckButton* BoxPolygons = new CheckButton("Draw OBB Polygons");
       BoxPolygons->connectSignal("clicked", (void*)BoxPolygons, boxPolygons);
       windowBox->fill(BoxPolygons);
+
+
+      CheckButton* BlendedBox = new CheckButton("Draw OBB Blended");
+      BlendedBox->connectSignal("clicked", (void*)BlendedBox, blendedBox);
+      windowBox->fill(BlendedBox);
 
 
@@ -266,4 +288,5 @@
       SeperatingPlanes->connectSignal("clicked", (void*)SeperatingPlanes, seperatingPlanes);
       windowBox->fill(SeperatingPlanes);
+
 
       Slider* TreeDepth = new Slider("TreeDepth", 0, 5);
