Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 7123 in orxonox.OLD


Ignore:
Timestamp:
Feb 11, 2006, 8:57:26 PM (18 years ago)
Author:
bensch
Message:

orxonox/trunk: some cleanup before the new tag

  1. BaseObject isA was wrong… every subclass was detected as any other subclass
  2. Classes get unloaded again as they should
  3. some minor fixes (Material* → Material) and some other cleanups
Location:
trunk/src
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/defs/class_id.h

    r7110 r7123  
    242242  CL_COLLISION                  =    0x00000711,
    243243  CL_BV_TREE                    =    0x00701000,
    244   CL_BV_TREE_NODE               =    0x00002000,
     244  CL_BV_TREE_NODE               =    0x00702000,
    245245  CL_OBB_TREE                   =    0x00000714,
    246246  CL_OBB_TREE_NODE              =    0x00000715,
     
    270270
    271271  CL_PRIMITIVE_MODEL            =    0x00000908,
    272   CL_MD2Model                   =    0x00000909,
     272  CL_MD2_MODEL                  =    0x00000909,
    273273  CL_HEIGHT_MAP                 =    0x0000090a,
    274274  CL_GRID                       =    0x0000090b,
    275 
    276   // Particles
    277   CL_PARTICLE_SYSTEM            =    0x00a01000,
    278   CL_SPRITE_PARTICLES           =    0x00002000,
    279   CL_SPARK_PARTICLES            =    0x00004000,
    280   CL_PNODE_PARTICLES            =    0x00008000,
    281   CL_DOT_PARTICLES              =    0x00010000,
    282   CL_MODEL_PARTICLES            =    0x00020000,
    283 
    284   CL_PARTICLE_EMITTER           =    0x00a02000,
    285   CL_DOT_EMITTER                =    0x00000a21,
    286   CL_PLANE_EMITTER              =    0x00000a22,
    287   CL_BOX_EMITTER                =    0x00000a23,
    288   CL_SPHERE_EMITTER             =    0x00000a24,
    289   CL_MODEL_EMITTER              =    0x00000a25,
    290 
    291275
    292276  CL_MATERIAL                   =    0x00000810,
     
    298282  CL_LIGHTNING_BOLT             =    0x00000851,
    299283
     284    // Particles
     285  CL_PARTICLE_SYSTEM            =    0x00a01000,
     286  CL_DOT_PARTICLES              =    0x00a02000,
     287  CL_SPARK_PARTICLES            =    0x00a04000,
     288  CL_SPRITE_PARTICLES           =    0x00a08000,
     289  CL_MODEL_PARTICLES            =    0x00a10000,
     290  //  CL_PNODE_PARTICLES            =    0x00a20000,
     291
     292
     293  CL_PARTICLE_EMITTER           =    0x00a40000,
     294  CL_DOT_EMITTER                =    0x00000a21,
     295  CL_PLANE_EMITTER              =    0x00000a22,
     296  CL_BOX_EMITTER                =    0x00000a23,
     297  CL_SPHERE_EMITTER             =    0x00000a24,
     298  //  CL_MODEL_EMITTER              =    0x00000a25,
     299
    300300  // Element2D's  (range from 0x00000b00 to 0x00000bff)
    301301  /// GL-GUI
    302   CL_GLGUI_WIDGET               =    0x00b00000,
    303   CL_GLGUI_BUTTON               =    0x00b01000,
     302  CL_GLGUI_WIDGET               =    0x00b01000,
     303  CL_GLGUI_BUTTON               =    0x00b02000,
    304304  CL_GLGUI_PUSHBUTTON           =    0x00000b03,
    305305  CL_GLGUI_CHECKBUTTON          =    0x00000b04,
    306306  CL_GLGUI_RADIOBUTTON          =    0x00000b05,
    307   CL_GLGUI_CONTAINER            =    0x00b02000,
     307  CL_GLGUI_CONTAINER            =    0x00b04000,
    308308  CL_GLGUI_BOX                  =    0x00000b07,
    309309  CL_GLGUI_FRAME                =    0x00000b08,
  • trunk/src/lib/graphics/importer/md2Model.cc

    r7114 r7123  
    7777MD2Model::MD2Model(const char* modelFileName, const char* skinFileName, float scale)
    7878{
     79  this->setClassID(CL_MD2_MODEL, "MD2Model");
    7980  /* this creates the data container via ressource manager */
    8081  this->data = (MD2Data*)ResourceManager::getInstance()->load(modelFileName, MD2, RP_GAME, skinFileName, scale);
     
    222223  glCullFace(GL_BACK);
    223224
    224   this->data->material->select();
     225  this->data->material.select();
    225226
    226227  /* draw the triangles */
     
    263264//   this->processLighting();
    264265//   this->interpolate(/*this->verticesList*/);
    265   this->data->material->select();
     266  this->data->material.select();
    266267
    267268  /* draw the triangles */
     
    409410  delete [] this->pTexCoor;
    410411
    411   delete this->material;
    412412}
    413413
     
    518518  strcpy(this->skinFileName, fileName);
    519519
    520   this->material = new Material("md2ModelTest");
    521   this->material->setDiffuseMap(fileName);
    522   this->material->setIllum(3);
    523   this->material->setAmbient(1.0, 1.0, 1.0);
    524 }
     520  this->material.setName("md2ModelMaterial");
     521  this->material.setDiffuseMap(fileName);
     522  this->material.setIllum(3);
     523  this->material.setAmbient(1.0, 1.0, 1.0);
     524}
  • trunk/src/lib/graphics/importer/md2Model.h

    r7114 r7123  
    1919#define _MD2MODEL_H
    2020
     21#include "base_object.h"
     22
    2123#include "model.h"
    22 #include "base_object.h"
    23 #include "stdincl.h"
    24 
     24#include "material.h"
    2525
    2626//! These are the needed defines for the max values when loading .MD2 files
     
    212212  int*               pLightNormals;         //!< pointer to the light normals
    213213
    214   Material*          material;              //!< pointer to the material
     214  Material           material;              //!< pointer to the material
    215215  float              scaleFactor;           //!< the scale factor of the model, (global)
    216216};
  • trunk/src/lib/graphics/importer/model.h

    r6308 r7123  
    5858
    5959  public:
    60     Model();
    6160    virtual ~Model();
    6261
     
    8584    inline unsigned int getTriangleCount() const { return this->pModelInfo.numTriangles; };
    8685
     86  protected:
     87    Model();
     88
    8789
    8890  protected:
  • trunk/src/lib/lang/base_object.cc

    r6815 r7123  
    140140  else if (classID & CL_MASK_SUBSUPER_CLASS)
    141141  {
    142     if (likely(((this->classID & CL_MASK_SUBSUPER_CLASS_IDA) == (this->classID & CL_MASK_SUBSUPER_CLASS_IDA)) &&
     142    if (likely(((this->classID & CL_MASK_SUBSUPER_CLASS_IDA) == (classID & CL_MASK_SUBSUPER_CLASS_IDA)) &&
    143143        this->classID & classID & CL_MASK_SUBSUPER_CLASS_IDB))
    144144      return true;
  • trunk/src/lib/lang/class_list.cc

    r6280 r7123  
    276276    if (object->isA((*cl).classID))
    277277  {
    278     PRINT(0)("=%s=-", (*cl).className);
     278    PRINT(0)("=%s::0x%.8X=-", (*cl).className, (*cl).classID);
    279279  }
    280280}
  • trunk/src/orxonox.cc

    r7067 r7123  
    120120
    121121  SDL_QuitSubSystem(SDL_INIT_TIMER);
    122   ClassList::debug();
     122  ClassList::debug(3);
    123123
    124124  PRINT(3)
  • trunk/src/world_entities/skybox.cc

    r6863 r7123  
    2727#include "network_game_manager.h"
    2828#include "converter.h"
     29#include "resource_manager.h"
     30
    2931
    3032using namespace std;
     
    107109    if( this->material[i])
    108110      delete this->material[i];
    109 //     if( this->cubeTexture[i])
    110 //       delete this->cubeTexture[i];
     111    if( this->cubeTexture[i])
     112      ResourceManager::getInstance()->unload(this->cubeTexture[i]);
    111113  }
    112114}
     
    169171    this->loadCubeMapTextures(top, bottom, left, right, front, back);
    170172}
    171 
    172 
    173 #include "resource_manager.h"
    174173
    175174void SkyBox::loadCubeMapTextures(const char* top, const char* bottom, const char* left,
  • trunk/src/world_entities/world_entity.cc

    r7085 r7123  
    190190  {
    191191    Resource* resource = ResourceManager::getInstance()->locateResourceByPointer(this->models[modelNumber]);
    192     //     if (resource != NULL)
    193     ResourceManager::getInstance()->unload(resource, RP_LEVEL);
    194   }
    195   else
    196     delete this->models[modelNumber];
     192    if (resource != NULL)
     193      ResourceManager::getInstance()->unload(resource, RP_LEVEL);
     194    else
     195    {
     196      PRINTF(4)("Forcing model deletion\n");
     197      delete this->models[modelNumber];
     198    }
     199  }
    197200
    198201  this->models[modelNumber] = model;
Note: See TracChangeset for help on using the changeset viewer.