Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changes between Version 3 and Version 4 of code/doc/BaseObject


Ignore:
Timestamp:
Feb 24, 2008, 9:27:18 PM (16 years ago)
Author:
landauf
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • code/doc/BaseObject

    v3 v4  
    33=== Description ===
    44
    5 In Orxonox, there are some classes refered to be "objects". In this context an object is not an instance of a class, but a class beeing relevant for the game-logic. Examples of objects are: A ship (but not the model), a particle effect (but not the particles themselfes), a trigger (which might be totally abstract like "finish the game after 20 minutes"), a HUD (but not the graphpics). Examples of classes not beeing objects are: Interfaces (but objects might inherit from them), graphical components (meshes, textures, sprites, billboards, ...), helper classes ([wiki:Timer], ...), classes in external libraries ([wiki:Coding/networking network], audio, [wiki:Core core], ...).
     5In Orxonox, there are some classes refered to be "objects". In this context an object is not an instance of a class, but a class beeing relevant to the game-logic. Examples of objects are: A ship (but not the model), a particle effect (but not the particles themselfes), a trigger (which might be totally abstract like "finish the game after 20 minutes"), a HUD (but not the graphpics). Examples of classes not beeing objects are: Interfaces (but objects might inherit from them), graphical components (meshes, textures, sprites, billboards, ...), helper classes ([wiki:Timer], ...), classes in external libraries ([wiki:Coding/networking network], audio, [wiki:Core core], ...).
    66
    77To differ objects from other classes, they derive from BaseObject. They might have other parents like interfaces or listeners, but they '''must''' inherit from BaseObject. The other way round you can cast every object to BaseObject, even if the only thing you know is it's a derivative of an interface like [wiki:Tickable] or [wiki:Synchronisable]. The BaseObject itself inherits from OrxonoxClass.
     
    1616=== Illustration ===
    1717
     18In this illustration of a class-tree (Test.h), the classes A1, A2 and A3 (and all derivatives) are "objects", because they inherit from BaseObject. As you can see, there are some Interfaces. Interfaces aren't connected with the BaseObject, they're on the same level. But they all inherit from OrxonoxClass, but this isn't relevant to the game-logic.
     19
    1820[[Image(Core:testclass_interface_orxonoxclass_tree.gif)]]