Index: branches/network/src/lib/graphics/importer/vertex_array_model.cc
===================================================================
--- branches/network/src/lib/graphics/importer/vertex_array_model.cc	(revision 6636)
+++ branches/network/src/lib/graphics/importer/vertex_array_model.cc	(revision 6654)
@@ -305,4 +305,5 @@
     this->addColor(.125,.436,.246); ///FIXME
   }
+
   for (unsigned int loopNumber = 0; loopNumber <= loops; ++loopNumber)
   {
@@ -326,4 +327,5 @@
     }
   }
+
   for (unsigned int loopSegmentNumber = 0; loopSegmentNumber < segmentsPerLoop; ++loopSegmentNumber)
   {
@@ -331,4 +333,5 @@
     this->addIndice(segmentsPerLoop + loopSegmentNumber);
   }
+
   for (unsigned int loopNumber = 0; loopNumber < loops; ++loopNumber)
   {
Index: branches/network/src/lib/network/network_manager.cc
===================================================================
--- branches/network/src/lib/network/network_manager.cc	(revision 6636)
+++ branches/network/src/lib/network/network_manager.cc	(revision 6654)
@@ -49,5 +49,5 @@
   this->netStreamList = NULL;
   this->syncList = NULL;
-  this->tmpStream = NULL;
+  this->defaultSyncStream = NULL;
 
   this->hostID = -1;
@@ -98,5 +98,5 @@
   }
 
-  this->tmpStream = new NetworkStream(ipAddress);
+  this->defaultSyncStream = new NetworkStream(ipAddress);
   return 1;
 }
@@ -111,5 +111,5 @@
   this->hostID = 0;
   this->bGameServer = true;
-  this->tmpStream = new NetworkStream(port);
+  this->defaultSyncStream = new NetworkStream(port);
   this->bGameServer = true;
   SDL_Delay(20);
@@ -126,6 +126,6 @@
 {
   /* creating a new network stream, it will register itself automaticaly to the class list */
-  this->tmpStream = new NetworkStream(address);
-  this->tmpStream->connectSynchronizeable(sync);
+  this->defaultSyncStream = new NetworkStream(address);
+  this->defaultSyncStream->connectSynchronizeable(sync);
 }
 
@@ -142,5 +142,5 @@
 void NetworkManager::connectSynchronizeable(Synchronizeable& sync)
 {
-  this->tmpStream->connectSynchronizeable(sync);
+  this->defaultSyncStream->connectSynchronizeable(sync);
 }
 
Index: branches/network/src/lib/network/network_manager.h
===================================================================
--- branches/network/src/lib/network/network_manager.h	(revision 6636)
+++ branches/network/src/lib/network/network_manager.h	(revision 6654)
@@ -51,4 +51,7 @@
     void synchronize();
 
+    inline NetworkStream* getDefaultSyncStream() { return this->defaultSyncStream; }
+
+
   private:
     NetworkManager();
@@ -59,5 +62,5 @@
     const std::list<BaseObject*>*    syncList;                // list of synchronizeables
     static NetworkManager*           singletonRef;            //!< Pointer to the only instance of this Class
-    NetworkStream*                   tmpStream;               //!< FIXME: this is only for testing purposes
+    NetworkStream*                   defaultSyncStream;       //!< FIXME: this is only for testing purposes
     int                              hostID;                  //!< The Host-ID of the Manager
     bool                             bGameServer;             //!< true if it is a server
Index: branches/network/src/lib/network/synchronizeable.h
===================================================================
--- branches/network/src/lib/network/synchronizeable.h	(revision 6636)
+++ branches/network/src/lib/network/synchronizeable.h	(revision 6654)
@@ -163,5 +163,6 @@
 
 class Synchronizeable : virtual public BaseObject
-  {
+{
+
   public:
     Synchronizeable();
@@ -179,31 +180,36 @@
     bool isOutOfSync();
     bool requestedSync();
+
     inline void setUniqueID( int id ){ uniqueID = id; }
-    inline int  getUniqueID() const { return uniqueID; };
+    inline int  getUniqueID() const { return uniqueID; }
+    inline int getHostID() { return this->hostID; }
+
+    inline int getOwner(){ return owner; }
+    inline void setOwner(int owner){ this->owner = owner; }
+
+    /** @returns true if this Synchronizeable has to be synchronized over network */
+    inline bool beSynchronized() { return this->bSynchronize; }
+    /** @param bSynchronize sets the Synchronizeable to be sunchronized or not */
+    inline void setSynchronized(bool bSynchronize) { this->bSynchronize = bSynchronize; }
+
     inline void requestSync( int hostID ){ this->synchronizeRequests.push_back( hostID ); }
     inline int getRequestSync( void ){ if ( this->synchronizeRequests.size()>0 ){ int n = *(synchronizeRequests.begin()); synchronizeRequests.pop_front(); return n; } else { return -1; } };
-    inline int getHostID() { return this->hostID; }
-
-    inline int getOwner(){ return owner; }
-    inline void setOwner(int owner){ this->owner = owner; }
 
     inline void setNetworkStream(NetworkStream* stream) { this->networkStream = stream; }
 
+
+  protected:
+    NetworkStream*    networkStream;
+    int               state;
+
+
   private:
-
     int               uniqueID;
-
-
-
-    //static std::vector<Synchronizeable*> classList;
-    int owner;
-    int hostID;
+    int               owner;
+    int               hostID;
+    bool              bSynchronize;
 
     std::list<int> synchronizeRequests;
 
-  protected:
-    NetworkStream* networkStream;
-    int state;
-
-  };
+};
 #endif /* _SYNCHRONIZEABLE_H */
