Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 98 for code/branches


Ignore:
Timestamp:
Oct 24, 2007, 8:09:52 PM (16 years ago)
Author:
anonymous
Message:
 
Location:
code/branches/network
Files:
1 deleted
4 edited

Legend:

Unmodified
Added
Removed
  • code/branches/network/Orxonox.kdevelop

    r96 r98  
    22<kdevelop>
    33  <general>
    4     <author></author>
    5     <email></email>
     4    <author/>
     5    <email/>
    66    <version>$VERSION$</version>
    77    <projectmanagement>KDevCustomProject</projectmanagement>
     
    1414    </secondaryLanguages>
    1515    <projectname>Orxonox</projectname>
    16     <description></description>
    17     <defaultencoding></defaultencoding>
     16    <description/>
     17    <defaultencoding/>
    1818  </general>
    1919  <kdevcustomproject>
     
    2323      <directoryradio>custom</directoryradio>
    2424      <customdirectory>/home/scheusso/orxonox/network</customdirectory>
    25       <programargs></programargs>
     25      <programargs/>
    2626      <terminal>false</terminal>
    2727      <autocompile>true</autocompile>
    2828      <envvars/>
    29       <globaldebugarguments></globaldebugarguments>
     29      <globaldebugarguments/>
    3030      <globalcwd>/home/scheusso/orxonox/network/bin/</globalcwd>
    3131      <useglobalprogram>false</useglobalprogram>
     
    4141      <numberofjobs>1</numberofjobs>
    4242      <dontact>false</dontact>
    43       <makebin></makebin>
     43      <makebin/>
    4444      <selectedenvironment>default</selectedenvironment>
    4545      <environments>
     
    4747      </environments>
    4848      <prio>0</prio>
    49       <defaulttarget></defaulttarget>
     49      <defaulttarget/>
    5050      <makeoptions>-I ./net/</makeoptions>
    5151    </make>
     
    6969    <other>
    7070      <prio>0</prio>
    71       <otherbin></otherbin>
    72       <defaulttarget></defaulttarget>
    73       <otheroptions></otheroptions>
     71      <otherbin/>
     72      <defaulttarget/>
     73      <otheroptions/>
    7474      <selectedenvironment>default</selectedenvironment>
    7575      <environments>
     
    136136      <version>3</version>
    137137      <includestyle>3</includestyle>
    138       <root>/usr/pack/qt-3.3.6-mo/i686-debian-linux3.1</root>
     138      <root>/usr/qt/3</root>
    139139      <designerintegration>EmbeddedKDevDesigner</designerintegration>
    140       <qmake>/usr/pack/qt-3.3.6-mo/i686-debian-linux3.1/bin/qmake</qmake>
    141       <designer>/usr/pack/qt-3.3.6-mo/i686-debian-linux3.1/bin/designer</designer>
     140      <qmake>/usr/qt/3/bin/qmake</qmake>
     141      <designer>/usr/qt/3/bin/designer</designer>
    142142      <designerpluginpaths/>
    143143    </qt>
    144144    <creategettersetter>
    145       <prefixGet></prefixGet>
     145      <prefixGet/>
    146146      <prefixSet>set</prefixSet>
    147147      <prefixVariable>m_,_</prefixVariable>
     
    172172  <kdevdebugger>
    173173    <general>
    174       <gdbpath></gdbpath>
    175       <dbgshell></dbgshell>
    176       <configGdbScript></configGdbScript>
    177       <runShellScript></runShellScript>
    178       <runGdbScript></runGdbScript>
     174      <gdbpath/>
     175      <dbgshell/>
     176      <configGdbScript/>
     177      <runShellScript/>
     178      <runGdbScript/>
    179179      <breakonloadinglibs>true</breakonloadinglibs>
    180180      <separatetty>false</separatetty>
  • code/branches/network/Orxonox.kdevelop.filelist

    r96 r98  
    99Makefile
    1010src
    11 src/Makefile
     11zig2.1.0
     12zig2.1.0/minigame
     13zig2.1.0/minigame/conalleg.cpp
     14zig2.1.0/minigame/conalleg.h
     15zig2.1.0/minigame/gameclient.cpp
     16zig2.1.0/minigame/gameclient.h
     17zig2.1.0/minigame/gameserver.cpp
     18zig2.1.0/minigame/gameserver.h
     19zig2.1.0/minigame/main.cpp
     20zig2.1.0/minigame/main.h
     21zig2.1.0/minigame/Makefile
     22zig2.1.0/ziglib
     23zig2.1.0/ziglib/include
     24zig2.1.0/ziglib/include/nl.h
     25zig2.1.0/ziglib/include/zig
     26zig2.1.0/ziglib/include/zig/address.h
     27zig2.1.0/ziglib/include/zig/buffer.h
     28zig2.1.0/ziglib/include/zig/bzip2.h
     29zig2.1.0/ziglib/include/zig/client.h
     30zig2.1.0/ziglib/include/zig/console.h
     31zig2.1.0/ziglib/include/zig/leetnet.h
     32zig2.1.0/ziglib/include/zig/log.h
     33zig2.1.0/ziglib/include/zig/msocket.h
     34zig2.1.0/ziglib/include/zig/pfilesys.h
     35zig2.1.0/ziglib/include/zig/server.h
     36zig2.1.0/ziglib/include/zig/serverinfo.h
     37zig2.1.0/ziglib/include/zig/station.h
     38zig2.1.0/ziglib/include/zig/typereg.h
     39zig2.1.0/ziglib/include/zig/utils.h
     40zig2.1.0/ziglib/include/zig/zigclient.h
     41zig2.1.0/ziglib/include/zig/zigdefs.h
     42zig2.1.0/ziglib/include/zig/zig.h
     43zig2.1.0/ziglib/include/zig/zigserver.h
     44zig2.1.0/ziglib/src
     45zig2.1.0/ziglib/src/address.cpp
     46zig2.1.0/ziglib/src/buffer.cpp
     47zig2.1.0/ziglib/src/bzip2.cpp
     48zig2.1.0/ziglib/src/client.cpp
     49zig2.1.0/ziglib/src/console.cpp
     50zig2.1.0/ziglib/src/log.cpp
     51zig2.1.0/ziglib/src/Makefile
     52zig2.1.0/ziglib/src/msocket.cpp
     53zig2.1.0/ziglib/src/pfilesys.cpp
     54zig2.1.0/ziglib/src/server.cpp
     55zig2.1.0/ziglib/src/serverinfo.cpp
     56zig2.1.0/ziglib/src/station.cpp
     57zig2.1.0/ziglib/src/typereg.cpp
     58zig2.1.0/ziglib/src/utils.cpp
     59zig2.1.0/ziglib/src/zigclient.cpp
     60zig2.1.0/ziglib/src/zig.cpp
     61zig2.1.0/ziglib/src/zigserver.cpp
  • code/branches/network/Orxonox.kdevses

    r96 r98  
    22<!DOCTYPE KDevPrjSession>
    33<KDevPrjSession>
    4  <DocsAndViews NumberOfDocuments="2" >
    5   <Doc0 NumberOfViews="1" URL="file:///home/scheusso/orxonox/network/src/orxonox.cc" >
    6    <View0 Encoding="" line="27" Type="Source" />
     4 <DocsAndViews NumberOfDocuments="1" >
     5  <Doc0 NumberOfViews="1" URL="file:///pub/eth/orxonox/network/src/orxonox.cc" >
     6   <View0 Encoding="" line="0" Type="Source" />
    77  </Doc0>
    8   <Doc1 NumberOfViews="1" URL="file:///home/scheusso/orxonox/network/src/tnl/tnlVector.h" >
    9    <View0 Encoding="" line="316" Type="Source" />
    10   </Doc1>
    118 </DocsAndViews>
    129 <pluginList>
  • code/branches/network/src/orxonox.cc

    r95 r98  
    2626 */
    2727
    28 #include "tnl.h"
    29 #include "tnlEventConnection.h"
    30 #include "tnlNetInterface.h"
    31 #include "tnlRPC.h"
    32 #include <stdio.h>
    33 bool gQuit = false; // a flag used when the client wants to quit. using namespace TNL; // make sure we can simply use the TNL classes.
     28// TODO: Change this to orxonox.h and include all necessary functions there
     29#include "ExampleApplication.h"
    3430
    35 class SimpleEventConnection : public EventConnection
     31// TODO: Put creation of SceneNode and implementation of FrameListener into an extern file
     32SceneNode *lightNode;
     33
     34class FrameListener : public ExampleFrameListener
    3635{
    37     typedef EventConnection Parent;
     36  public:
     37    FrameListener(RenderWindow* win, Camera* cam, SceneManager *sceneMgr)
     38  : ExampleFrameListener(win, cam, false, false)
     39    {
     40    }
    3841
    39 public:
    40     // Let the network system know this is a valid network connection.
    41     TNL_DECLARE_NETCONNECTION(SimpleEventConnection);
     42    bool frameStarted(const FrameEvent &evt)
     43    {
     44        // add tutorial code here:
     45        // ...
     46      lightNode->translate(Vector3(0, -10 * evt.timeSinceLastFrame, 0));
    4247
    43     // declare the client to server message
    44     TNL_DECLARE_RPC(rpcMessageClientToServer, (const char *theMessageString));
    45 
    46     // declare the server to client message
    47     TNL_DECLARE_RPC(rpcMessageServerToClient, (const char *theMessageString));
     48      return ExampleFrameListener::frameStarted(evt);
     49    }
     50  private:
    4851};
    4952
    50 TNL_IMPLEMENT_NETCONNECTION(SimpleEventConnection, NetClassGroupGame, true);
    51 
    52 TNL_IMPLEMENT_RPC(SimpleEventConnection, rpcMessageClientToServer, (const char *messageString), NetClassGroupGameMask, RPCGuaranteedOrdered, RPCDirClientToServer, 0)
     53// TODO: Make Doxygen tags work and create scene AFTER loading in an extern file
     54//! This is the application class of Orxonox
     55/**
     56  Application class. The starting point of Orxonox.
     57  Loading of ressources should start in here.
     58  ...
     59*/
     60class Orxonox : public ExampleApplication
    5361{
    54     // display the message the client sent
    55     printf("Got message from client: %s\n", messageString);
    56     // send a hello world back to the client.
    57     rpcMessageServerToClient("Hello, World!");
    58 }
    59 
    60 TNL_IMPLEMENT_RPC(SimpleEventConnection, rpcMessageServerToClient, (const char *messageString), NetClassGroupGameMask, RPCGuaranteedOrdered, RPCDirServerToClient, 0)
    61 {
    62     // display the message the server sent
    63     printf("Got a message from server: %s\n", messageString);
    64 
    65     // once the client has heard back from the server, it should quit.
    66     gQuit = true;
    67 }
    68 
    69 int main(int argc, const char **argv)
    70 {
    71     if(argc != 3)
     62  protected:
     63  public:
     64    Orxonox()
    7265    {
    73         printf("usage: simpletnltest <-server|-client> <connectAddress>");
    74         return 1;
    75     }
    76     bool isClient = !strcmp(argv[1], "-client");
    77 
    78     // convert the command-line address into TNL address form
    79     Address cmdAddress(argv[2]);
    80 
    81     RefPtr<NetInterface> theNetInterface;
    82     if(isClient)
    83     {
    84         Address bindAddress(IPProtocol, Address::Any, 0);
    85 
    86         // create a new NetInterface bound to any interface, any port (0)
    87         theNetInterface = new NetInterface(bindAddress);
    88        
    89         // create a new SimpleEventConnection and tell it to connect to the
    90         // server at cmdAddress.
    91         SimpleEventConnection *newConnection = new SimpleEventConnection;
    92         newConnection->connect(theNetInterface, cmdAddress);
    93 
    94         // post an RPC, to be executed when the connection is established
    95         newConnection->rpcMessageClientToServer("Hello??");
    96     }
    97     else
    98     {
    99         // create a server net interface, bound to the cmdAddress
    100         theNetInterface = new NetInterface(cmdAddress);
    101 
    102         // notify the NetInterface that it can allow connections
    103         theNetInterface->setAllowsConnections(true);
    10466    }
    10567
    106     // now just loop, processing incoming packets and sending outgoing packets
    107     // until the global quit flag is set.
    108     while(!gQuit)
     68    ~Orxonox()
    10969    {
    110          theNetInterface->checkIncomingPackets();
    111          theNetInterface->processConnections();
    112          Platform::sleep(1);
    11370    }
    114     return 0;
     71  protected:
     72    void createCamera(void)
     73    {
     74        // create camera
     75      mCamera = mSceneMgr->createCamera("PlayerCam");
     76      mCamera->setNearClipDistance(5);
     77      mCamera->setPosition(Vector3(0,10,500));
     78      mCamera->lookAt(Vector3(0,0,0));
     79    }
     80
     81    void createScene(void)
     82    {
     83        // add tutorial code here:
     84        // ...
     85      mSceneMgr->setAmbientLight( ColourValue( 0.3, 0.3, 0.3 ) );
     86      //Entity* head = mSceneMgr->createEntity("head", "ogrehead.mesh");
     87
     88      //Entity* head2 = mSceneMgr->createEntity("head2", "ogrehead.mesh");
     89
     90      SceneNode *node = mSceneMgr->getRootSceneNode()->createChildSceneNode( "OgreHeadNode", Vector3( 0, 0, 0 ) );
     91      //node->attachObject( head );
     92
     93      SceneNode *node2 = mSceneMgr->getRootSceneNode()->createChildSceneNode( "OgreHeadNode2", Vector3( 50, 0, 0 ) );
     94      //node2->attachObject( head2 );
     95
     96
     97      //mSceneMgr->setSkyBox(true, "Examples/SpaceSkyBox");
     98
     99      Light *light = mSceneMgr->createLight("Light1");
     100      light->setType(Light::LT_POINT);
     101      light->setPosition(Vector3(0, 100, 0));
     102      light->setDiffuseColour(0.5, 0.5, 0.0);
     103      light->setSpecularColour(0.5, 0.5, 0.0);
     104
     105      BillboardSet *bbs = mSceneMgr->createBillboardSet("bb", 1);
     106      bbs->createBillboard(Vector3::ZERO, ColourValue(1.0, 0.0, 0.0));
     107      //bbs->setMaterialName("Examples/Flare");
     108
     109      lightNode = mSceneMgr->getRootSceneNode()->createChildSceneNode("LightNode", Vector3(0, 100, 0));
     110      lightNode->attachObject(bbs);
     111      lightNode->attachObject(light);
     112      light->setPosition(0.0, 0.0, 0.0);
     113    }
     114
     115    void createFrameListener(void)
     116    {
     117        // create frame listener
     118      mFrameListener = new ExampleFrameListener(mWindow, mCamera, mSceneMgr);
     119      mRoot->addFrameListener(mFrameListener);
     120    }
     121};
     122
     123#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
     124#define WIN32_LEAN_AND_MEAN
     125#include "windows.h"
     126
     127INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT )
     128#else
     129
     130int main(int argc, char **argv)
     131#endif
     132{
     133  // Create application object
     134  Orxonox orxonox;
     135
     136  try {
     137    orxonox.go();
     138  } catch( Exception& e ) {
     139#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
     140    MessageBox( NULL, e.getFullDescription().c_str(), "An exception has occurred!", MB_OK | MB_ICONERROR | MB_TASKMODAL);
     141#else
     142    fprintf(stderr, "An exception has occurred: %s\n",
     143            e.getFullDescription().c_str());
     144#endif
     145  }
     146
     147  return 0;
    115148}
Note: See TracChangeset for help on using the changeset viewer.