Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 599 for code/branches/FICN/src


Ignore:
Timestamp:
Dec 17, 2007, 9:56:47 PM (17 years ago)
Author:
scheusso
Message:

ip address with —ip=address

Location:
code/branches/FICN/src
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • code/branches/FICN/src/network/GameStateManager.cc

    r590 r599  
    9393  retval->id=id++;
    9494  // reserve a little memory and increase it later on
    95   COUT(2) << "mallocing" << std::endl;
     95  //COUT(2) << "mallocing" << std::endl;
    9696  retval->data = (unsigned char*)malloc(memsize);
    97   COUT(2) << "malloced" << std::endl;
     97  //COUT(2) << "malloced" << std::endl;
    9898
    9999  // offset of memory functions
  • code/branches/FICN/src/network/Synchronisable.cc

    r592 r599  
    115115  int n=0;
    116116  for(i=syncList.begin(); n<datasize && i!=syncList.end(); ++i){
    117     COUT(2) << "size of variable: " << i->size << std::endl;
    118     COUT(2) << "size of variable: " << i->size << std::endl;
    119117    //COUT(2) << "size of variable: " << i->size << std::endl;
    120118    //(std::memcpy(retVal.data+n, (const void*)(&(i->size)), sizeof(int));
  • code/branches/FICN/src/orxonox/objects/SceneNode.cc

    r590 r599  
    2525    void SceneNode::loadParams(TiXmlElement* xmlElem)
    2626    {
    27         Ogre::SceneManager* mgr = orxonox::Orxonox::getSingleton()->getSceneManager();
    28 
    2927        if (xmlElem->Attribute("name") && xmlElem->Attribute("pos"))
    3028        {
    31                 std::string name = xmlElem->Attribute("name");
     29                name_ = xmlElem->Attribute("name");
    3230
    3331                std::vector<std::string> pos = tokenize(xmlElem->Attribute("pos"),",");
    34                 float x, y, z;
    35                 String2Number<float>(x, pos[0]);
    36                 String2Number<float>(y, pos[1]);
    37                 String2Number<float>(z, pos[2]);
     32                //float x, y, z_;
     33                String2Number<float>(x_, pos[0]);
     34                String2Number<float>(y_, pos[1]);
     35                String2Number<float>(z_, pos[2]);
    3836
    39         float sx = 1, sy = 1, sz = 1;
     37        sx_ = 1; sy_ = 1; sz_ = 1;
    4038        if (xmlElem->Attribute("scale"))
    4139        {
    4240                  pos = tokenize(xmlElem->Attribute("scale"),",");
    43                   String2Number<float>(sx, pos[0]);
    44                   String2Number<float>(sy, pos[1]);
    45                   String2Number<float>(sz, pos[2]);
     41                  String2Number<float>(sx_, pos[0]);
     42                  String2Number<float>(sy_, pos[1]);
     43                  String2Number<float>(sz_, pos[2]);
     44        }
     45        yaw_ = 0.0;
     46        if (xmlElem->Attribute("yaw"))
     47        {
     48          String2Number<float>(yaw_,xmlElem->Attribute("yaw"));
     49        }
     50        pitch_ = 0.0;
     51        if (xmlElem->Attribute("pitch"))
     52        {
     53          String2Number<float>(pitch_,xmlElem->Attribute("pitch"));
     54        }
     55        roll_ = 0.0;
     56        if (xmlElem->Attribute("roll"))
     57        {
     58          String2Number<float>(roll_,xmlElem->Attribute("roll"));
    4659        }
    4760
    48         float yaw = 0.0;
    49         if (xmlElem->Attribute("yaw"))
    50         {
    51           String2Number<float>(yaw,xmlElem->Attribute("yaw"));
    52         }
    53         float pitch = 0.0;
    54         if (xmlElem->Attribute("pitch"))
    55         {
    56           String2Number<float>(pitch,xmlElem->Attribute("pitch"));
    57         }
    58         float roll = 0.0;
    59         if (xmlElem->Attribute("roll"))
    60         {
    61           String2Number<float>(roll,xmlElem->Attribute("roll"));
    62         }
     61        if(xmlElem->Attribute("node"))
     62          nodeName_ = xmlElem->Attribute("node");
     63        else
     64          nodeName_ = "";
     65       
     66        create();
    6367
    64         Ogre::SceneNode *parentNode;
    65         if (xmlElem->Attribute("node"))
    66           parentNode = mgr->getSceneNode(xmlElem->Attribute("node"));
    67         else
    68           parentNode = mgr->getRootSceneNode();
    69 
    70         Ogre::SceneNode* node = parentNode->createChildSceneNode(name, Vector3(x,y,z));
    71         node->scale(sx,sy,sz);
    72         node->yaw(Ogre::Degree(yaw));
    73         node->pitch(Ogre::Degree(pitch));
    74         node->roll(Ogre::Degree(roll));
    75 
    76                 COUT(4) << "Loader: Created node "<< name <<" : "<<x<<" " << y << " " << z  << std::endl << std::endl;
     68        COUT(4) << "Loader: loaded node "<< name_ <<" : "<< x_ <<" " << y_ << " " << z_ << std::endl << std::endl;
    7769        }
    7870   }
    7971   
    8072   void SceneNode::registerAllVariables(){
    81      
     73     registerVar(&x_, sizeof(float), network::DATA);
     74     registerVar(&y_, sizeof(float), network::DATA);
     75     registerVar(&z_, sizeof(float), network::DATA);
     76     registerVar(&sx_, sizeof(float), network::DATA);
     77     registerVar(&sy_, sizeof(float), network::DATA);
     78     registerVar(&sz_, sizeof(float), network::DATA);
     79     registerVar(&yaw_, sizeof(float), network::DATA);
     80     registerVar(&pitch_, sizeof(float), network::DATA);
     81     registerVar(&roll_, sizeof(float), network::DATA);
     82     registerVar(&name_, sizeof(float), network::STRING);
     83     registerVar(&nodeName_, sizeof(float), network::STRING);
    8284   }
    8385   
    8486   bool SceneNode::create(){
     87     Ogre::SceneManager* mgr = orxonox::Orxonox::getSingleton()->getSceneManager();
     88
     89     Ogre::SceneNode *parentNode;
     90     if (nodeName_.compare("")!=0)
     91       parentNode = mgr->getSceneNode(nodeName_);
     92     else
     93       parentNode = mgr->getRootSceneNode();
     94
     95     Ogre::SceneNode* node = parentNode->createChildSceneNode(name_, Vector3(x_,y_,z_));
     96     node->scale(sx_,sy_,sz_);
     97     node->yaw(Ogre::Degree(yaw_));
     98     node->pitch(Ogre::Degree(pitch_));
     99     node->roll(Ogre::Degree(roll_));
    85100     return true;
    86101   }
  • code/branches/FICN/src/orxonox/objects/SceneNode.h

    r590 r599  
    2323          float sx_, sy_, sz_;
    2424          float yaw_, pitch_, roll_;
    25           std::string node_;
     25          std::string name_;
     26          std::string nodeName_;
    2627
    2728    };
  • code/branches/FICN/src/orxonox/orxonox.cc

    r592 r599  
    226226    //TODO: give config file to Ogre
    227227    std::string mode;
    228     if(argc>=2)
    229       mode = std::string(argv[1]);
    230     else
    231       mode = "";
     228//     if(argc>=2)
     229//       mode = std::string(argv[1]);
     230//     else
     231//       mode = "";
    232232    ArgReader ar = ArgReader(argc, argv);
    233233    ar.checkArgument("mode", mode, false);
    234234    ar.checkArgument("data", this->dataPath_, false);
     235    ar.checkArgument("ip", serverIp_, false);
    235236    if(ar.errorHandling()) die();
    236237
     
    238239    {
    239240      serverInit(path);
    240       mode = SERVER;
     241      mode_ = SERVER;
    241242    }
    242243    else if(mode == std::string("client"))
    243244    {
    244245      clientInit(path);
    245       mode = CLIENT;
     246      mode_ = CLIENT;
    246247    }
    247248    else if(mode == std::string("presentation"))
    248249    {
    249250      serverInit(path);
    250       mode = PRESENTATION;
     251      mode_ = PRESENTATION;
    251252    }
    252253    else{
    253254      standaloneInit(path);
    254       mode = STANDALONE;
     255      mode_ = STANDALONE;
    255256    }
    256257  }
     
    267268    setupScene();
    268269    setupInputSystem();
     270    if(mode_!=CLIENT){ // remove this in future ---- presentation hack
     271    }
     272    else
     273      std::cout << "client here" << std::endl;
    269274    createFrameListener();
    270275    Factory::createClassHierarchy();
     
    273278      server_g->open();
    274279      break;
     280    case CLIENT:
     281      client_g->establishConnection();
     282      break;
    275283    case SERVER:
    276     case CLIENT:
    277284    case STANDALONE:
    278285    default:
     
    356363  void Orxonox::serverInit(std::string path)
    357364  {
     365    COUT(2) << "initialising server" << std::endl;
    358366    ogre_->setConfigPath(path);
    359367    ogre_->setup();
     
    366374  void Orxonox::clientInit(std::string path)
    367375  {
     376    COUT(2) << "initialising client" << std::endl;
    368377    ogre_->setConfigPath(path);
    369378    ogre_->setup();
    370     client_g = new network::Client(); // address here
     379    if(serverIp_.compare("")==0)
     380      client_g = new network::Client();
     381    else
     382      client_g = new network::Client(serverIp_, 55556);
    371383    if(!ogre_->load()) die(/* unable to load */);
    372384    ogre_->getRoot()->addFrameListener(new network::ClientFrameListener());
     
    523535    ogre_->getRoot()->addFrameListener(TimerFL);
    524536
    525     frameListener_ = new OrxListener(keyboard_, mouse_, auMan_, steering_);
     537    //if(mode_!=CLIENT) // just a hack ------- remove this in future
     538      frameListener_ = new OrxListener(keyboard_, mouse_, auMan_, steering_);
    526539    ogre_->getRoot()->addFrameListener(frameListener_);
    527540  }
     
    536549    ogre_->getRoot()->getAutoCreatedWindow()->getMetrics(width, height, depth, left, top);
    537550
    538     const OIS::MouseState &ms = mouse_->getMouseState();
    539     ms.width = width;
    540     ms.height = height;
    541 
     551    if(mode_!=CLIENT){
     552      const OIS::MouseState &ms = mouse_->getMouseState();
     553      ms.width = width;
     554      ms.height = height;
     555    }
    542556    ogre_->getRoot()->startRendering();
    543557  }
  • code/branches/FICN/src/orxonox/orxonox.h

    r584 r599  
    7979      // this is used to identify the mode (server/client/...) we're in
    8080      gameMode              mode_;
     81      std::string           serverIp_;
    8182  };
    8283}
Note: See TracChangeset for help on using the changeset viewer.