Index: branches/network/src/world_entities/planet.cc
===================================================================
--- branches/network/src/world_entities/planet.cc	(revision 6636)
+++ branches/network/src/world_entities/planet.cc	(revision 6654)
@@ -27,4 +27,6 @@
 #include "network_game_manager.h"
 #include "converter.h"
+#include "vertex_array_model.h"
+#include "primitive_model.h"
 
 using namespace std;
@@ -44,7 +46,20 @@
 
   this->material = new Material();
-  this->material->setIllum(10);
+  //this->material->setIllum(20);
+  //this->material->setAmbient(0.1, 0.1, 0.1);
+
+
+
+      //st float radius, const unsigned int loops, const unsigned int segmentsPerLoop
 
   this->loadParams(root);
+
+//   VertexArrayModel* model = new VertexArrayModel();
+//   model->spiralSphere(this->size, 10, 10);
+//   this->setModel(model);
+//   model->debug();
+//
+  PrimitiveModel* model = new PrimitiveModel(PRIM_SPHERE, this->size, 50);
+  this->setModel(model);
 }
 
@@ -98,6 +113,9 @@
 {
 
+
   glMatrixMode(GL_MODELVIEW);
   glPushMatrix();
+
+  glShadeModel(GL_SMOOTH);
 
   /* translate */
@@ -109,72 +127,7 @@
   this->material->select();
 
-
-  Vector c;
-  double r = this->size;
-  int n = 200;
-  int method = 1;
-  double theta1 = 0;
-  double theta2 = 2 * M_PI;
-  double phi1 = -M_PI/2.0;
-  double phi2 = M_PI/2.0;
-
-
-  int i,j;
-  double jdivn,j1divn,idivn,dosdivn,unodivn=1/(double)n,ndiv2=(double)n/2,t1,t2,t3,cost1,cost2,cte1,cte3;
-  cte3 = (theta2-theta1)/n;
-  cte1 = (phi2-phi1)/ndiv2;
-  dosdivn = 2*unodivn;
-  Vector e,p,e2,p2;
-
-
-  t2=phi1;
-  cost2=cos(phi1);
-  j1divn=0;
-  for (j=0;j<ndiv2;j++) {
-    t1 = t2;//t1 = phi1 + j * cte1;
-    t2 += cte1;//t2 = phi1 + (j + 1) * cte1;
-    t3 = theta1 - cte3;
-    cost1 = cost2;//cost1=cos(t1);
-    cost2 = cos(t2);
-    e.y = sin(t1);
-    e2.y = sin(t2);
-    p.y = c.y + r * e.y;
-    p2.y = c.y + r * e2.y;
-
-    if (method == 0)
-      glBegin(GL_QUAD_STRIP);
-    else
-      glBegin(GL_TRIANGLE_STRIP);
-
-    idivn=0;
-    jdivn=j1divn;
-    j1divn+=dosdivn;//=2*(j+1)/(double)n;
-    for (i=0;i<=n;i++) {
-       //t3 = theta1 + i * (theta2 - theta1) / n;
-      t3 += cte3;
-      e.x = cost1 * cos(t3);
-       //e.y = sin(t1);
-      e.z = cost1 * sin(t3);
-      p.x = c.x + r * e.x;
-       //p.y = c.y + r * e.y;
-      p.z = c.z + r * e.z;
-      glNormal3f(e.x,e.y,e.z);
-      glTexCoord2f(idivn,jdivn);
-      glVertex3f(p.x,p.y,p.z);
-
-
-      e2.x = cost2 * cos(t3);
-       //e.y = sin(t2);
-      e2.z = cost2 * sin(t3);
-      p2.x = c.x + r * e2.x;
-       //p.y = c.y + r * e.y;
-      p2.z = c.z + r * e2.z;
-      glNormal3f(e2.x,e2.y,e2.z);
-      glTexCoord2f(idivn,j1divn);
-      glVertex3f(p2.x,p2.y,p2.z);
-      idivn += unodivn;
-    }
-    glEnd();
-  }
+//   /WorldEntity::draw();
+  this->getModel(0)->draw();
+ // static_cast<VertexArrayModel*>(this->getModel(0))->debug();
 }
 
Index: branches/network/src/world_entities/projectiles/laser.cc
===================================================================
--- branches/network/src/world_entities/projectiles/laser.cc	(revision 6636)
+++ branches/network/src/world_entities/projectiles/laser.cc	(revision 6654)
@@ -26,4 +26,6 @@
 #include "particle_emitter.h"
 #include "sprite_particles.h"
+
+#include "assert.h"
 
 
