Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 161


Ignore:
Timestamp:
Nov 4, 2007, 5:00:41 PM (17 years ago)
Author:
rgrieder
Message:
  • added namespace Orxonox to every file
    • removed all the "using namespace Ogre" in the header files
  • cleaned up with the includes: attempt to include as little as possible to reduce compile time.
    • created a header file: orxonox_prerequisites.h
    • used OgrePrerequisites in the header files
    • avoided including "Ogre.h", using separate files instead
  • created empty class: AmmunitionDump
Location:
code/branches/main_reto_vs05
Files:
3 added
22 edited

Legend:

Unmodified
Added
Removed
  • code/branches/main_reto_vs05/bin/Debug/Ogre.log

    r159 r161  
    1 23:00:53: Creating resource group General
    2 23:00:53: Creating resource group Internal
    3 23:00:53: Creating resource group Autodetect
    4 23:00:53: SceneManagerFactory for type 'DefaultSceneManager' registered.
    5 23:00:53: Registering ResourceManager for type Material
    6 23:00:53: Registering ResourceManager for type Mesh
    7 23:00:53: Registering ResourceManager for type Skeleton
    8 23:00:53: MovableObjectFactory for type 'ParticleSystem' registered.
    9 23:00:53: OverlayElementFactory for type Panel registered.
    10 23:00:53: OverlayElementFactory for type BorderPanel registered.
    11 23:00:53: OverlayElementFactory for type TextArea registered.
    12 23:00:53: Registering ResourceManager for type Font
    13 23:00:53: ArchiveFactory for archive type FileSystem registered.
    14 23:00:53: ArchiveFactory for archive type Zip registered.
    15 23:00:53: FreeImage version: 3.9.2
    16 23:00:53: This program uses FreeImage, a free, open source image library supporting all common bitmap formats. See http://freeimage.sourceforge.net for details
    17 23:00:53: Supported formats: bmp,ico,jpg,jif,jpeg,jpe,jng,koa,iff,lbm,mng,pbm,pbm,pcd,pcx,pgm,pgm,png,ppm,ppm,ras,tga,targa,tif,tiff,wap,wbmp,wbm,psd,cut,xbm,xpm,gif,hdr,g3,sgi
    18 23:00:53: DDS codec registering
    19 23:00:53: Registering ResourceManager for type HighLevelGpuProgram
    20 23:00:53: Registering ResourceManager for type Compositor
    21 23:00:53: MovableObjectFactory for type 'Entity' registered.
    22 23:00:53: MovableObjectFactory for type 'Light' registered.
    23 23:00:53: MovableObjectFactory for type 'BillboardSet' registered.
    24 23:00:53: MovableObjectFactory for type 'ManualObject' registered.
    25 23:00:53: MovableObjectFactory for type 'BillboardChain' registered.
    26 23:00:53: MovableObjectFactory for type 'RibbonTrail' registered.
    27 23:00:53: Loading library .\RenderSystem_Direct3D9_d
    28 23:00:53: Installing plugin: D3D9 RenderSystem
    29 23:00:53: D3D9 : Direct3D9 Rendering Subsystem created.
    30 23:00:54: D3D9: Driver Detection Starts
    31 23:00:54: D3D9: Driver Detection Ends
    32 23:00:54: Plugin successfully installed
    33 23:00:54: Loading library .\RenderSystem_GL_d
    34 23:00:54: Installing plugin: GL RenderSystem
    35 23:00:54: OpenGL Rendering Subsystem created.
    36 23:00:54: Plugin successfully installed
    37 23:00:54: Loading library .\Plugin_ParticleFX_d
    38 23:00:54: Installing plugin: ParticleFX
    39 23:00:54: Particle Emitter Type 'Point' registered
    40 23:00:54: Particle Emitter Type 'Box' registered
    41 23:00:54: Particle Emitter Type 'Ellipsoid' registered
    42 23:00:54: Particle Emitter Type 'Cylinder' registered
    43 23:00:54: Particle Emitter Type 'Ring' registered
    44 23:00:54: Particle Emitter Type 'HollowEllipsoid' registered
    45 23:00:54: Particle Affector Type 'LinearForce' registered
    46 23:00:54: Particle Affector Type 'ColourFader' registered
    47 23:00:54: Particle Affector Type 'ColourFader2' registered
    48 23:00:54: Particle Affector Type 'ColourImage' registered
    49 23:00:54: Particle Affector Type 'ColourInterpolator' registered
    50 23:00:54: Particle Affector Type 'Scaler' registered
    51 23:00:54: Particle Affector Type 'Rotator' registered
    52 23:00:54: Particle Affector Type 'DirectionRandomiser' registered
    53 23:00:54: Particle Affector Type 'DeflectorPlane' registered
    54 23:00:54: Plugin successfully installed
    55 23:00:54: Loading library .\Plugin_BSPSceneManager_d
    56 23:00:54: Installing plugin: BSP Scene Manager
    57 23:00:54: Plugin successfully installed
    58 23:00:54: Loading library .\Plugin_OctreeSceneManager_d
    59 23:00:54: Installing plugin: Octree & Terrain Scene Manager
    60 23:00:54: Plugin successfully installed
    61 23:00:54: Loading library .\Plugin_CgProgramManager_d
    62 23:00:54: Installing plugin: Cg Program Manager
    63 23:00:54: Plugin successfully installed
    64 23:00:54: *-*-* OGRE Initialising
    65 23:00:54: *-*-* Version 1.4.5 (Eihort)
    66 23:00:54: Creating resource group Bootstrap
    67 23:00:54: Added resource location '../../media/packs/OgreCore.zip' of type 'Zip' to resource group 'Bootstrap'
    68 23:00:54: Added resource location '../../media' of type 'FileSystem' to resource group 'General'
    69 23:00:54: Added resource location '../../media/fonts' of type 'FileSystem' to resource group 'General'
    70 23:00:54: Added resource location '../../media/materials/scripts' of type 'FileSystem' to resource group 'General'
    71 23:00:54: Added resource location '../../media/materials/textures' of type 'FileSystem' to resource group 'General'
    72 23:00:54: Added resource location '../../media/models' of type 'FileSystem' to resource group 'General'
    73 23:00:54: Added resource location '../../media/gui' of type 'FileSystem' to resource group 'General'
    74 23:00:54: Added resource location '../../media/packs/cubemap.zip' of type 'Zip' to resource group 'General'
    75 23:00:54: Added resource location '../../media/packs/skybox.zip' of type 'Zip' to resource group 'General'
    76 23:00:54: D3D9 : RenderSystem Option: Allow NVPerfHUD = No
    77 23:00:54: D3D9 : RenderSystem Option: Anti aliasing = Level 4
    78 23:00:54: D3D9 : RenderSystem Option: Floating-point mode = Fastest
    79 23:00:54: D3D9 : RenderSystem Option: Full Screen = No
    80 23:00:54: D3D9 : RenderSystem Option: Rendering Device = ATI Mobility Radeon X1400
    81 23:00:54: D3D9 : RenderSystem Option: VSync = Yes
    82 23:00:54: D3D9 : RenderSystem Option: Video Mode = 1024 x 768 @ 32-bit colour
    83 23:00:54: CPU Identifier & Features
    84 23:00:54: -------------------------
    85 23:00:54:  *   CPU ID: GenuineIntel: Genuine Intel(R) CPU           T2500  @ 2.00GHz
    86 23:00:54:  *      SSE: yes
    87 23:00:54:  *     SSE2: yes
    88 23:00:54:  *     SSE3: yes
    89 23:00:54:  *      MMX: yes
    90 23:00:54:  *   MMXEXT: yes
    91 23:00:54:  *    3DNOW: no
    92 23:00:54:  * 3DNOWEXT: no
    93 23:00:54:  *     CMOV: yes
    94 23:00:54:  *      TSC: yes
    95 23:00:54:  *      FPU: yes
    96 23:00:54:  *      PRO: yes
    97 23:00:54:  *       HT: no
    98 23:00:54: -------------------------
    99 23:00:54: D3D9 : Subsystem Initialising
    100 23:00:54: D3D9RenderSystem::createRenderWindow "OGRE Render Window", 1024x768 windowed  miscParams: FSAA=4 FSAAQuality=0 colourDepth=32 useNVPerfHUD=false vsync=true
    101 23:00:54: D3D9 : Created D3D9 Rendering Window 'OGRE Render Window' : 1024x768, 32bpp
    102 23:00:55: Registering ResourceManager for type Texture
    103 23:00:55: Registering ResourceManager for type GpuProgram
    104 23:00:55: RenderSystem capabilities
    105 23:00:55: -------------------------
    106 23:00:55:  * Hardware generation of mipmaps: yes
    107 23:00:55:  * Texture blending: yes
    108 23:00:55:  * Anisotropic texture filtering: yes
    109 23:00:55:  * Dot product texture operation: yes
    110 23:00:55:  * Cube mapping: yes
    111 23:00:55:  * Hardware stencil buffer: yes
    112 23:00:55:    - Stencil depth: 8
    113 23:00:55:    - Two sided stencil support: yes
    114 23:00:55:    - Wrap stencil values: yes
    115 23:00:55:  * Hardware vertex / index buffers: yes
    116 23:00:55:  * Vertex programs: yes
    117 23:00:55:    - Max vertex program version: vs_3_0
    118 23:00:55:  * Fragment programs: yes
    119 23:00:55:    - Max fragment program version: ps_3_0
    120 23:00:55:  * Texture Compression: yes
    121 23:00:55:    - DXT: yes
    122 23:00:55:    - VTC: no
    123 23:00:55:  * Scissor Rectangle: yes
    124 23:00:55:  * Hardware Occlusion Query: yes
    125 23:00:55:  * User clip planes: yes
    126 23:00:55:  * VET_UBYTE4 vertex element type: yes
    127 23:00:55:  * Infinite far plane projection: yes
    128 23:00:55:  * Hardware render-to-texture: yes
    129 23:00:55:  * Floating point textures: yes
    130 23:00:55:  * Non-power-of-two textures: yes (limited)
    131 23:00:55:  * Volume textures: yes
    132 23:00:55:  * Multiple Render Targets: 4
    133 23:00:55:  * Point Sprites: yes
    134 23:00:55:  * Extended point parameters: yes
    135 23:00:55:  * Max Point Size: 256
    136 23:00:55:  * Vertex texture fetch: no
    137 23:00:55: ***************************************
    138 23:00:55: *** D3D9 : Subsystem Initialised OK ***
    139 23:00:55: ***************************************
    140 23:00:55: ResourceBackgroundQueue - threading disabled
    141 23:00:55: Particle Renderer Type 'billboard' registered
    142 23:00:55: SceneManagerFactory for type 'BspSceneManager' registered.
    143 23:00:55: Registering ResourceManager for type BspLevel
    144 23:00:55: SceneManagerFactory for type 'OctreeSceneManager' registered.
    145 23:00:55: SceneManagerFactory for type 'TerrainSceneManager' registered.
    146 23:00:55: Parsing scripts for resource group Autodetect
    147 23:00:55: Finished parsing scripts for resource group Autodetect
    148 23:00:55: Parsing scripts for resource group Bootstrap
    149 23:00:55: Parsing script OgreCore.material
    150 23:00:55: Parsing script OgreProfiler.material
    151 23:00:55: Parsing script Ogre.fontdef
    152 23:00:55: Parsing script OgreDebugPanel.overlay
    153 23:00:55: Texture: New_Ogre_Border_Center.png: Loading 1 faces(PF_A8R8G8B8,256x128x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x128x1.
    154 23:00:55: Texture: New_Ogre_Border.png: Loading 1 faces(PF_A8R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x256x1.
    155 23:00:55: Texture: New_Ogre_Border_Break.png: Loading 1 faces(PF_A8R8G8B8,32x32x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,32x32x1.
    156 23:00:55: Font BlueHighwayusing texture size 512x512
    157 23:00:55: Info: Freetype returned null for character 127 in font BlueHighway
    158 23:00:55: Info: Freetype returned null for character 128 in font BlueHighway
    159 23:00:55: Info: Freetype returned null for character 129 in font BlueHighway
    160 23:00:55: Info: Freetype returned null for character 130 in font BlueHighway
    161 23:00:55: Info: Freetype returned null for character 131 in font BlueHighway
    162 23:00:55: Info: Freetype returned null for character 132 in font BlueHighway
    163 23:00:55: Info: Freetype returned null for character 133 in font BlueHighway
    164 23:00:55: Info: Freetype returned null for character 134 in font BlueHighway
    165 23:00:55: Info: Freetype returned null for character 135 in font BlueHighway
    166 23:00:55: Info: Freetype returned null for character 136 in font BlueHighway
    167 23:00:55: Info: Freetype returned null for character 137 in font BlueHighway
    168 23:00:55: Info: Freetype returned null for character 138 in font BlueHighway
    169 23:00:55: Info: Freetype returned null for character 139 in font BlueHighway
    170 23:00:55: Info: Freetype returned null for character 140 in font BlueHighway
    171 23:00:55: Info: Freetype returned null for character 141 in font BlueHighway
    172 23:00:55: Info: Freetype returned null for character 142 in font BlueHighway
    173 23:00:55: Info: Freetype returned null for character 143 in font BlueHighway
    174 23:00:55: Info: Freetype returned null for character 144 in font BlueHighway
    175 23:00:55: Info: Freetype returned null for character 145 in font BlueHighway
    176 23:00:55: Info: Freetype returned null for character 146 in font BlueHighway
    177 23:00:55: Info: Freetype returned null for character 147 in font BlueHighway
    178 23:00:55: Info: Freetype returned null for character 148 in font BlueHighway
    179 23:00:55: Info: Freetype returned null for character 149 in font BlueHighway
    180 23:00:55: Info: Freetype returned null for character 150 in font BlueHighway
    181 23:00:55: Info: Freetype returned null for character 151 in font BlueHighway
    182 23:00:55: Info: Freetype returned null for character 152 in font BlueHighway
    183 23:00:55: Info: Freetype returned null for character 153 in font BlueHighway
    184 23:00:55: Info: Freetype returned null for character 154 in font BlueHighway
    185 23:00:55: Info: Freetype returned null for character 155 in font BlueHighway
    186 23:00:55: Info: Freetype returned null for character 156 in font BlueHighway
    187 23:00:55: Info: Freetype returned null for character 157 in font BlueHighway
    188 23:00:55: Info: Freetype returned null for character 158 in font BlueHighway
    189 23:00:55: Info: Freetype returned null for character 159 in font BlueHighway
    190 23:00:55: Info: Freetype returned null for character 160 in font BlueHighway
    191 23:00:55: Texture: BlueHighwayTexture: Loading 1 faces(PF_BYTE_LA,512x512x1) with 0 generated mipmaps from Image. Internal format is PF_BYTE_LA,512x512x1.
    192 23:00:55: Texture: ogretext.png: Loading 1 faces(PF_A8R8G8B8,256x128x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x128x1.
    193 23:00:55: Parsing script OgreLoadingPanel.overlay
    194 23:00:55: Finished parsing scripts for resource group Bootstrap
    195 23:00:55: Parsing scripts for resource group General
    196 23:00:55: Parsing script Examples.program
    197 23:00:55: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    198 23:00:55: High-level program Ogre/BasicVertexPrograms/AmbientOneTexture encountered an error during loading and is thus not supported.
    199 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    200 23:00:55: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.hlsl in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    201 23:00:55: High-level program Ogre/BasicVertexPrograms/AmbientOneTextureHLSL encountered an error during loading and is thus not supported.
     116:52:51: Creating resource group General
     216:52:51: Creating resource group Internal
     316:52:51: Creating resource group Autodetect
     416:52:51: SceneManagerFactory for type 'DefaultSceneManager' registered.
     516:52:51: Registering ResourceManager for type Material
     616:52:51: Registering ResourceManager for type Mesh
     716:52:51: Registering ResourceManager for type Skeleton
     816:52:51: MovableObjectFactory for type 'ParticleSystem' registered.
     916:52:51: OverlayElementFactory for type Panel registered.
     1016:52:51: OverlayElementFactory for type BorderPanel registered.
     1116:52:51: OverlayElementFactory for type TextArea registered.
     1216:52:51: Registering ResourceManager for type Font
     1316:52:51: ArchiveFactory for archive type FileSystem registered.
     1416:52:51: ArchiveFactory for archive type Zip registered.
     1516:52:51: FreeImage version: 3.9.2
     1616:52:51: This program uses FreeImage, a free, open source image library supporting all common bitmap formats. See http://freeimage.sourceforge.net for details
     1716:52:51: Supported formats: bmp,ico,jpg,jif,jpeg,jpe,jng,koa,iff,lbm,mng,pbm,pbm,pcd,pcx,pgm,pgm,png,ppm,ppm,ras,tga,targa,tif,tiff,wap,wbmp,wbm,psd,cut,xbm,xpm,gif,hdr,g3,sgi
     1816:52:51: DDS codec registering
     1916:52:51: Registering ResourceManager for type HighLevelGpuProgram
     2016:52:51: Registering ResourceManager for type Compositor
     2116:52:51: MovableObjectFactory for type 'Entity' registered.
     2216:52:51: MovableObjectFactory for type 'Light' registered.
     2316:52:51: MovableObjectFactory for type 'BillboardSet' registered.
     2416:52:51: MovableObjectFactory for type 'ManualObject' registered.
     2516:52:51: MovableObjectFactory for type 'BillboardChain' registered.
     2616:52:51: MovableObjectFactory for type 'RibbonTrail' registered.
     2716:52:51: Loading library .\RenderSystem_Direct3D9_d
     2816:52:51: Installing plugin: D3D9 RenderSystem
     2916:52:51: D3D9 : Direct3D9 Rendering Subsystem created.
     3016:52:51: D3D9: Driver Detection Starts
     3116:52:51: D3D9: Driver Detection Ends
     3216:52:51: Plugin successfully installed
     3316:52:51: Loading library .\RenderSystem_GL_d
     3416:52:51: Installing plugin: GL RenderSystem
     3516:52:51: OpenGL Rendering Subsystem created.
     3616:52:51: Plugin successfully installed
     3716:52:51: Loading library .\Plugin_ParticleFX_d
     3816:52:51: Installing plugin: ParticleFX
     3916:52:51: Particle Emitter Type 'Point' registered
     4016:52:51: Particle Emitter Type 'Box' registered
     4116:52:51: Particle Emitter Type 'Ellipsoid' registered
     4216:52:51: Particle Emitter Type 'Cylinder' registered
     4316:52:51: Particle Emitter Type 'Ring' registered
     4416:52:51: Particle Emitter Type 'HollowEllipsoid' registered
     4516:52:51: Particle Affector Type 'LinearForce' registered
     4616:52:51: Particle Affector Type 'ColourFader' registered
     4716:52:51: Particle Affector Type 'ColourFader2' registered
     4816:52:51: Particle Affector Type 'ColourImage' registered
     4916:52:51: Particle Affector Type 'ColourInterpolator' registered
     5016:52:51: Particle Affector Type 'Scaler' registered
     5116:52:51: Particle Affector Type 'Rotator' registered
     5216:52:51: Particle Affector Type 'DirectionRandomiser' registered
     5316:52:51: Particle Affector Type 'DeflectorPlane' registered
     5416:52:51: Plugin successfully installed
     5516:52:51: Loading library .\Plugin_BSPSceneManager_d
     5616:52:52: Installing plugin: BSP Scene Manager
     5716:52:52: Plugin successfully installed
     5816:52:52: Loading library .\Plugin_OctreeSceneManager_d
     5916:52:52: Installing plugin: Octree & Terrain Scene Manager
     6016:52:52: Plugin successfully installed
     6116:52:52: Loading library .\Plugin_CgProgramManager_d
     6216:52:52: Installing plugin: Cg Program Manager
     6316:52:52: Plugin successfully installed
     6416:52:52: *-*-* OGRE Initialising
     6516:52:52: *-*-* Version 1.4.5 (Eihort)
     6616:52:52: Creating resource group Bootstrap
     6716:52:52: Added resource location '../../media/packs/OgreCore.zip' of type 'Zip' to resource group 'Bootstrap'
     6816:52:52: Added resource location '../../media' of type 'FileSystem' to resource group 'General'
     6916:52:52: Added resource location '../../media/fonts' of type 'FileSystem' to resource group 'General'
     7016:52:52: Added resource location '../../media/materials/scripts' of type 'FileSystem' to resource group 'General'
     7116:52:52: Added resource location '../../media/materials/textures' of type 'FileSystem' to resource group 'General'
     7216:52:52: Added resource location '../../media/models' of type 'FileSystem' to resource group 'General'
     7316:52:52: Added resource location '../../media/gui' of type 'FileSystem' to resource group 'General'
     7416:52:52: Added resource location '../../media/packs/cubemap.zip' of type 'Zip' to resource group 'General'
     7516:52:52: Added resource location '../../media/packs/skybox.zip' of type 'Zip' to resource group 'General'
     7616:52:52: D3D9 : RenderSystem Option: Allow NVPerfHUD = No
     7716:52:52: D3D9 : RenderSystem Option: Anti aliasing = Level 4
     7816:52:52: D3D9 : RenderSystem Option: Floating-point mode = Fastest
     7916:52:52: D3D9 : RenderSystem Option: Full Screen = No
     8016:52:52: D3D9 : RenderSystem Option: Rendering Device = ATI Mobility Radeon X1400
     8116:52:52: D3D9 : RenderSystem Option: VSync = Yes
     8216:52:52: D3D9 : RenderSystem Option: Video Mode = 1024 x 768 @ 32-bit colour
     8316:52:52: CPU Identifier & Features
     8416:52:52: -------------------------
     8516:52:52:  *   CPU ID: GenuineIntel: Genuine Intel(R) CPU           T2500  @ 2.00GHz
     8616:52:52:  *      SSE: yes
     8716:52:52:  *     SSE2: yes
     8816:52:52:  *     SSE3: yes
     8916:52:52:  *      MMX: yes
     9016:52:52:  *   MMXEXT: yes
     9116:52:52:  *    3DNOW: no
     9216:52:52:  * 3DNOWEXT: no
     9316:52:52:  *     CMOV: yes
     9416:52:52:  *      TSC: yes
     9516:52:52:  *      FPU: yes
     9616:52:52:  *      PRO: yes
     9716:52:52:  *       HT: no
     9816:52:52: -------------------------
     9916:52:52: D3D9 : Subsystem Initialising
     10016:52:52: D3D9RenderSystem::createRenderWindow "OGRE Render Window", 1024x768 windowed  miscParams: FSAA=4 FSAAQuality=0 colourDepth=32 useNVPerfHUD=false vsync=true
     10116:52:52: D3D9 : Created D3D9 Rendering Window 'OGRE Render Window' : 1024x768, 32bpp
     10216:52:52: Registering ResourceManager for type Texture
     10316:52:52: Registering ResourceManager for type GpuProgram
     10416:52:52: RenderSystem capabilities
     10516:52:52: -------------------------
     10616:52:52:  * Hardware generation of mipmaps: yes
     10716:52:52:  * Texture blending: yes
     10816:52:52:  * Anisotropic texture filtering: yes
     10916:52:52:  * Dot product texture operation: yes
     11016:52:52:  * Cube mapping: yes
     11116:52:52:  * Hardware stencil buffer: yes
     11216:52:52:    - Stencil depth: 8
     11316:52:52:    - Two sided stencil support: yes
     11416:52:52:    - Wrap stencil values: yes
     11516:52:52:  * Hardware vertex / index buffers: yes
     11616:52:52:  * Vertex programs: yes
     11716:52:52:    - Max vertex program version: vs_3_0
     11816:52:52:  * Fragment programs: yes
     11916:52:52:    - Max fragment program version: ps_3_0
     12016:52:52:  * Texture Compression: yes
     12116:52:52:    - DXT: yes
     12216:52:52:    - VTC: no
     12316:52:52:  * Scissor Rectangle: yes
     12416:52:52:  * Hardware Occlusion Query: yes
     12516:52:52:  * User clip planes: yes
     12616:52:52:  * VET_UBYTE4 vertex element type: yes
     12716:52:52:  * Infinite far plane projection: yes
     12816:52:52:  * Hardware render-to-texture: yes
     12916:52:52:  * Floating point textures: yes
     13016:52:52:  * Non-power-of-two textures: yes (limited)
     13116:52:52:  * Volume textures: yes
     13216:52:52:  * Multiple Render Targets: 4
     13316:52:52:  * Point Sprites: yes
     13416:52:52:  * Extended point parameters: yes
     13516:52:52:  * Max Point Size: 256
     13616:52:52:  * Vertex texture fetch: no
     13716:52:52: ***************************************
     13816:52:52: *** D3D9 : Subsystem Initialised OK ***
     13916:52:52: ***************************************
     14016:52:52: ResourceBackgroundQueue - threading disabled
     14116:52:52: Particle Renderer Type 'billboard' registered
     14216:52:52: SceneManagerFactory for type 'BspSceneManager' registered.
     14316:52:52: Registering ResourceManager for type BspLevel
     14416:52:52: SceneManagerFactory for type 'OctreeSceneManager' registered.
     14516:52:52: SceneManagerFactory for type 'TerrainSceneManager' registered.
     14616:52:52: Parsing scripts for resource group Autodetect
     14716:52:52: Finished parsing scripts for resource group Autodetect
     14816:52:52: Parsing scripts for resource group Bootstrap
     14916:52:52: Parsing script OgreCore.material
     15016:52:52: Parsing script OgreProfiler.material
     15116:52:52: Parsing script Ogre.fontdef
     15216:52:52: Parsing script OgreDebugPanel.overlay
     15316:52:52: Texture: New_Ogre_Border_Center.png: Loading 1 faces(PF_A8R8G8B8,256x128x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x128x1.
     15416:52:52: Texture: New_Ogre_Border.png: Loading 1 faces(PF_A8R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x256x1.
     15516:52:52: Texture: New_Ogre_Border_Break.png: Loading 1 faces(PF_A8R8G8B8,32x32x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,32x32x1.
     15616:52:52: Font BlueHighwayusing texture size 512x512
     15716:52:52: Info: Freetype returned null for character 127 in font BlueHighway
     15816:52:52: Info: Freetype returned null for character 128 in font BlueHighway
     15916:52:52: Info: Freetype returned null for character 129 in font BlueHighway
     16016:52:52: Info: Freetype returned null for character 130 in font BlueHighway
     16116:52:52: Info: Freetype returned null for character 131 in font BlueHighway
     16216:52:52: Info: Freetype returned null for character 132 in font BlueHighway
     16316:52:52: Info: Freetype returned null for character 133 in font BlueHighway
     16416:52:52: Info: Freetype returned null for character 134 in font BlueHighway
     16516:52:52: Info: Freetype returned null for character 135 in font BlueHighway
     16616:52:52: Info: Freetype returned null for character 136 in font BlueHighway
     16716:52:52: Info: Freetype returned null for character 137 in font BlueHighway
     16816:52:52: Info: Freetype returned null for character 138 in font BlueHighway
     16916:52:52: Info: Freetype returned null for character 139 in font BlueHighway
     17016:52:52: Info: Freetype returned null for character 140 in font BlueHighway
     17116:52:52: Info: Freetype returned null for character 141 in font BlueHighway
     17216:52:52: Info: Freetype returned null for character 142 in font BlueHighway
     17316:52:52: Info: Freetype returned null for character 143 in font BlueHighway
     17416:52:52: Info: Freetype returned null for character 144 in font BlueHighway
     17516:52:52: Info: Freetype returned null for character 145 in font BlueHighway
     17616:52:52: Info: Freetype returned null for character 146 in font BlueHighway
     17716:52:52: Info: Freetype returned null for character 147 in font BlueHighway
     17816:52:52: Info: Freetype returned null for character 148 in font BlueHighway
     17916:52:52: Info: Freetype returned null for character 149 in font BlueHighway
     18016:52:52: Info: Freetype returned null for character 150 in font BlueHighway
     18116:52:52: Info: Freetype returned null for character 151 in font BlueHighway
     18216:52:52: Info: Freetype returned null for character 152 in font BlueHighway
     18316:52:52: Info: Freetype returned null for character 153 in font BlueHighway
     18416:52:52: Info: Freetype returned null for character 154 in font BlueHighway
     18516:52:52: Info: Freetype returned null for character 155 in font BlueHighway
     18616:52:52: Info: Freetype returned null for character 156 in font BlueHighway
     18716:52:52: Info: Freetype returned null for character 157 in font BlueHighway
     18816:52:52: Info: Freetype returned null for character 158 in font BlueHighway
     18916:52:52: Info: Freetype returned null for character 159 in font BlueHighway
     19016:52:52: Info: Freetype returned null for character 160 in font BlueHighway
     19116:52:52: Texture: BlueHighwayTexture: Loading 1 faces(PF_BYTE_LA,512x512x1) with 0 generated mipmaps from Image. Internal format is PF_BYTE_LA,512x512x1.
     19216:52:52: Texture: ogretext.png: Loading 1 faces(PF_A8R8G8B8,256x128x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x128x1.
     19316:52:52: Parsing script OgreLoadingPanel.overlay
     19416:52:52: Finished parsing scripts for resource group Bootstrap
     19516:52:52: Parsing scripts for resource group General
     19616:52:52: Parsing script Examples.program
     19716:52:52: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     19816:52:52: High-level program Ogre/BasicVertexPrograms/AmbientOneTexture encountered an error during loading and is thus not supported.
     199OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     20016:52:52: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.hlsl in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     20116:52:52: High-level program Ogre/BasicVertexPrograms/AmbientOneTextureHLSL encountered an error during loading and is thus not supported.
    202202OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.hlsl in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    203 23:00:55: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    204 23:00:55: High-level program Ogre/HardwareSkinningTwoWeightsCg encountered an error during loading and is thus not supported.
    205 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    206 23:00:55: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
    207 23:00:55: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    208 23:00:55: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
    209 23:00:55: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    210 23:00:55: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
    211 23:00:55: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    212 23:00:55: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
    213 23:00:55: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    214 23:00:55: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
    215 23:00:55: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    216 23:00:55: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
    217 23:00:55: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    218 23:00:55: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    219 23:00:55: High-level program Ogre/HardwareMorphAnimation encountered an error during loading and is thus not supported.
    220 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    221 23:00:55: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    222 23:00:55: High-level program Ogre/HardwarePoseAnimation encountered an error during loading and is thus not supported.
    223 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    224 23:00:55: Parsing script Example.material
    225 23:00:55: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    226 23:00:55: High-level program Examples/MorningSkyBoxHDRfp encountered an error during loading and is thus not supported.
     20316:52:52: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     20416:52:52: High-level program Ogre/HardwareSkinningTwoWeightsCg encountered an error during loading and is thus not supported.
     205OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     20616:52:52: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
     20716:52:52: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     20816:52:52: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
     20916:52:52: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     21016:52:52: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
     21116:52:52: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     21216:52:52: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
     21316:52:52: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     21416:52:52: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
     21516:52:52: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     21616:52:52: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
     21716:52:52: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     21816:52:52: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     21916:52:52: High-level program Ogre/HardwareMorphAnimation encountered an error during loading and is thus not supported.
     220OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     22116:52:52: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     22216:52:52: High-level program Ogre/HardwarePoseAnimation encountered an error during loading and is thus not supported.
     223OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     22416:52:52: Parsing script Example.material
     22516:52:52: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     22616:52:52: High-level program Examples/MorningSkyBoxHDRfp encountered an error during loading and is thus not supported.
    227227OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    228 23:00:55: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    229 23:00:55: High-level program Examples/MorningCubeMapHDRfp encountered an error during loading and is thus not supported.
     22816:52:52: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     22916:52:52: High-level program Examples/MorningCubeMapHDRfp encountered an error during loading and is thus not supported.
    230230OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    231 23:00:55: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    232 23:00:55: High-level program Ogre/HardwareSkinningOneWeight encountered an error during loading and is thus not supported.
    233 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    234 23:00:55: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    235 23:00:55: High-level program Ogre/HardwareSkinningOneWeightShadowCaster encountered an error during loading and is thus not supported.
    236 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    237 23:00:55: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Grass.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    238 23:00:55: High-level program Examples/GrassWaverVp encountered an error during loading and is thus not supported.
     23116:52:52: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     23216:52:52: High-level program Ogre/HardwareSkinningOneWeight encountered an error during loading and is thus not supported.
     233OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     23416:52:52: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     23516:52:52: High-level program Ogre/HardwareSkinningOneWeightShadowCaster encountered an error during loading and is thus not supported.
     236OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     23716:52:52: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Grass.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     23816:52:52: High-level program Examples/GrassWaverVp encountered an error during loading and is thus not supported.
    239239OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Grass.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    240 23:00:55: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    241 23:00:55: High-level program Ogre/HardwareSkinningTwoWeightsShadowCasterCg encountered an error during loading and is thus not supported.
    242 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
    243 23:00:55: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
    244 23:00:55: Error in material jaiqua at line 994 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    245 23:00:55: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
    246 23:00:55: Error in material jaiqua at line 995 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    247 23:00:55: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
    248 23:00:55: Error in material jaiqua at line 996 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    249 23:00:55: Parsing script Ogre.material
    250 23:00:55: Parsing script Examples.compositor
    251 23:00:55: Parsing script sample.fontdef
    252 23:00:55: Finished parsing scripts for resource group General
    253 23:00:55: Parsing scripts for resource group Internal
    254 23:00:55: Finished parsing scripts for resource group Internal
    255 23:00:55: Mesh: Loading ogrehead.mesh.
    256 23:00:55: Texture: WeirdEye.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
    257 23:00:55: Texture: GreenSkin.jpg: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
    258 23:00:55: Texture: spheremap.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
    259 23:00:55: D3D9 : ***** Dimensions altered by the render system
    260 23:00:55: D3D9 : ***** Source image dimensions : 96x96
    261 23:00:55: D3D9 : ***** Texture dimensions : 128x128
    262 23:00:55: Texture: dirt01.jpg: Loading 1 faces(PF_R8G8B8,96x96x1) with 7 generated mipmaps from Image. Internal format is PF_X8R8G8B8,128x128x1.
    263 23:00:55: Texture: cubescene_fr.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    264 23:00:56: Texture: cubescene_bk.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    265 23:00:56: Texture: cubescene_lf.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    266 23:00:56: Texture: cubescene_rt.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    267 23:00:56: Texture: cubescene_up.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    268 23:00:56: Texture: cubescene_dn.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    269 23:00:56: Texture: flare.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
    270 23:00:56: Mesh: Loading fish.mesh.
    271 23:00:56: Skeleton: Loading fish.skeleton
    272 23:00:56: Texture: steelhead.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
    273 23:00:56: WARNING: the mesh 'fish.mesh' includes vertices without bone assignments. Those vertices will transform to wrong position when skeletal animation enabled. To eliminate this, assign at least one bone assignment per vertex on your mesh.
    274 23:00:56: Creating viewport on target 'OGRE Render Window', rendering from camera 'PlayerCam', relative dimensions L: 0.00 T: 0.00 W: 1.00 H: 1.00 ZOrder: 0
    275 23:00:56: *** Initializing OIS ***
    276 23:01:04: Unregistering ResourceManager for type BspLevel
    277 23:01:04: *-*-* OGRE Shutdown
    278 23:01:04: Unregistering ResourceManager for type Compositor
    279 23:01:04: Unregistering ResourceManager for type Font
    280 23:01:04: Unregistering ResourceManager for type Skeleton
    281 23:01:04: Unregistering ResourceManager for type Mesh
    282 23:01:04: Unregistering ResourceManager for type HighLevelGpuProgram
    283 23:01:04: Uninstalling plugin: Cg Program Manager
    284 23:01:04: Plugin successfully uninstalled
    285 23:01:04: Unloading library .\Plugin_CgProgramManager_d
    286 23:01:04: Uninstalling plugin: Octree & Terrain Scene Manager
    287 23:01:04: Plugin successfully uninstalled
    288 23:01:04: Unloading library .\Plugin_OctreeSceneManager_d
    289 23:01:04: Uninstalling plugin: BSP Scene Manager
    290 23:01:04: Plugin successfully uninstalled
    291 23:01:04: Unloading library .\Plugin_BSPSceneManager_d
    292 23:01:04: Uninstalling plugin: ParticleFX
    293 23:01:04: Plugin successfully uninstalled
    294 23:01:04: Unloading library .\Plugin_ParticleFX_d
    295 23:01:04: Uninstalling plugin: GL RenderSystem
    296 23:01:04: *** Stopping Win32GL Subsystem ***
    297 23:01:04: Plugin successfully uninstalled
    298 23:01:04: Unloading library .\RenderSystem_GL_d
    299 23:01:04: Uninstalling plugin: D3D9 RenderSystem
    300 23:01:04: Render Target 'OGRE Render Window' Average FPS: 59.6204 Best FPS: 60.0985 Worst FPS: 26.7062
    301 23:01:04: D3D9 : Shutting down cleanly.
    302 23:01:04: Unregistering ResourceManager for type Texture
    303 23:01:04: Unregistering ResourceManager for type GpuProgram
    304 23:01:04: D3D9 : Direct3D9 Rendering Subsystem destroyed.
    305 23:01:04: Plugin successfully uninstalled
    306 23:01:04: Unloading library .\RenderSystem_Direct3D9_d
    307 23:01:04: Unregistering ResourceManager for type Material
     24016:52:52: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     24116:52:52: High-level program Ogre/HardwareSkinningTwoWeightsShadowCasterCg encountered an error during loading and is thus not supported.
     242OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogreresourcegroupmanager.cpp (line 604)
     24316:52:52: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
     24416:52:52: Error in material jaiqua at line 994 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     24516:52:52: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
     24616:52:52: Error in material jaiqua at line 995 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     24716:52:52: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at d:\eth\orxonox\ogre-win32-v1-4-5\ogremain\src\ogregpuprogram.cpp (line 854)
     24816:52:52: Error in material jaiqua at line 996 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     24916:52:52: Parsing script Ogre.material
     25016:52:52: Parsing script Examples.compositor
     25116:52:52: Parsing script sample.fontdef
     25216:52:52: Finished parsing scripts for resource group General
     25316:52:52: Parsing scripts for resource group Internal
     25416:52:52: Finished parsing scripts for resource group Internal
     25516:52:52: Mesh: Loading ogrehead.mesh.
     25616:52:52: Texture: WeirdEye.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
     25716:52:53: Texture: GreenSkin.jpg: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
     25816:52:53: Texture: spheremap.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
     25916:52:53: D3D9 : ***** Dimensions altered by the render system
     26016:52:53: D3D9 : ***** Source image dimensions : 96x96
     26116:52:53: D3D9 : ***** Texture dimensions : 128x128
     26216:52:53: Texture: dirt01.jpg: Loading 1 faces(PF_R8G8B8,96x96x1) with 7 generated mipmaps from Image. Internal format is PF_X8R8G8B8,128x128x1.
     26316:52:53: Texture: cubescene_fr.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26416:52:53: Texture: cubescene_bk.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26516:52:53: Texture: cubescene_lf.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26616:52:53: Texture: cubescene_rt.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26716:52:53: Texture: cubescene_up.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26816:52:53: Texture: cubescene_dn.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26916:52:53: Texture: flare.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
     27016:52:53: Mesh: Loading fish.mesh.
     27116:52:53: Skeleton: Loading fish.skeleton
     27216:52:53: Texture: steelhead.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
     27316:52:53: WARNING: the mesh 'fish.mesh' includes vertices without bone assignments. Those vertices will transform to wrong position when skeletal animation enabled. To eliminate this, assign at least one bone assignment per vertex on your mesh.
     27416:52:53: Creating viewport on target 'OGRE Render Window', rendering from camera 'PlayerCam', relative dimensions L: 0.00 T: 0.00 W: 1.00 H: 1.00 ZOrder: 0
     27516:52:53: *** Initializing OIS ***
     27616:54:36: Mesh: Loading Barrel.mesh.
     27716:54:36: Texture: RustyBarrel.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
     27816:54:58: Unregistering ResourceManager for type BspLevel
     27916:54:58: *-*-* OGRE Shutdown
     28016:54:58: Unregistering ResourceManager for type Compositor
     28116:54:58: Unregistering ResourceManager for type Font
     28216:54:58: Unregistering ResourceManager for type Skeleton
     28316:54:58: Unregistering ResourceManager for type Mesh
     28416:54:58: Unregistering ResourceManager for type HighLevelGpuProgram
     28516:54:58: Uninstalling plugin: Cg Program Manager
     28616:54:58: Plugin successfully uninstalled
     28716:54:58: Unloading library .\Plugin_CgProgramManager_d
     28816:54:58: Uninstalling plugin: Octree & Terrain Scene Manager
     28916:54:58: Plugin successfully uninstalled
     29016:54:58: Unloading library .\Plugin_OctreeSceneManager_d
     29116:54:58: Uninstalling plugin: BSP Scene Manager
     29216:54:58: Plugin successfully uninstalled
     29316:54:58: Unloading library .\Plugin_BSPSceneManager_d
     29416:54:58: Uninstalling plugin: ParticleFX
     29516:54:58: Plugin successfully uninstalled
     29616:54:58: Unloading library .\Plugin_ParticleFX_d
     29716:54:58: Uninstalling plugin: GL RenderSystem
     29816:54:58: *** Stopping Win32GL Subsystem ***
     29916:54:58: Plugin successfully uninstalled
     30016:54:58: Unloading library .\RenderSystem_GL_d
     30116:54:58: Uninstalling plugin: D3D9 RenderSystem
     30216:54:58: Render Target 'OGRE Render Window' Average FPS: 29.9978 Best FPS: 60.5159 Worst FPS: 12.8586
     30316:54:58: D3D9 : Shutting down cleanly.
     30416:54:58: Unregistering ResourceManager for type Texture
     30516:54:58: Unregistering ResourceManager for type GpuProgram
     30616:54:58: D3D9 : Direct3D9 Rendering Subsystem destroyed.
     30716:54:58: Plugin successfully uninstalled
     30816:54:58: Unloading library .\RenderSystem_Direct3D9_d
     30916:54:58: Unregistering ResourceManager for type Material
  • code/branches/main_reto_vs05/bin/Release/Ogre.log

    r159 r161  
    1 23:01:45: Creating resource group General
    2 23:01:45: Creating resource group Internal
    3 23:01:45: Creating resource group Autodetect
    4 23:01:45: SceneManagerFactory for type 'DefaultSceneManager' registered.
    5 23:01:45: Registering ResourceManager for type Material
    6 23:01:45: Registering ResourceManager for type Mesh
    7 23:01:45: Registering ResourceManager for type Skeleton
    8 23:01:45: MovableObjectFactory for type 'ParticleSystem' registered.
    9 23:01:45: OverlayElementFactory for type Panel registered.
    10 23:01:45: OverlayElementFactory for type BorderPanel registered.
    11 23:01:45: OverlayElementFactory for type TextArea registered.
    12 23:01:45: Registering ResourceManager for type Font
    13 23:01:45: ArchiveFactory for archive type FileSystem registered.
    14 23:01:45: ArchiveFactory for archive type Zip registered.
    15 23:01:45: FreeImage version: 3.9.2
    16 23:01:45: This program uses FreeImage, a free, open source image library supporting all common bitmap formats. See http://freeimage.sourceforge.net for details
    17 23:01:45: Supported formats: bmp,ico,jpg,jif,jpeg,jpe,jng,koa,iff,lbm,mng,pbm,pbm,pcd,pcx,pgm,pgm,png,ppm,ppm,ras,tga,targa,tif,tiff,wap,wbmp,wbm,psd,cut,xbm,xpm,gif,hdr,g3,sgi
    18 23:01:45: DDS codec registering
    19 23:01:45: Registering ResourceManager for type HighLevelGpuProgram
    20 23:01:45: Registering ResourceManager for type Compositor
    21 23:01:45: MovableObjectFactory for type 'Entity' registered.
    22 23:01:45: MovableObjectFactory for type 'Light' registered.
    23 23:01:45: MovableObjectFactory for type 'BillboardSet' registered.
    24 23:01:45: MovableObjectFactory for type 'ManualObject' registered.
    25 23:01:45: MovableObjectFactory for type 'BillboardChain' registered.
    26 23:01:45: MovableObjectFactory for type 'RibbonTrail' registered.
    27 23:01:45: Loading library .\RenderSystem_Direct3D9
    28 23:01:45: Installing plugin: D3D9 RenderSystem
    29 23:01:45: D3D9 : Direct3D9 Rendering Subsystem created.
    30 23:01:45: D3D9: Driver Detection Starts
    31 23:01:45: D3D9: Driver Detection Ends
    32 23:01:45: Plugin successfully installed
    33 23:01:45: Loading library .\RenderSystem_GL
    34 23:01:45: Installing plugin: GL RenderSystem
    35 23:01:45: OpenGL Rendering Subsystem created.
    36 23:01:46: Plugin successfully installed
    37 23:01:46: Loading library .\Plugin_ParticleFX
    38 23:01:46: Installing plugin: ParticleFX
    39 23:01:46: Particle Emitter Type 'Point' registered
    40 23:01:46: Particle Emitter Type 'Box' registered
    41 23:01:46: Particle Emitter Type 'Ellipsoid' registered
    42 23:01:46: Particle Emitter Type 'Cylinder' registered
    43 23:01:46: Particle Emitter Type 'Ring' registered
    44 23:01:46: Particle Emitter Type 'HollowEllipsoid' registered
    45 23:01:46: Particle Affector Type 'LinearForce' registered
    46 23:01:46: Particle Affector Type 'ColourFader' registered
    47 23:01:46: Particle Affector Type 'ColourFader2' registered
    48 23:01:46: Particle Affector Type 'ColourImage' registered
    49 23:01:46: Particle Affector Type 'ColourInterpolator' registered
    50 23:01:46: Particle Affector Type 'Scaler' registered
    51 23:01:46: Particle Affector Type 'Rotator' registered
    52 23:01:46: Particle Affector Type 'DirectionRandomiser' registered
    53 23:01:46: Particle Affector Type 'DeflectorPlane' registered
    54 23:01:46: Plugin successfully installed
    55 23:01:46: Loading library .\Plugin_BSPSceneManager
    56 23:01:46: Installing plugin: BSP Scene Manager
    57 23:01:46: Plugin successfully installed
    58 23:01:46: Loading library .\Plugin_OctreeSceneManager
    59 23:01:46: Installing plugin: Octree & Terrain Scene Manager
    60 23:01:46: Plugin successfully installed
    61 23:01:46: Loading library .\Plugin_CgProgramManager
    62 23:01:46: Installing plugin: Cg Program Manager
    63 23:01:46: Plugin successfully installed
    64 23:01:46: *-*-* OGRE Initialising
    65 23:01:46: *-*-* Version 1.4.5 (Eihort)
    66 23:01:46: Creating resource group Bootstrap
    67 23:01:46: Added resource location '../../media/packs/OgreCore.zip' of type 'Zip' to resource group 'Bootstrap'
    68 23:01:46: Added resource location '../../media' of type 'FileSystem' to resource group 'General'
    69 23:01:46: Added resource location '../../media/fonts' of type 'FileSystem' to resource group 'General'
    70 23:01:46: Added resource location '../../media/materials/scripts' of type 'FileSystem' to resource group 'General'
    71 23:01:46: Added resource location '../../media/materials/textures' of type 'FileSystem' to resource group 'General'
    72 23:01:46: Added resource location '../../media/models' of type 'FileSystem' to resource group 'General'
    73 23:01:46: Added resource location '../../media/gui' of type 'FileSystem' to resource group 'General'
    74 23:01:46: Added resource location '../../media/packs/cubemap.zip' of type 'Zip' to resource group 'General'
    75 23:01:46: Added resource location '../../media/packs/skybox.zip' of type 'Zip' to resource group 'General'
    76 23:01:46: D3D9 : RenderSystem Option: Allow NVPerfHUD = No
    77 23:01:46: D3D9 : RenderSystem Option: Anti aliasing = Level 6
    78 23:01:46: D3D9 : RenderSystem Option: Floating-point mode = Consistent
    79 23:01:46: D3D9 : RenderSystem Option: Full Screen = Yes
    80 23:01:46: D3D9 : RenderSystem Option: Rendering Device = ATI Mobility Radeon X1400
    81 23:01:46: D3D9 : RenderSystem Option: VSync = Yes
    82 23:01:46: D3D9 : RenderSystem Option: Video Mode = 1400 x 1050 @ 32-bit colour
    83 23:01:46: CPU Identifier & Features
    84 23:01:46: -------------------------
    85 23:01:46:  *   CPU ID: GenuineIntel: Genuine Intel(R) CPU           T2500  @ 2.00GHz
    86 23:01:46:  *      SSE: yes
    87 23:01:46:  *     SSE2: yes
    88 23:01:46:  *     SSE3: yes
    89 23:01:46:  *      MMX: yes
    90 23:01:46:  *   MMXEXT: yes
    91 23:01:46:  *    3DNOW: no
    92 23:01:46:  * 3DNOWEXT: no
    93 23:01:46:  *     CMOV: yes
    94 23:01:46:  *      TSC: yes
    95 23:01:46:  *      FPU: yes
    96 23:01:46:  *      PRO: yes
    97 23:01:46:  *       HT: no
    98 23:01:46: -------------------------
    99 23:01:46: D3D9 : Subsystem Initialising
    100 23:01:46: D3D9RenderSystem::createRenderWindow "OGRE Render Window", 1400x1050 fullscreen  miscParams: FSAA=6 FSAAQuality=0 colourDepth=32 useNVPerfHUD=false vsync=true
    101 23:01:46: D3D9 : Created D3D9 Rendering Window 'OGRE Render Window' : 1400x1050, 32bpp
    102 23:01:46: Registering ResourceManager for type Texture
    103 23:01:46: Registering ResourceManager for type GpuProgram
    104 23:01:46: RenderSystem capabilities
    105 23:01:46: -------------------------
    106 23:01:46:  * Hardware generation of mipmaps: yes
    107 23:01:46:  * Texture blending: yes
    108 23:01:46:  * Anisotropic texture filtering: yes
    109 23:01:46:  * Dot product texture operation: yes
    110 23:01:46:  * Cube mapping: yes
    111 23:01:46:  * Hardware stencil buffer: yes
    112 23:01:46:    - Stencil depth: 8
    113 23:01:46:    - Two sided stencil support: yes
    114 23:01:46:    - Wrap stencil values: yes
    115 23:01:46:  * Hardware vertex / index buffers: yes
    116 23:01:46:  * Vertex programs: yes
    117 23:01:46:    - Max vertex program version: vs_3_0
    118 23:01:46:  * Fragment programs: yes
    119 23:01:46:    - Max fragment program version: ps_3_0
    120 23:01:46:  * Texture Compression: yes
    121 23:01:46:    - DXT: yes
    122 23:01:46:    - VTC: no
    123 23:01:46:  * Scissor Rectangle: yes
    124 23:01:46:  * Hardware Occlusion Query: yes
    125 23:01:46:  * User clip planes: yes
    126 23:01:46:  * VET_UBYTE4 vertex element type: yes
    127 23:01:46:  * Infinite far plane projection: yes
    128 23:01:46:  * Hardware render-to-texture: yes
    129 23:01:46:  * Floating point textures: yes
    130 23:01:46:  * Non-power-of-two textures: yes (limited)
    131 23:01:46:  * Volume textures: yes
    132 23:01:46:  * Multiple Render Targets: 4
    133 23:01:46:  * Point Sprites: yes
    134 23:01:46:  * Extended point parameters: yes
    135 23:01:46:  * Max Point Size: 256
    136 23:01:46:  * Vertex texture fetch: no
    137 23:01:46: ***************************************
    138 23:01:46: *** D3D9 : Subsystem Initialised OK ***
    139 23:01:46: ***************************************
    140 23:01:46: ResourceBackgroundQueue - threading disabled
    141 23:01:46: Particle Renderer Type 'billboard' registered
    142 23:01:46: SceneManagerFactory for type 'BspSceneManager' registered.
    143 23:01:46: Registering ResourceManager for type BspLevel
    144 23:01:46: SceneManagerFactory for type 'OctreeSceneManager' registered.
    145 23:01:46: SceneManagerFactory for type 'TerrainSceneManager' registered.
    146 23:01:46: Parsing scripts for resource group Autodetect
    147 23:01:46: Finished parsing scripts for resource group Autodetect
    148 23:01:46: Parsing scripts for resource group Bootstrap
    149 23:01:46: Parsing script OgreCore.material
    150 23:01:46: Parsing script OgreProfiler.material
    151 23:01:46: Parsing script Ogre.fontdef
    152 23:01:46: Parsing script OgreDebugPanel.overlay
    153 23:01:46: Texture: New_Ogre_Border_Center.png: Loading 1 faces(PF_A8R8G8B8,256x128x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x128x1.
    154 23:01:46: Texture: New_Ogre_Border.png: Loading 1 faces(PF_A8R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x256x1.
    155 23:01:46: Texture: New_Ogre_Border_Break.png: Loading 1 faces(PF_A8R8G8B8,32x32x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,32x32x1.
    156 23:01:46: Font BlueHighwayusing texture size 512x512
    157 23:01:46: Info: Freetype returned null for character 127 in font BlueHighway
    158 23:01:46: Info: Freetype returned null for character 128 in font BlueHighway
    159 23:01:46: Info: Freetype returned null for character 129 in font BlueHighway
    160 23:01:46: Info: Freetype returned null for character 130 in font BlueHighway
    161 23:01:46: Info: Freetype returned null for character 131 in font BlueHighway
    162 23:01:46: Info: Freetype returned null for character 132 in font BlueHighway
    163 23:01:46: Info: Freetype returned null for character 133 in font BlueHighway
    164 23:01:46: Info: Freetype returned null for character 134 in font BlueHighway
    165 23:01:46: Info: Freetype returned null for character 135 in font BlueHighway
    166 23:01:46: Info: Freetype returned null for character 136 in font BlueHighway
    167 23:01:46: Info: Freetype returned null for character 137 in font BlueHighway
    168 23:01:46: Info: Freetype returned null for character 138 in font BlueHighway
    169 23:01:46: Info: Freetype returned null for character 139 in font BlueHighway
    170 23:01:46: Info: Freetype returned null for character 140 in font BlueHighway
    171 23:01:46: Info: Freetype returned null for character 141 in font BlueHighway
    172 23:01:46: Info: Freetype returned null for character 142 in font BlueHighway
    173 23:01:46: Info: Freetype returned null for character 143 in font BlueHighway
    174 23:01:46: Info: Freetype returned null for character 144 in font BlueHighway
    175 23:01:46: Info: Freetype returned null for character 145 in font BlueHighway
    176 23:01:46: Info: Freetype returned null for character 146 in font BlueHighway
    177 23:01:46: Info: Freetype returned null for character 147 in font BlueHighway
    178 23:01:46: Info: Freetype returned null for character 148 in font BlueHighway
    179 23:01:46: Info: Freetype returned null for character 149 in font BlueHighway
    180 23:01:46: Info: Freetype returned null for character 150 in font BlueHighway
    181 23:01:46: Info: Freetype returned null for character 151 in font BlueHighway
    182 23:01:46: Info: Freetype returned null for character 152 in font BlueHighway
    183 23:01:46: Info: Freetype returned null for character 153 in font BlueHighway
    184 23:01:46: Info: Freetype returned null for character 154 in font BlueHighway
    185 23:01:46: Info: Freetype returned null for character 155 in font BlueHighway
    186 23:01:46: Info: Freetype returned null for character 156 in font BlueHighway
    187 23:01:46: Info: Freetype returned null for character 157 in font BlueHighway
    188 23:01:46: Info: Freetype returned null for character 158 in font BlueHighway
    189 23:01:46: Info: Freetype returned null for character 159 in font BlueHighway
    190 23:01:46: Info: Freetype returned null for character 160 in font BlueHighway
    191 23:01:46: Texture: BlueHighwayTexture: Loading 1 faces(PF_BYTE_LA,512x512x1) with 0 generated mipmaps from Image. Internal format is PF_BYTE_LA,512x512x1.
    192 23:01:46: Texture: ogretext.png: Loading 1 faces(PF_A8R8G8B8,256x128x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x128x1.
    193 23:01:46: Parsing script OgreLoadingPanel.overlay
    194 23:01:46: Finished parsing scripts for resource group Bootstrap
    195 23:01:46: Parsing scripts for resource group General
    196 23:01:46: Parsing script Examples.program
    197 23:01:46: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    198 23:01:46: High-level program Ogre/BasicVertexPrograms/AmbientOneTexture encountered an error during loading and is thus not supported.
    199 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    200 23:01:46: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.hlsl in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    201 23:01:46: High-level program Ogre/BasicVertexPrograms/AmbientOneTextureHLSL encountered an error during loading and is thus not supported.
     112:38:58: Creating resource group General
     212:38:58: Creating resource group Internal
     312:38:58: Creating resource group Autodetect
     412:38:58: SceneManagerFactory for type 'DefaultSceneManager' registered.
     512:38:58: Registering ResourceManager for type Material
     612:38:58: Registering ResourceManager for type Mesh
     712:38:58: Registering ResourceManager for type Skeleton
     812:38:58: MovableObjectFactory for type 'ParticleSystem' registered.
     912:38:58: OverlayElementFactory for type Panel registered.
     1012:38:58: OverlayElementFactory for type BorderPanel registered.
     1112:38:58: OverlayElementFactory for type TextArea registered.
     1212:38:58: Registering ResourceManager for type Font
     1312:38:58: ArchiveFactory for archive type FileSystem registered.
     1412:38:58: ArchiveFactory for archive type Zip registered.
     1512:38:58: FreeImage version: 3.9.2
     1612:38:58: This program uses FreeImage, a free, open source image library supporting all common bitmap formats. See http://freeimage.sourceforge.net for details
     1712:38:58: Supported formats: bmp,ico,jpg,jif,jpeg,jpe,jng,koa,iff,lbm,mng,pbm,pbm,pcd,pcx,pgm,pgm,png,ppm,ppm,ras,tga,targa,tif,tiff,wap,wbmp,wbm,psd,cut,xbm,xpm,gif,hdr,g3,sgi
     1812:38:58: DDS codec registering
     1912:38:58: Registering ResourceManager for type HighLevelGpuProgram
     2012:38:58: Registering ResourceManager for type Compositor
     2112:38:58: MovableObjectFactory for type 'Entity' registered.
     2212:38:58: MovableObjectFactory for type 'Light' registered.
     2312:38:58: MovableObjectFactory for type 'BillboardSet' registered.
     2412:38:58: MovableObjectFactory for type 'ManualObject' registered.
     2512:38:58: MovableObjectFactory for type 'BillboardChain' registered.
     2612:38:58: MovableObjectFactory for type 'RibbonTrail' registered.
     2712:38:58: Loading library .\RenderSystem_Direct3D9
     2812:38:58: Installing plugin: D3D9 RenderSystem
     2912:38:58: D3D9 : Direct3D9 Rendering Subsystem created.
     3012:38:58: D3D9: Driver Detection Starts
     3112:38:58: D3D9: Driver Detection Ends
     3212:38:58: Plugin successfully installed
     3312:38:58: Loading library .\RenderSystem_GL
     3412:38:58: Installing plugin: GL RenderSystem
     3512:38:58: OpenGL Rendering Subsystem created.
     3612:38:58: Plugin successfully installed
     3712:38:58: Loading library .\Plugin_ParticleFX
     3812:38:58: Installing plugin: ParticleFX
     3912:38:58: Particle Emitter Type 'Point' registered
     4012:38:58: Particle Emitter Type 'Box' registered
     4112:38:58: Particle Emitter Type 'Ellipsoid' registered
     4212:38:58: Particle Emitter Type 'Cylinder' registered
     4312:38:58: Particle Emitter Type 'Ring' registered
     4412:38:58: Particle Emitter Type 'HollowEllipsoid' registered
     4512:38:58: Particle Affector Type 'LinearForce' registered
     4612:38:58: Particle Affector Type 'ColourFader' registered
     4712:38:58: Particle Affector Type 'ColourFader2' registered
     4812:38:58: Particle Affector Type 'ColourImage' registered
     4912:38:58: Particle Affector Type 'ColourInterpolator' registered
     5012:38:58: Particle Affector Type 'Scaler' registered
     5112:38:58: Particle Affector Type 'Rotator' registered
     5212:38:58: Particle Affector Type 'DirectionRandomiser' registered
     5312:38:58: Particle Affector Type 'DeflectorPlane' registered
     5412:38:58: Plugin successfully installed
     5512:38:58: Loading library .\Plugin_BSPSceneManager
     5612:38:58: Installing plugin: BSP Scene Manager
     5712:38:58: Plugin successfully installed
     5812:38:58: Loading library .\Plugin_OctreeSceneManager
     5912:38:58: Installing plugin: Octree & Terrain Scene Manager
     6012:38:58: Plugin successfully installed
     6112:38:58: Loading library .\Plugin_CgProgramManager
     6212:38:58: Installing plugin: Cg Program Manager
     6312:38:58: Plugin successfully installed
     6412:38:58: *-*-* OGRE Initialising
     6512:38:58: *-*-* Version 1.4.5 (Eihort)
     6612:38:58: Creating resource group Bootstrap
     6712:38:58: Added resource location '../../media/packs/OgreCore.zip' of type 'Zip' to resource group 'Bootstrap'
     6812:38:58: Added resource location '../../media' of type 'FileSystem' to resource group 'General'
     6912:38:58: Added resource location '../../media/fonts' of type 'FileSystem' to resource group 'General'
     7012:38:58: Added resource location '../../media/materials/scripts' of type 'FileSystem' to resource group 'General'
     7112:38:58: Added resource location '../../media/materials/textures' of type 'FileSystem' to resource group 'General'
     7212:38:58: Added resource location '../../media/models' of type 'FileSystem' to resource group 'General'
     7312:38:58: Added resource location '../../media/gui' of type 'FileSystem' to resource group 'General'
     7412:38:58: Added resource location '../../media/packs/cubemap.zip' of type 'Zip' to resource group 'General'
     7512:38:58: Added resource location '../../media/packs/skybox.zip' of type 'Zip' to resource group 'General'
     7612:38:58: D3D9 : RenderSystem Option: Allow NVPerfHUD = No
     7712:38:58: D3D9 : RenderSystem Option: Anti aliasing = Level 6
     7812:38:58: D3D9 : RenderSystem Option: Floating-point mode = Consistent
     7912:38:58: D3D9 : RenderSystem Option: Full Screen = Yes
     8012:38:58: D3D9 : RenderSystem Option: Rendering Device = ATI Mobility Radeon X1400
     8112:38:58: D3D9 : RenderSystem Option: VSync = Yes
     8212:38:58: D3D9 : RenderSystem Option: Video Mode = 1400 x 1050 @ 32-bit colour
     8312:38:58: CPU Identifier & Features
     8412:38:58: -------------------------
     8512:38:58:  *   CPU ID: GenuineIntel: Genuine Intel(R) CPU           T2500  @ 2.00GHz
     8612:38:58:  *      SSE: yes
     8712:38:58:  *     SSE2: yes
     8812:38:58:  *     SSE3: yes
     8912:38:58:  *      MMX: yes
     9012:38:58:  *   MMXEXT: yes
     9112:38:58:  *    3DNOW: no
     9212:38:58:  * 3DNOWEXT: no
     9312:38:58:  *     CMOV: yes
     9412:38:58:  *      TSC: yes
     9512:38:58:  *      FPU: yes
     9612:38:58:  *      PRO: yes
     9712:38:58:  *       HT: no
     9812:38:58: -------------------------
     9912:38:58: D3D9 : Subsystem Initialising
     10012:38:58: D3D9RenderSystem::createRenderWindow "OGRE Render Window", 1400x1050 fullscreen  miscParams: FSAA=6 FSAAQuality=0 colourDepth=32 useNVPerfHUD=false vsync=true
     10112:38:58: D3D9 : Created D3D9 Rendering Window 'OGRE Render Window' : 1400x1050, 32bpp
     10212:38:58: Registering ResourceManager for type Texture
     10312:38:58: Registering ResourceManager for type GpuProgram
     10412:38:58: RenderSystem capabilities
     10512:38:58: -------------------------
     10612:38:58:  * Hardware generation of mipmaps: yes
     10712:38:58:  * Texture blending: yes
     10812:38:58:  * Anisotropic texture filtering: yes
     10912:38:58:  * Dot product texture operation: yes
     11012:38:58:  * Cube mapping: yes
     11112:38:58:  * Hardware stencil buffer: yes
     11212:38:58:    - Stencil depth: 8
     11312:38:58:    - Two sided stencil support: yes
     11412:38:58:    - Wrap stencil values: yes
     11512:38:58:  * Hardware vertex / index buffers: yes
     11612:38:58:  * Vertex programs: yes
     11712:38:58:    - Max vertex program version: vs_3_0
     11812:38:58:  * Fragment programs: yes
     11912:38:58:    - Max fragment program version: ps_3_0
     12012:38:58:  * Texture Compression: yes
     12112:38:58:    - DXT: yes
     12212:38:58:    - VTC: no
     12312:38:58:  * Scissor Rectangle: yes
     12412:38:58:  * Hardware Occlusion Query: yes
     12512:38:58:  * User clip planes: yes
     12612:38:58:  * VET_UBYTE4 vertex element type: yes
     12712:38:58:  * Infinite far plane projection: yes
     12812:38:58:  * Hardware render-to-texture: yes
     12912:38:58:  * Floating point textures: yes
     13012:38:58:  * Non-power-of-two textures: yes (limited)
     13112:38:58:  * Volume textures: yes
     13212:38:58:  * Multiple Render Targets: 4
     13312:38:58:  * Point Sprites: yes
     13412:38:58:  * Extended point parameters: yes
     13512:38:58:  * Max Point Size: 256
     13612:38:58:  * Vertex texture fetch: no
     13712:38:58: ***************************************
     13812:38:58: *** D3D9 : Subsystem Initialised OK ***
     13912:38:58: ***************************************
     14012:38:58: ResourceBackgroundQueue - threading disabled
     14112:38:58: Particle Renderer Type 'billboard' registered
     14212:38:58: SceneManagerFactory for type 'BspSceneManager' registered.
     14312:38:58: Registering ResourceManager for type BspLevel
     14412:38:58: SceneManagerFactory for type 'OctreeSceneManager' registered.
     14512:38:58: SceneManagerFactory for type 'TerrainSceneManager' registered.
     14612:38:58: Parsing scripts for resource group Autodetect
     14712:38:58: Finished parsing scripts for resource group Autodetect
     14812:38:58: Parsing scripts for resource group Bootstrap
     14912:38:58: Parsing script OgreCore.material
     15012:38:58: Parsing script OgreProfiler.material
     15112:38:58: Parsing script Ogre.fontdef
     15212:38:58: Parsing script OgreDebugPanel.overlay
     15312:38:58: Texture: New_Ogre_Border_Center.png: Loading 1 faces(PF_A8R8G8B8,256x128x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x128x1.
     15412:38:58: Texture: New_Ogre_Border.png: Loading 1 faces(PF_A8R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x256x1.
     15512:38:58: Texture: New_Ogre_Border_Break.png: Loading 1 faces(PF_A8R8G8B8,32x32x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,32x32x1.
     15612:38:58: Font BlueHighwayusing texture size 512x512
     15712:38:58: Info: Freetype returned null for character 127 in font BlueHighway
     15812:38:58: Info: Freetype returned null for character 128 in font BlueHighway
     15912:38:58: Info: Freetype returned null for character 129 in font BlueHighway
     16012:38:58: Info: Freetype returned null for character 130 in font BlueHighway
     16112:38:58: Info: Freetype returned null for character 131 in font BlueHighway
     16212:38:58: Info: Freetype returned null for character 132 in font BlueHighway
     16312:38:58: Info: Freetype returned null for character 133 in font BlueHighway
     16412:38:58: Info: Freetype returned null for character 134 in font BlueHighway
     16512:38:58: Info: Freetype returned null for character 135 in font BlueHighway
     16612:38:58: Info: Freetype returned null for character 136 in font BlueHighway
     16712:38:58: Info: Freetype returned null for character 137 in font BlueHighway
     16812:38:58: Info: Freetype returned null for character 138 in font BlueHighway
     16912:38:58: Info: Freetype returned null for character 139 in font BlueHighway
     17012:38:58: Info: Freetype returned null for character 140 in font BlueHighway
     17112:38:58: Info: Freetype returned null for character 141 in font BlueHighway
     17212:38:58: Info: Freetype returned null for character 142 in font BlueHighway
     17312:38:58: Info: Freetype returned null for character 143 in font BlueHighway
     17412:38:58: Info: Freetype returned null for character 144 in font BlueHighway
     17512:38:58: Info: Freetype returned null for character 145 in font BlueHighway
     17612:38:58: Info: Freetype returned null for character 146 in font BlueHighway
     17712:38:58: Info: Freetype returned null for character 147 in font BlueHighway
     17812:38:58: Info: Freetype returned null for character 148 in font BlueHighway
     17912:38:58: Info: Freetype returned null for character 149 in font BlueHighway
     18012:38:58: Info: Freetype returned null for character 150 in font BlueHighway
     18112:38:58: Info: Freetype returned null for character 151 in font BlueHighway
     18212:38:58: Info: Freetype returned null for character 152 in font BlueHighway
     18312:38:58: Info: Freetype returned null for character 153 in font BlueHighway
     18412:38:58: Info: Freetype returned null for character 154 in font BlueHighway
     18512:38:58: Info: Freetype returned null for character 155 in font BlueHighway
     18612:38:58: Info: Freetype returned null for character 156 in font BlueHighway
     18712:38:58: Info: Freetype returned null for character 157 in font BlueHighway
     18812:38:58: Info: Freetype returned null for character 158 in font BlueHighway
     18912:38:58: Info: Freetype returned null for character 159 in font BlueHighway
     19012:38:58: Info: Freetype returned null for character 160 in font BlueHighway
     19112:38:58: Texture: BlueHighwayTexture: Loading 1 faces(PF_BYTE_LA,512x512x1) with 0 generated mipmaps from Image. Internal format is PF_BYTE_LA,512x512x1.
     19212:38:58: Texture: ogretext.png: Loading 1 faces(PF_A8R8G8B8,256x128x1) with  hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,256x128x1.
     19312:38:58: Parsing script OgreLoadingPanel.overlay
     19412:38:58: Finished parsing scripts for resource group Bootstrap
     19512:38:58: Parsing scripts for resource group General
     19612:38:58: Parsing script Examples.program
     19712:38:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     19812:38:58: High-level program Ogre/BasicVertexPrograms/AmbientOneTexture encountered an error during loading and is thus not supported.
     199OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     20012:38:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.hlsl in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     20112:38:58: High-level program Ogre/BasicVertexPrograms/AmbientOneTextureHLSL encountered an error during loading and is thus not supported.
    202202OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.hlsl in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    203 23:01:46: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    204 23:01:46: High-level program Ogre/HardwareSkinningTwoWeightsCg encountered an error during loading and is thus not supported.
    205 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    206 23:01:46: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
    207 23:01:46: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    208 23:01:46: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
    209 23:01:46: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    210 23:01:46: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
    211 23:01:46: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    212 23:01:46: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
    213 23:01:46: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    214 23:01:46: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
    215 23:01:46: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    216 23:01:46: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
    217 23:01:46: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    218 23:01:46: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    219 23:01:46: High-level program Ogre/HardwareMorphAnimation encountered an error during loading and is thus not supported.
    220 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    221 23:01:46: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    222 23:01:46: High-level program Ogre/HardwarePoseAnimation encountered an error during loading and is thus not supported.
    223 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    224 23:01:46: Parsing script Example.material
    225 23:01:46: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    226 23:01:46: High-level program Examples/MorningSkyBoxHDRfp encountered an error during loading and is thus not supported.
     20312:38:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     20412:38:58: High-level program Ogre/HardwareSkinningTwoWeightsCg encountered an error during loading and is thus not supported.
     205OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     20612:38:58: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
     20712:38:58: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     20812:38:58: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
     20912:38:58: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     21012:38:58: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
     21112:38:58: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     21212:38:58: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
     21312:38:58: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     21412:38:58: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
     21512:38:58: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     21612:38:58: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
     21712:38:58: Error at line 118 of Examples.program: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     21812:38:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     21912:38:58: High-level program Ogre/HardwareMorphAnimation encountered an error during loading and is thus not supported.
     220OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     22112:38:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     22212:38:58: High-level program Ogre/HardwarePoseAnimation encountered an error during loading and is thus not supported.
     223OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     22412:38:58: Parsing script Example.material
     22512:38:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     22612:38:58: High-level program Examples/MorningSkyBoxHDRfp encountered an error during loading and is thus not supported.
    227227OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    228 23:01:46: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    229 23:01:46: High-level program Examples/MorningCubeMapHDRfp encountered an error during loading and is thus not supported.
     22812:38:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     22912:38:58: High-level program Examples/MorningCubeMapHDRfp encountered an error during loading and is thus not supported.
    230230OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource hdr.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    231 23:01:46: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    232 23:01:46: High-level program Ogre/HardwareSkinningOneWeight encountered an error during loading and is thus not supported.
    233 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    234 23:01:46: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    235 23:01:46: High-level program Ogre/HardwareSkinningOneWeightShadowCaster encountered an error during loading and is thus not supported.
    236 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    237 23:01:46: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Grass.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    238 23:01:46: High-level program Examples/GrassWaverVp encountered an error during loading and is thus not supported.
     23112:38:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     23212:38:58: High-level program Ogre/HardwareSkinningOneWeight encountered an error during loading and is thus not supported.
     233OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     23412:38:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     23512:38:58: High-level program Ogre/HardwareSkinningOneWeightShadowCaster encountered an error during loading and is thus not supported.
     236OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     23712:38:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Grass.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     23812:38:58: High-level program Examples/GrassWaverVp encountered an error during loading and is thus not supported.
    239239OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Grass.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    240 23:01:46: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    241 23:01:46: High-level program Ogre/HardwareSkinningTwoWeightsShadowCasterCg encountered an error during loading and is thus not supported.
    242 OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
    243 23:01:46: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
    244 23:01:46: Error in material jaiqua at line 994 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    245 23:01:46: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
    246 23:01:46: Error in material jaiqua at line 995 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    247 23:01:46: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
    248 23:01:46: Error in material jaiqua at line 996 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
    249 23:01:46: Parsing script Ogre.material
    250 23:01:46: Parsing script Examples.compositor
    251 23:01:46: Parsing script sample.fontdef
    252 23:01:46: Finished parsing scripts for resource group General
    253 23:01:46: Parsing scripts for resource group Internal
    254 23:01:46: Finished parsing scripts for resource group Internal
    255 23:01:46: Mesh: Loading ogrehead.mesh.
    256 23:01:46: Texture: WeirdEye.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
    257 23:01:46: Texture: GreenSkin.jpg: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
    258 23:01:46: Texture: spheremap.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
    259 23:01:46: D3D9 : ***** Dimensions altered by the render system
    260 23:01:46: D3D9 : ***** Source image dimensions : 96x96
    261 23:01:46: D3D9 : ***** Texture dimensions : 128x128
    262 23:01:46: Texture: dirt01.jpg: Loading 1 faces(PF_R8G8B8,96x96x1) with 7 generated mipmaps from Image. Internal format is PF_X8R8G8B8,128x128x1.
    263 23:01:46: Texture: cubescene_fr.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    264 23:01:46: Texture: cubescene_bk.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    265 23:01:46: Texture: cubescene_lf.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    266 23:01:46: Texture: cubescene_rt.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    267 23:01:46: Texture: cubescene_up.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    268 23:01:46: Texture: cubescene_dn.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
    269 23:01:46: Texture: flare.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
    270 23:01:46: Mesh: Loading fish.mesh.
    271 23:01:46: Skeleton: Loading fish.skeleton
    272 23:01:46: Texture: steelhead.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
    273 23:01:46: WARNING: the mesh 'fish.mesh' includes vertices without bone assignments. Those vertices will transform to wrong position when skeletal animation enabled. To eliminate this, assign at least one bone assignment per vertex on your mesh.
    274 23:01:46: Creating viewport on target 'OGRE Render Window', rendering from camera 'PlayerCam', relative dimensions L: 0.00 T: 0.00 W: 1.00 H: 1.00 ZOrder: 0
    275 23:01:46: *** Initializing OIS ***
    276 23:02:42: Unregistering ResourceManager for type BspLevel
    277 23:02:42: *-*-* OGRE Shutdown
    278 23:02:42: Unregistering ResourceManager for type Compositor
    279 23:02:42: Unregistering ResourceManager for type Font
    280 23:02:42: Unregistering ResourceManager for type Skeleton
    281 23:02:42: Unregistering ResourceManager for type Mesh
    282 23:02:42: Unregistering ResourceManager for type HighLevelGpuProgram
    283 23:02:42: Uninstalling plugin: Cg Program Manager
    284 23:02:42: Plugin successfully uninstalled
    285 23:02:42: Unloading library .\Plugin_CgProgramManager
    286 23:02:42: Uninstalling plugin: Octree & Terrain Scene Manager
    287 23:02:42: Plugin successfully uninstalled
    288 23:02:42: Unloading library .\Plugin_OctreeSceneManager
    289 23:02:42: Uninstalling plugin: BSP Scene Manager
    290 23:02:42: Plugin successfully uninstalled
    291 23:02:42: Unloading library .\Plugin_BSPSceneManager
    292 23:02:42: Uninstalling plugin: ParticleFX
    293 23:02:42: Plugin successfully uninstalled
    294 23:02:42: Unloading library .\Plugin_ParticleFX
    295 23:02:42: Uninstalling plugin: GL RenderSystem
    296 23:02:42: *** Stopping Win32GL Subsystem ***
    297 23:02:42: Plugin successfully uninstalled
    298 23:02:42: Unloading library .\RenderSystem_GL
    299 23:02:42: Uninstalling plugin: D3D9 RenderSystem
    300 23:02:42: Render Target 'OGRE Render Window' Average FPS: 60.0056 Best FPS: 63.1787 Worst FPS: 2.32831e-007
    301 23:02:44: D3D9 : Shutting down cleanly.
    302 23:02:44: Unregistering ResourceManager for type Texture
    303 23:02:44: Unregistering ResourceManager for type GpuProgram
    304 23:02:44: D3D9 : Direct3D9 Rendering Subsystem destroyed.
    305 23:02:44: Plugin successfully uninstalled
    306 23:02:44: Unloading library .\RenderSystem_Direct3D9
    307 23:02:44: Unregistering ResourceManager for type Material
     24012:38:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     24112:38:58: High-level program Ogre/HardwareSkinningTwoWeightsShadowCasterCg encountered an error during loading and is thus not supported.
     242OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Example_Basic.cg in resource group General or any other group. in ResourceGroupManager::openResource at ..\src\OgreResourceGroupManager.cpp (line 604)
     24312:38:58: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
     24412:38:58: Error in material jaiqua at line 994 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     24512:38:58: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
     24612:38:58: Error in material jaiqua at line 995 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     24712:38:58: OGRE EXCEPTION(2:InvalidParametersException): This params object is not based on a program with named parameters. in GpuProgramParameters::getConstantDefinitionIterator at ..\src\OgreGpuProgram.cpp (line 854)
     24812:38:58: Error in material jaiqua at line 996 of Example.material: Invalid param_named_auto attribute - This params object is not based on a program with named parameters.
     24912:38:58: Parsing script Ogre.material
     25012:38:59: Parsing script Examples.compositor
     25112:38:59: Parsing script sample.fontdef
     25212:38:59: Finished parsing scripts for resource group General
     25312:38:59: Parsing scripts for resource group Internal
     25412:38:59: Finished parsing scripts for resource group Internal
     25512:38:59: Mesh: Loading ogrehead.mesh.
     25612:38:59: Texture: WeirdEye.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
     25712:38:59: Texture: GreenSkin.jpg: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
     25812:38:59: Texture: spheremap.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
     25912:38:59: D3D9 : ***** Dimensions altered by the render system
     26012:38:59: D3D9 : ***** Source image dimensions : 96x96
     26112:38:59: D3D9 : ***** Texture dimensions : 128x128
     26212:38:59: Texture: dirt01.jpg: Loading 1 faces(PF_R8G8B8,96x96x1) with 7 generated mipmaps from Image. Internal format is PF_X8R8G8B8,128x128x1.
     26312:38:59: Texture: cubescene_fr.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26412:38:59: Texture: cubescene_bk.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26512:38:59: Texture: cubescene_lf.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26612:38:59: Texture: cubescene_rt.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26712:38:59: Texture: cubescene_up.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26812:38:59: Texture: cubescene_dn.jpg: Loading 1 faces(PF_R8G8B8,512x512x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,512x512x1.
     26912:38:59: Texture: flare.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
     27012:38:59: Mesh: Loading fish.mesh.
     27112:38:59: Skeleton: Loading fish.skeleton
     27212:38:59: Texture: steelhead.png: Loading 1 faces(PF_R8G8B8,256x256x1) with  hardware generated mipmaps from Image. Internal format is PF_X8R8G8B8,256x256x1.
     27312:38:59: WARNING: the mesh 'fish.mesh' includes vertices without bone assignments. Those vertices will transform to wrong position when skeletal animation enabled. To eliminate this, assign at least one bone assignment per vertex on your mesh.
     27412:38:59: Creating viewport on target 'OGRE Render Window', rendering from camera 'PlayerCam', relative dimensions L: 0.00 T: 0.00 W: 1.00 H: 1.00 ZOrder: 0
     27512:38:59: *** Initializing OIS ***
     27612:39:00: Unregistering ResourceManager for type BspLevel
     27712:39:00: *-*-* OGRE Shutdown
     27812:39:00: Unregistering ResourceManager for type Compositor
     27912:39:00: Unregistering ResourceManager for type Font
     28012:39:00: Unregistering ResourceManager for type Skeleton
     28112:39:00: Unregistering ResourceManager for type Mesh
     28212:39:00: Unregistering ResourceManager for type HighLevelGpuProgram
     28312:39:00: Uninstalling plugin: Cg Program Manager
     28412:39:00: Plugin successfully uninstalled
     28512:39:00: Unloading library .\Plugin_CgProgramManager
     28612:39:00: Uninstalling plugin: Octree & Terrain Scene Manager
     28712:39:00: Plugin successfully uninstalled
     28812:39:00: Unloading library .\Plugin_OctreeSceneManager
     28912:39:00: Uninstalling plugin: BSP Scene Manager
     29012:39:00: Plugin successfully uninstalled
     29112:39:00: Unloading library .\Plugin_BSPSceneManager
     29212:39:00: Uninstalling plugin: ParticleFX
     29312:39:00: Plugin successfully uninstalled
     29412:39:00: Unloading library .\Plugin_ParticleFX
     29512:39:00: Uninstalling plugin: GL RenderSystem
     29612:39:00: *** Stopping Win32GL Subsystem ***
     29712:39:00: Plugin successfully uninstalled
     29812:39:00: Unloading library .\RenderSystem_GL
     29912:39:00: Uninstalling plugin: D3D9 RenderSystem
     30012:39:00: Render Target 'OGRE Render Window' Average FPS: 2.32831e-007 Best FPS: 2.32831e-007 Worst FPS: 2.32831e-007
     30112:39:02: D3D9 : Shutting down cleanly.
     30212:39:02: Unregistering ResourceManager for type Texture
     30312:39:02: Unregistering ResourceManager for type GpuProgram
     30412:39:02: D3D9 : Direct3D9 Rendering Subsystem destroyed.
     30512:39:02: Plugin successfully uninstalled
     30612:39:02: Unloading library .\RenderSystem_Direct3D9
     30712:39:02: Unregistering ResourceManager for type Material
  • code/branches/main_reto_vs05/include/Bullet.h

    r157 r161  
    3030#define BULLET_H
    3131
    32 #include "Ogre.h"
     32#include "OgrePrerequisites.h"
    3333
    34 using namespace Ogre;
    35 
    36 class Bullet
    37 {
    38 public:
    39         SceneNode *mNode;
    40         Entity *mEntity;
    41         Vector3 mSpeed;
    42 
    43         Bullet(SceneNode*, Entity*, Vector3);
    44         ~Bullet();
    45 
    46 protected:
    47 
    48 };
     34#include "Orxonox_prerequisites.h"
    4935
    5036
     37namespace Orxonox {
     38
     39  class Bullet
     40  {
     41  public:
     42    Ogre::SceneNode *mNode;
     43          Ogre::Entity *mEntity;
     44          Ogre::Vector3 mSpeed;
     45
     46  protected:
     47
     48  public:
     49          Bullet(Ogre::SceneNode*, Ogre::Entity*, Ogre::Vector3);
     50          ~Bullet();
     51
     52  protected:
     53
     54  };
     55
     56}
     57
    5158#endif /* BULLET_H */
  • code/branches/main_reto_vs05/include/Orxonox.h

    r159 r161  
    3030#define ORXONOX_H
    3131
    32 #include "Ogre.h"
    33 #include "OgreTimer.h"
     32#include "OgrePrerequisites.h"
    3433
    35 #include "ogre_control.h"
    36 #include "run_manager.h"
     34#include "Orxonox_prerequisites.h"
    3735
    38 class Orxonox
    39 {
    40 public:
    41   Orxonox();
    42   virtual ~Orxonox();
    43         virtual void go();
     36namespace Orxonox {
    4437
    45 protected:
    46         virtual bool setup(void);
     38  class Orxonox
     39  {
     40  public:
     41    Orxonox();
     42    virtual ~Orxonox();
     43          virtual void go();
    4744
    48         virtual void destroy(void);
     45  protected:
     46          virtual bool setup(void);
    4947
    50 protected:
    51         OgreControl *ogre_;
    52         RunManager  *runMgr_;
    53         Timer       *timer_;
     48          virtual void destroy(void);
    5449
    55 };
     50  protected:
     51          OgreControl *ogre_;
     52          RunManager  *runMgr_;
     53          Ogre::Timer *timer_;
     54
     55  };
     56
     57}
    5658
    5759#endif /* ORXONOX_H */
  • code/branches/main_reto_vs05/include/camera_manager.h

    r157 r161  
    3030#define CAMERA_MANAGER_H
    3131
    32 #include "Ogre.h"
     32#include "OgrePrerequisites.h"
    3333
    34 using namespace Ogre;
    35 
    36 class CameraManager
    37 {
    38 public:
    39         CameraManager(SceneManager*);
    40         ~CameraManager();
    41 
    42         bool setCameraPosition(int);
    43 
    44 protected:
    45         SceneManager *mSceneMgr;
    46         Camera *mCamera;
    47 };
     34#include "Orxonox_prerequisites.h"
    4835
    4936
     37namespace Orxonox {
     38
     39  class CameraManager
     40  {
     41  public:
     42    CameraManager(Ogre::SceneManager*);
     43          ~CameraManager();
     44
     45          bool setCameraPosition(int);
     46
     47  protected:
     48          Ogre::SceneManager *mSceneMgr;
     49          Ogre::Camera *mCamera;
     50  };
     51
     52}
     53
    5054#endif /* CAMERA_MANAGER_H */
  • code/branches/main_reto_vs05/include/ogre_control.h

    r159 r161  
    3030#define OGRE_CONTROL_H
    3131
    32 #include "Ogre.h"
    33 #include "OgreConfigFile.h"
     32#include "OgrePrerequisites.h"
     33
     34#include "Orxonox_prerequisites.h"
    3435
    3536
    36 #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
    37 #include <CoreFoundation/CoreFoundation.h>
    38 #endif
     37namespace Orxonox {
    3938
    40 using namespace Ogre;
     39  class OgreControl
     40  {
     41  public:
     42          OgreControl();
    4143
    42 class OgreControl
    43 {
    44 public:
    45         OgreControl();
     44          virtual ~OgreControl();
    4645
    47         virtual ~OgreControl();
     46          /** Sets up the application - returns false if the user chooses to abandon configuration. */
     47          virtual bool initialise();
    4848
    49         /** Sets up the application - returns false if the user chooses to abandon configuration. */
    50         virtual bool initialise();
     49    virtual Ogre::Root* getRoot();
    5150
    52         virtual Root* getRoot();
     51          virtual Ogre::RenderWindow* getRenderWindow();
    5352
    54         virtual RenderWindow* getRenderWindow();
     53          virtual Ogre::String getResourcePath();
    5554
    56         virtual Ogre::String getResourcePath();
     55  protected:
     56          /** Configures the application - returns false if the user chooses to abandon configuration. */
     57          virtual bool configure(void);
    5758
    58 protected:
    59         /** Configures the application - returns false if the user chooses to abandon configuration. */
    60         virtual bool configure(void);
     59          /// Method which will define the source of resources (other than current folder)
     60          virtual void setupResources(void);
    6161
    62         /// Method which will define the source of resources (other than current folder)
    63         virtual void setupResources(void);
     62  protected:
     63          Ogre::Root         *root_;
     64          Ogre::RenderWindow *window_;
     65          Ogre::String  resourcePath_;
    6466
    65 protected:
    66         Root         *root_;
    67         RenderWindow *window_;
    68         Ogre::String  resourcePath_;
     67  };
    6968
    70 };
     69}
    7170
    7271#endif /* OGRE_CONTROL_H */
  • code/branches/main_reto_vs05/include/orxonox_scene.h

    r159 r161  
    3030#define ORXONOX_SCENE_H
    3131
    32 #include "Ogre.h"
     32#include "OgrePrerequisites.h"
    3333
    34 using namespace Ogre;
     34#include "Orxonox_prerequisites.h"
    3535
    36 class OrxonoxScene
    37 {
    38 public:
    39         OrxonoxScene(SceneManager*);
    4036
    41         virtual ~OrxonoxScene();
     37namespace Orxonox {
    4238
    43         virtual bool initialise();
     39  class OrxonoxScene
     40  {
     41  public:
     42    OrxonoxScene(Ogre::SceneManager*);
    4443
    45         virtual bool tick(unsigned long, Real);
     44          virtual ~OrxonoxScene();
    4645
    47 protected:
    48         /// method where you can perform resource group loading
    49         virtual void loadResources();
     46          virtual bool initialise();
    5047
    51         /// Define what is in the scene
    52         virtual void createScene();
     48          virtual bool tick(unsigned long, Ogre::Real);
    5349
    54 protected:
    55         SceneManager* sceneMgr_;
     50  protected:
     51          /// method where you can perform resource group loading
     52          virtual void loadResources();
    5653
    57         //specific variables for test purposes
    58         Light        *light_;
    59         SceneNode    *lightNode_;
    60         BillboardSet *bbs_;
    61         Real distance_;
    62   Real radius_;
    63 };
     54          /// Define what is in the scene
     55          virtual void createScene();
     56
     57  protected:
     58          Ogre::SceneManager* sceneMgr_;
     59
     60          //specific variables for test purposes
     61          Ogre::Light        *light_;
     62          Ogre::SceneNode    *lightNode_;
     63          Ogre::BillboardSet *bbs_;
     64          Ogre::Real distance_;
     65    Ogre::Real radius_;
     66  };
     67
     68}
    6469
    6570#endif /* ORXONOX_SCENE_H */
  • code/branches/main_reto_vs05/include/orxonox_ship.h

    r159 r161  
    3030#define ORXONOX_SHIP_H
    3131
    32 #include "Ogre.h"
     32#include "OgrePrerequisites.h"
    3333
    34 #include "bullet.h"
    35 
    36 using namespace Ogre;
    37 
    38 class OrxonoxShip
    39 {
    40 public:
    41         OrxonoxShip(SceneManager*, SceneNode*);
    42         virtual ~OrxonoxShip();
    43 
    44         virtual bool initialise();
    45 
    46         void setMainThrust(const Real);
    47         void setSideThrust(const Real);
    48   void setYThrust(const Real);
    49         void turnUpAndDown(const Radian&);
    50         void turnLeftAndRight(const Radian&);
    51 
    52   SceneNode* getRootNode();
    53   Vector3 getSpeed();
    54 
    55         Bullet* fire();
    56 
    57         bool tick(unsigned long, Real);
    58 
    59 protected:
    60 
    61 protected:
    62         SceneManager *sceneMgr_;
    63         SceneNode *rootNode_;
    64         Entity *shipEntity_;
    65 
    66         Vector3 currentSpeed_;  // relative to space
    67         Vector3 currentThrust_; // relative to the ship
    68   Real baseThrust_;
    69         int objectCounter_;
    70         Vector3 bulletSpeed_;
    71 
    72 };
     34#include "Orxonox_prerequisites.h"
    7335
    7436
     37namespace Orxonox {
     38
     39  class OrxonoxShip
     40  {
     41  public:
     42          OrxonoxShip(Ogre::SceneManager*, Ogre::SceneNode*);
     43          virtual ~OrxonoxShip();
     44
     45          virtual bool initialise();
     46
     47          void setMainThrust(const Ogre::Real);
     48          void setSideThrust(const Ogre::Real);
     49    void setYThrust(const Ogre::Real);
     50          void turnUpAndDown(const Ogre::Radian&);
     51          void turnLeftAndRight(const Ogre::Radian&);
     52
     53    Ogre::SceneNode* getRootNode();
     54    Ogre::Vector3 getSpeed();
     55
     56          Bullet* fire();
     57
     58          bool tick(unsigned long, Ogre::Real);
     59
     60  protected:
     61
     62  protected:
     63          Ogre::SceneManager *sceneMgr_;
     64          Ogre::SceneNode *rootNode_;
     65          Ogre::Entity *shipEntity_;
     66
     67          Ogre::Vector3 currentSpeed_;  // relative to space
     68          Ogre::Vector3 currentThrust_; // relative to the ship
     69    Ogre::Real baseThrust_;
     70          int objectCounter_;
     71          Ogre::Vector3 bulletSpeed_;
     72
     73  };
     74
     75}
     76
    7577#endif /* ORXONOX_SHIP_H */
  • code/branches/main_reto_vs05/include/run_manager.h

    r159 r161  
    3030#define RUN_MANAGER_H
    3131
    32 #include "Ogre.h"
    33 #include "OgreStringConverter.h"
    34 #include "OgreException.h"
     32#include "OgrePrerequisites.h"
     33#include "OgreWindowEventUtilities.h"
     34#include "OgreTextureManager.h"
    3535
    36 #include "ogre_control.h"
    37 #include "orxonox_scene.h"
    38 #include "orxonox_ship.h"
     36#include <OIS/OISPrereqs.h>
     37
     38#include "Orxonox_prerequisites.h"
    3939
    4040
    41 //Use this define to signify OIS will be used as a DLL
    42 //(so that dll import/export macros are in effect)
    43 #define OIS_DYNAMIC_LIB
    44 #include <OIS/OIS.h>
     41namespace Orxonox {
    4542
    46 using namespace Ogre;
     43  // let the class inherit from WindowEventListener in order for the RunMgr
     44  // to act as the central point of all the calcuations in Orxonox
     45  class RunManager : Ogre::WindowEventListener
     46  {
     47  public:
     48          RunManager(OgreControl*);
     49
     50          virtual ~RunManager();
     51
     52    virtual bool tick(unsigned long, Ogre::Real);
     53
     54  protected:
     55          virtual void createCamera(void);
     56
     57          virtual void createViewports(void);
    4758
    4859
    49 // let the class inherit from WindowEventListener in order for the RunMgr
    50 // to act as the central point of all the calcuations in Orxonox
    51 class RunManager : WindowEventListener
    52 {
    53 public:
    54         RunManager(OgreControl*);
     60          /** EVENT HANDLING **/
    5561
    56         virtual ~RunManager();
     62          //Adjust mouse clipping area
     63          virtual void windowResized(Ogre::RenderWindow*);
    5764
    58         virtual bool tick(unsigned long, Real);
    59 
    60 protected:
    61         virtual void createCamera(void);
    62 
    63         virtual void createViewports(void);
     65          //Unattach OIS before window shutdown (very important under Linux)
     66          virtual void windowClosed(Ogre::RenderWindow*);
    6467
    6568
    66         /** EVENT HANDLING **/
     69          /** INPUT PROCESSING **/
     70          virtual bool processUnbufferedKeyInput();
    6771
    68         //Adjust mouse clipping area
    69         virtual void windowResized(RenderWindow*);
    70 
    71         //Unattach OIS before window shutdown (very important under Linux)
    72         virtual void windowClosed(RenderWindow*);
     72          virtual bool processUnbufferedMouseInput();
    7373
    7474
    75         /** INPUT PROCESSING **/
    76         virtual bool processUnbufferedKeyInput();
     75          /** OUTPUT **/
    7776
    78         virtual bool processUnbufferedMouseInput();
     77          virtual void updateStats(void);
    7978
     79          virtual void showDebugOverlay(bool);
    8080
    81         /** OUTPUT **/
     81  protected:
     82          Ogre::SceneManager *sceneMgr_;
     83          Ogre::RenderWindow *window_;
     84          Ogre::Camera       *camera_;
     85          OgreControl  *ogre_;
     86          OrxonoxScene *backgroundScene_;
     87          OrxonoxShip  *playerShip_;
    8288
    83         virtual void updateStats(void);
     89          bool statsOn_;
     90          std::string debugText_;
    8491
    85         virtual void showDebugOverlay(bool);
     92          unsigned int screenShotCounter_;
     93          // just to stop toggles flipping too fast
     94          Ogre::Real timeUntilNextToggle_;
     95          bool leftButtonDown_;
     96          Ogre::TextureFilterOptions filtering_;
     97          int aniso_;
    8698
    87 protected:
    88         OgreControl  *ogre_;
    89         SceneManager *sceneMgr_;
    90         RenderWindow *window_;
    91         OrxonoxScene *backgroundScene_;
    92         Camera       *camera_;
    93         OrxonoxShip  *playerShip_;
     99          int sceneDetailIndex_;
     100          Ogre::Overlay* debugOverlay_;
    94101
    95         bool statsOn_;
    96         std::string debugText_;
     102          //OIS Input devices
     103          OIS::InputManager* inputManager_;
     104          OIS::Mouse*    mouse_;
     105          OIS::Keyboard* keyboard_;
     106          OIS::JoyStick* joystick_;
    97107
    98         unsigned int screenShotCounter_;
    99         // just to stop toggles flipping too fast
    100         Real timeUntilNextToggle_;
    101         bool leftButtonDown_;
    102         TextureFilterOptions filtering_;
    103         int aniso_;
     108    const Ogre::Real mouseSensitivity_;
    104109
    105         int sceneDetailIndex_;
    106         Overlay* debugOverlay_;
     110    // Bullet array
     111          Bullet **bullets_;
     112          int bulletsSize_;
     113          int bulletsIndex_;
    107114
    108         //OIS Input devices
    109         OIS::InputManager* inputManager_;
    110         OIS::Mouse*    mouse_;
    111         OIS::Keyboard* keyboard_;
    112         OIS::JoyStick* joystick_;
     115          // previously elapsed render time
     116          unsigned long totalTime_;
    113117
    114   const Real mouseSensitivity_;
     118  };
    115119
    116   // Bullet array
    117         Bullet **bullets_;
    118         int bulletsSize_;
    119         int bulletsIndex_;
    120 
    121         // previously elapsed render time
    122         unsigned long totalTime_;
    123 
    124 };
     120}
    125121
    126122#endif /* RUN_MANAGER_H */
  • code/branches/main_reto_vs05/include/weapon_manager.h

    r157 r161  
    3030#define WEAPON_MANAGER_H
    3131
    32 #include "Ogre.h"
     32#include "OgrePrerequisites.h"
    3333
    34 using namespace Ogre;
    35 
    36 class WeaponManager
    37 {
    38 public:
    39         WeaponManager(SceneManager*);
    40         virtual ~WeaponManager();
    41 
    42 protected:
    43 
    44 };
     34#include "Orxonox_prerequisites.h"
    4535
    4636
     37namespace Orxonox {
     38
     39  class WeaponManager
     40  {
     41  public:
     42    WeaponManager(Ogre::SceneManager*);
     43          virtual ~WeaponManager();
     44
     45  protected:
     46
     47  };
     48
     49}
     50
    4751#endif /* WEAPON_MANAGER_H */
  • code/branches/main_reto_vs05/scripts/weapon_framework.vcproj

    r157 r161  
    184184                        >
    185185                        <File
     186                                RelativePath="..\src\ammunition_dump.cc"
     187                                >
     188                        </File>
     189                        <File
    186190                                RelativePath="..\src\bullet.cc"
    187191                                >
     
    226230                        >
    227231                        <File
     232                                RelativePath="..\include\ammunition_dump.h"
     233                                >
     234                        </File>
     235                        <File
    228236                                RelativePath="..\include\bullet.h"
    229237                                >
     
    239247                        <File
    240248                                RelativePath="..\include\orxonox.h"
     249                                >
     250                        </File>
     251                        <File
     252                                RelativePath="..\include\orxonox_prerequisites.h"
    241253                                >
    242254                        </File>
  • code/branches/main_reto_vs05/src/bullet.cc

    r157 r161  
    2626 */
    2727
     28#include "OgreSceneNode.h"
     29#include "OgreEntity.h"
     30#include "OgreVector3.h"
     31
    2832#include "bullet.h"
    2933
    3034
    31 Bullet::Bullet(SceneNode *mNode, Entity *mEntity, Vector3 mSpeed)
    32       : mNode(mNode), mEntity(mEntity), mSpeed(mSpeed)
    33 {
    34         mNode->attachObject(mEntity);
    35 }
     35namespace Orxonox {
     36  using namespace Ogre;
     37
     38  Bullet::Bullet(SceneNode *mNode, Entity *mEntity, Vector3 mSpeed)
     39        : mNode(mNode), mEntity(mEntity), mSpeed(mSpeed)
     40  {
     41          mNode->attachObject(mEntity);
     42  }
    3643
    3744
    38 Bullet::~Bullet()
    39 {
     45  Bullet::~Bullet()
     46  {
     47  }
     48
    4049}
  • code/branches/main_reto_vs05/src/camera_manager.cc

    r157 r161  
    2626 */
    2727
     28#include "OgreSceneManager.h"
     29#include "OgreCamera.h"
     30
    2831#include "camera_manager.h"
    2932
     33namespace Orxonox {
     34  using namespace Ogre;
    3035
    31 CameraManager::CameraManager(SceneManager *mScene) : mSceneMgr(mSceneMgr)
    32 {
    33 }
     36  CameraManager::CameraManager(SceneManager *mScene) : mSceneMgr(mSceneMgr)
     37  {
     38  }
    3439
    3540
    36 CameraManager::~CameraManager()
    37 {
    38 }
     41  CameraManager::~CameraManager()
     42  {
     43  }
    3944
    4045
    41 bool CameraManager::setCameraPosition(int n)
    42 {
    43         return true;
     46  bool CameraManager::setCameraPosition(int n)
     47  {
     48          return true;
     49  }
     50
    4451}
  • code/branches/main_reto_vs05/src/main.cc

    r157 r161  
    2626 */
    2727
    28 
     28#include "OgrePlatform.h"
     29#include "OgreException.h"
    2930
    3031#include "orxonox.h"
     
    4445    try {
    4546      // create an orxonox aplication and run it
    46       Orxonox myApp;
     47      Orxonox::Orxonox myApp;
    4748
    4849      myApp.go();
  • code/branches/main_reto_vs05/src/ogre_control.cc

    r159 r161  
    2626 */
    2727
    28 /**
    29 * Ogre control class.
    30 * This is merely a convenient way to handle Ogre. It only holds the Root
    31 * object and the render Window. These are the objects, that are independant
    32 * of the game state (playing, menu browsing, loading, etc.).
    33 * This class could easily be merged into the Orxnox class.
    34 */
    35 
     28#include "OgrePlatform.h"
     29#include "OgreRoot.h"
     30#include "OgreRenderWindow.h"
     31#include "OgreString.h"
     32#include "OgreConfigFile.h"
     33
     34#if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
     35  #include <CoreFoundation/CoreFoundation.h>
     36#endif
    3637
    3738#include "ogre_control.h"
    3839
    3940
    40 /**
    41 * Provide support for mac users.
    42 */
    43 #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
    44 // This function will locate the path to our application on OS X,
    45 // unlike windows you can not rely on the curent working directory
    46 // for locating your configuration files and resources.
    47 std::string macBundlePath()
    48 {
    49         char path[1024];
    50         CFBundleRef mainBundle = CFBundleGetMainBundle();
    51         assert(mainBundle);
    52 
    53         CFURLRef mainBundleURL = CFBundleCopyBundleURL(mainBundle);
    54         assert(mainBundleURL);
    55 
    56         CFStringRef cfStringRef =
    57         CFURLCopyFileSystemPath( mainBundleURL, kCFURLPOSIXPathStyle);
    58         assert(cfStringRef);
    59 
    60         CFStringGetCString(cfStringRef, path, 1024, kCFStringEncodingASCII);
    61 
    62         CFRelease(mainBundleURL);
    63         CFRelease(cfStringRef);
    64 
    65         return std::string(path);
     41namespace Orxonox {
     42  using namespace Ogre;
     43
     44  /**
     45  * Ogre control class.
     46  * This is merely a convenient way to handle Ogre. It only holds the Root
     47  * object and the render Window. These are the objects, that are independant
     48  * of the game state (playing, menu browsing, loading, etc.).
     49  * This class could easily be merged into the Orxnox class.
     50  */
     51
     52
     53  /**
     54  * Provide support for mac users.
     55  */
     56  #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
     57  // This function will locate the path to our application on OS X,
     58  // unlike windows you can not rely on the curent working directory
     59  // for locating your configuration files and resources.
     60  std::string macBundlePath()
     61  {
     62          char path[1024];
     63          CFBundleRef mainBundle = CFBundleGetMainBundle();
     64          assert(mainBundle);
     65
     66          CFURLRef mainBundleURL = CFBundleCopyBundleURL(mainBundle);
     67          assert(mainBundleURL);
     68
     69          CFStringRef cfStringRef =
     70          CFURLCopyFileSystemPath( mainBundleURL, kCFURLPOSIXPathStyle);
     71          assert(cfStringRef);
     72
     73          CFStringGetCString(cfStringRef, path, 1024, kCFStringEncodingASCII);
     74
     75          CFRelease(mainBundleURL);
     76          CFRelease(cfStringRef);
     77
     78          return std::string(path);
     79  }
     80  #endif
     81
     82
     83  /**
     84  * Constructor that determines the resource path platform dependant.
     85  */
     86  OgreControl::OgreControl() : root_(0)
     87  {
     88          // Provide a nice cross platform solution for locating the configuration
     89          // files. On windows files are searched for in the current working
     90    // directory, on OS X however you must provide the full path, the helper
     91    // function macBundlePath does this for us.
     92  #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
     93          resourcePath_ = macBundlePath() + "/Contents/Resources/";
     94  #else
     95          resourcePath_ = "";
     96  #endif
     97  }
     98
     99
     100  /**
     101  * Standard Destructor.
     102  */
     103  OgreControl::~OgreControl()
     104  {
     105          if (root_)
     106                  delete root_;
     107  }
     108
     109
     110  /* Sets up Ogre.
     111  * First, the Root object is being created, then the resources are defined
     112  * (not loaded!). And last but not least, the render settings (like resolution
     113  * or AA level) are prompted to the user.
     114  */
     115  bool OgreControl::initialise(void)
     116  {
     117          String pluginsPath;
     118          // only use plugins.cfg if not static
     119  #ifndef OGRE_STATIC_LIB
     120          pluginsPath = resourcePath_ + "plugins.cfg";
     121  #endif
     122
     123          root_ = new Root(pluginsPath,
     124                  resourcePath_ + "ogre.cfg", resourcePath_ + "Ogre.log");
     125
     126          setupResources();
     127
     128          if (!configure())
     129                  return false;
     130
     131          return true;
     132  }
     133
     134
     135  /**
     136  * Defines the source of the resources.
     137  */
     138  void OgreControl::setupResources(void)
     139  {
     140          // Load resource paths from config file
     141          ConfigFile cf;
     142          cf.load(resourcePath_ + "resources.cfg");
     143
     144          // Go through all sections & settings in the file
     145          ConfigFile::SectionIterator seci = cf.getSectionIterator();
     146
     147          String secName, typeName, archName;
     148          while (seci.hasMoreElements())
     149          {
     150                  secName = seci.peekNextKey();
     151                  ConfigFile::SettingsMultiMap *settings = seci.getNext();
     152                  ConfigFile::SettingsMultiMap::iterator i;
     153                  for (i = settings->begin(); i != settings->end(); ++i)
     154                  {
     155                          typeName = i->first;
     156                          archName = i->second;
     157  #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
     158                          // OS X does not set the working directory relative to the app,
     159                          // In order to make things portable on OS X we need to provide
     160                          // the loading with it's own bundle path location
     161                          ResourceGroupManager::getSingleton().addResourceLocation(
     162                                  String(macBundlePath() + "/" + archName), typeName, secName);
     163  #else
     164                          ResourceGroupManager::getSingleton().addResourceLocation(
     165                                  archName, typeName, secName);
     166  #endif
     167                  }
     168          }
     169  }
     170
     171
     172  /**
     173  * Prompts a setting window for the render engine if that has not already
     174  * been done.
     175  * The method also calls the root initialiser in order to get a render window.
     176  */
     177  bool OgreControl::configure(void)
     178  {
     179          // Show the configuration dialog and initialise the system
     180          // You can skip this and use root.restoreConfig() to load configuration
     181          // settings if you were sure there are valid ones saved in ogre.cfg
     182          if(!root_->restoreConfig() && !root_->showConfigDialog())
     183                  return false;
     184
     185          // user clicked OK so initialise
     186          // Here we choose to let the system create a default
     187    // rendering window by passing 'true'
     188          root_->saveConfig();
     189          window_ = root_->initialise(true);
     190          return true;
     191  }
     192
     193
     194  /**
     195  * Returns the root object.
     196  * @return Root object.
     197  */
     198  Root* OgreControl::getRoot(void)
     199  {
     200          return root_;
     201  }
     202
     203
     204  /**
     205  * Returns the render window.
     206  * @return Render window.
     207  */
     208  RenderWindow* OgreControl::getRenderWindow(void)
     209  {
     210          return window_;
     211  }
     212
     213
     214  /**
     215  * Returns the resource path.
     216  * @return Resource path.
     217  */
     218  Ogre::String OgreControl::getResourcePath(void)
     219  {
     220          return resourcePath_;
     221  }
     222
    66223}
    67 #endif
    68 
    69 
    70 /**
    71 * Constructor that determines the resource path platform dependant.
    72 */
    73 OgreControl::OgreControl() : root_(0)
    74 {
    75         // Provide a nice cross platform solution for locating the configuration
    76         // files. On windows files are searched for in the current working
    77   // directory, on OS X however you must provide the full path, the helper
    78   // function macBundlePath does this for us.
    79 #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
    80         resourcePath_ = macBundlePath() + "/Contents/Resources/";
    81 #else
    82         resourcePath_ = "";
    83 #endif
    84 }
    85 
    86 
    87 /**
    88 * Standard Destructor.
    89 */
    90 OgreControl::~OgreControl()
    91 {
    92         if (root_)
    93                 delete root_;
    94 }
    95 
    96 
    97 /* Sets up Ogre.
    98 * First, the Root object is being created, then the resources are defined
    99 * (not loaded!). And last but not least, the render settings (like resolution
    100 * or AA level) are prompted to the user.
    101 */
    102 bool OgreControl::initialise(void)
    103 {
    104         String pluginsPath;
    105         // only use plugins.cfg if not static
    106 #ifndef OGRE_STATIC_LIB
    107         pluginsPath = resourcePath_ + "plugins.cfg";
    108 #endif
    109 
    110         root_ = new Root(pluginsPath,
    111                 resourcePath_ + "ogre.cfg", resourcePath_ + "Ogre.log");
    112 
    113         setupResources();
    114 
    115         if (!configure())
    116                 return false;
    117 
    118         return true;
    119 }
    120 
    121 
    122 /**
    123 * Defines the source of the resources.
    124 */
    125 void OgreControl::setupResources(void)
    126 {
    127         // Load resource paths from config file
    128         ConfigFile cf;
    129         cf.load(resourcePath_ + "resources.cfg");
    130 
    131         // Go through all sections & settings in the file
    132         ConfigFile::SectionIterator seci = cf.getSectionIterator();
    133 
    134         String secName, typeName, archName;
    135         while (seci.hasMoreElements())
    136         {
    137                 secName = seci.peekNextKey();
    138                 ConfigFile::SettingsMultiMap *settings = seci.getNext();
    139                 ConfigFile::SettingsMultiMap::iterator i;
    140                 for (i = settings->begin(); i != settings->end(); ++i)
    141                 {
    142                         typeName = i->first;
    143                         archName = i->second;
    144 #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
    145                         // OS X does not set the working directory relative to the app,
    146                         // In order to make things portable on OS X we need to provide
    147                         // the loading with it's own bundle path location
    148                         ResourceGroupManager::getSingleton().addResourceLocation(
    149                                 String(macBundlePath() + "/" + archName), typeName, secName);
    150 #else
    151                         ResourceGroupManager::getSingleton().addResourceLocation(
    152                                 archName, typeName, secName);
    153 #endif
    154                 }
    155         }
    156 }
    157 
    158 
    159 /**
    160 * Prompts a setting window for the render engine if that has not already
    161 * been done.
    162 * The method also calls the root initialiser in order to get a render window.
    163 */
    164 bool OgreControl::configure(void)
    165 {
    166         // Show the configuration dialog and initialise the system
    167         // You can skip this and use root.restoreConfig() to load configuration
    168         // settings if you were sure there are valid ones saved in ogre.cfg
    169         if(!root_->restoreConfig() && !root_->showConfigDialog())
    170                 return false;
    171 
    172         // user clicked OK so initialise
    173         // Here we choose to let the system create a default
    174   // rendering window by passing 'true'
    175         root_->saveConfig();
    176         window_ = root_->initialise(true);
    177         return true;
    178 }
    179 
    180 
    181 /**
    182 * Returns the root object.
    183 * @return Root object.
    184 */
    185 Root* OgreControl::getRoot(void)
    186 {
    187         return root_;
    188 }
    189 
    190 
    191 /**
    192 * Returns the render window.
    193 * @return Render window.
    194 */
    195 RenderWindow* OgreControl::getRenderWindow(void)
    196 {
    197         return window_;
    198 }
    199 
    200 
    201 /**
    202 * Returns the resource path.
    203 * @return Resource path.
    204 */
    205 Ogre::String OgreControl::getResourcePath(void)
    206 {
    207         return resourcePath_;
    208 }
  • code/branches/main_reto_vs05/src/orxonox.cc

    r159 r161  
    3232*/
    3333
     34#include "OgreRoot.h"
     35#include "OgreTimer.h"
     36#include "OgreWindowEventUtilities.h"
    3437
     38#include "ogre_control.h"
     39#include "run_manager.h"
    3540#include "orxonox.h"
    3641
    3742
    38 /**
    39 * Empty Constructor.
    40 */
    41 Orxonox::Orxonox()
    42 {
    43 }
     43namespace Orxonox {
     44
     45  /**
     46  * Empty Constructor.
     47  */
     48  Orxonox::Orxonox()
     49  {
     50  }
    4451
    4552
    46 /**
    47 * Empty Destructor.
    48 */
    49 Orxonox::~Orxonox()
    50 {
    51 }
     53  /**
     54  * Empty Destructor.
     55  */
     56  Orxonox::~Orxonox()
     57  {
     58  }
    5259
    5360
    54 /**
    55 * Starts and runs the game
    56 */
    57 void Orxonox::go(void)
    58 {
    59         if (!setup())
    60                 return;
     61  /**
     62  * Starts and runs the game
     63  */
     64  void Orxonox::go(void)
     65  {
     66          if (!setup())
     67                  return;
    6168
    62         timer_ = new Timer();
     69    timer_ = new Ogre::Timer();
    6370
    64         unsigned long lastTime = timer_->getMilliseconds();
     71          unsigned long lastTime = timer_->getMilliseconds();
    6572
    66         while (true)
    67         {
    68                 //Pump messages in all registered RenderWindow windows
    69                 WindowEventUtilities::messagePump();
     73          while (true)
     74          {
     75                  //Pump messages in all registered RenderWindow windows
     76      Ogre::WindowEventUtilities::messagePump();
    7077
    71                 ogre_->getRoot()->renderOneFrame();
     78                  ogre_->getRoot()->renderOneFrame();
    7279
    73                 if (!runMgr_->tick(timer_->getMilliseconds(),
    74             (timer_->getMilliseconds() - lastTime) / 1000.0))
    75                         break;
    76                 lastTime = timer_->getMilliseconds();
    77         }
     80                  if (!runMgr_->tick(timer_->getMilliseconds(),
     81              (timer_->getMilliseconds() - lastTime) / 1000.0))
     82                          break;
     83                  lastTime = timer_->getMilliseconds();
     84          }
    7885
    79         // clean up
    80         destroy();
    81 }
     86          // clean up
     87          destroy();
     88  }
    8289
    8390
    84 /**
    85 * Create render engine, render window and the Run manager.
    86 * @return False if failed.
    87 */
    88 bool Orxonox::setup(void)
    89 {
    90         // create new 3D ogre render engine
    91         ogre_ = new OgreControl();
    92         ogre_->initialise();
     91  /**
     92  * Create render engine, render window and the Run manager.
     93  * @return False if failed.
     94  */
     95  bool Orxonox::setup(void)
     96  {
     97          // create new 3D ogre render engine
     98          ogre_ = new OgreControl();
     99          ogre_->initialise();
    93100
    94         runMgr_ = new RunManager(ogre_);
     101          runMgr_ = new RunManager(ogre_);
    95102
    96         return true;
    97 }
     103          return true;
     104  }
    98105
    99106
    100 /**
    101 * Clean everything up.
    102 */
    103 void Orxonox::destroy()
    104 {
    105         if (timer_)
    106                 delete timer_;
    107         if (runMgr_)
    108                 delete runMgr_;
    109         if (ogre_)
    110                 delete ogre_;
     107  /**
     108  * Clean everything up.
     109  */
     110  void Orxonox::destroy()
     111  {
     112          if (timer_)
     113                  delete timer_;
     114          if (runMgr_)
     115                  delete runMgr_;
     116          if (ogre_)
     117                  delete ogre_;
     118  }
     119
    111120}
  • code/branches/main_reto_vs05/src/orxonox_scene.cc

    r159 r161  
    2626 */
    2727
    28 /**
    29 * The orxonox scene includes everything running in the background like terrain,
    30 * static figures, dangling lamp, etc.
    31 */
    32 
     28#include "OgreSceneManager.h"
     29#include "OgreSceneNode.h"
     30#include "OgreEntity.h"
     31#include "OgreLight.h"
     32#include "OgreBillboard.h"
     33#include "OgreBillboardSet.h"
     34#include "OgreVector3.h"
    3335
    3436#include "orxonox_scene.h"
    3537
     38namespace Orxonox {
     39  using namespace Ogre;
    3640
    37 /**
    38 * Empty Consructor except the initialiser list.
    39 * @param sceneMgr The Scene Manager.
    40 */
    41 OrxonoxScene::OrxonoxScene(SceneManager *sceneMgr) : sceneMgr_(sceneMgr)
    42 {
    43 }
    44 
    45 /**
    46 * Empty Destructor.
    47 */
    48 OrxonoxScene::~OrxonoxScene()
    49 {
    50 }
    51 
    52 /**
    53 * Ogre initialisation method.
    54 * This function is called by the Run Manager to load the neccessary recources
    55 * and to create the scene.
    56 * @return False if failed.
    57 */
    58 bool OrxonoxScene::initialise()
    59 {
    60         // Load resources
    61         loadResources();
    62 
    63         distance_ = 0;
    64         radius_ = 100;
    65 
    66         createScene();
    67 
    68         return true;
    69 }
     41  /**
     42  * The orxonox scene includes everything running in the background like terrain,
     43  * static figures, dangling lamp, etc.
     44  */
    7045
    7146
    72 /**
    73 * Resource loader.
    74 * Currently, this method loads everything! TODO: If done this ugly, it should
    75 * at least be in the Run Manager.
    76 */
    77 void OrxonoxScene::loadResources()
    78 {
    79         // Initialise, parse scripts etc
    80         ResourceGroupManager::getSingleton().initialiseAllResourceGroups();
    81 }
     47  /**
     48  * Empty Consructor except the initialiser list.
     49  * @param sceneMgr The Scene Manager.
     50  */
     51  OrxonoxScene::OrxonoxScene(SceneManager *sceneMgr) : sceneMgr_(sceneMgr)
     52  {
     53  }
     54
     55  /**
     56  * Empty Destructor.
     57  */
     58  OrxonoxScene::~OrxonoxScene()
     59  {
     60  }
     61
     62  /**
     63  * Ogre initialisation method.
     64  * This function is called by the Run Manager to load the neccessary recources
     65  * and to create the scene.
     66  * @return False if failed.
     67  */
     68  bool OrxonoxScene::initialise()
     69  {
     70          // Load resources
     71          loadResources();
     72
     73          distance_ = 0;
     74          radius_ = 100;
     75
     76          createScene();
     77
     78          return true;
     79  }
    8280
    8381
    84 /**
    85 * Scene creation.
    86 * Currently just a test scene with an ogre head an a surrounding light.
    87 */
    88 void OrxonoxScene::createScene()
    89 {
    90         sceneMgr_->setAmbientLight(ColourValue(0.3,0.3,0.3));
    91 
    92         //create first entity
    93         Entity *head = sceneMgr_->createEntity("head", "ogrehead.mesh");
    94 
    95         //create a scene node to attach the head to
    96         SceneNode *node = sceneMgr_->getRootSceneNode()
    97         ->createChildSceneNode("OgreHeadNode", Vector3(0,0,0));
    98         //attach the ogre head
    99         node->attachObject(head);
    100 
    101         // set up skybox
    102         sceneMgr_->setSkyBox(true, "Examples/SceneSkyBox2");
    103 
    104         // set up one light_ source
    105         light_ = sceneMgr_->createLight("Light1");
    106         light_->setType(Light::LT_POINT);
    107         light_->setPosition(Vector3(0, 0, 0));
    108         light_->setDiffuseColour(1.0, 1.0, 1.0);
    109         light_->setSpecularColour(1.0, 1.0, 1.0);
    110 
    111         //create billboard
    112         bbs_ = sceneMgr_->createBillboardSet("bb", 1);
    113         bbs_->createBillboard(Vector3::ZERO, ColourValue(1.0, 1.0, 1.0));
    114         bbs_->setMaterialName("Examples/Flare");
    115 
    116         lightNode_ = sceneMgr_->getRootSceneNode()
    117         ->createChildSceneNode("lightNode_", Vector3(0, 100, 0));
    118 
    119         lightNode_->attachObject(bbs_);
    120         lightNode_->attachObject(light_);
    121 }
     82  /**
     83  * Resource loader.
     84  * Currently, this method loads everything! TODO: If done this ugly, it should
     85  * at least be in the Run Manager.
     86  */
     87  void OrxonoxScene::loadResources()
     88  {
     89          // Initialise, parse scripts etc
     90          ResourceGroupManager::getSingleton().initialiseAllResourceGroups();
     91  }
    12292
    12393
    124 /**
    125 * Compute something between frames if neccessary.
    126 * @param time Absolute time.
    127 * @param deltaTime Relative time.
    128 * @return Return true to continue rendering.
    129 */
    130 bool OrxonoxScene::tick(unsigned long time, Real deltaTime)
    131 {
    132         Real t = time/1000.0;
     94  /**
     95  * Scene creation.
     96  * Currently just a test scene with an ogre head an a surrounding light.
     97  */
     98  void OrxonoxScene::createScene()
     99  {
     100          sceneMgr_->setAmbientLight(ColourValue(0.3,0.3,0.3));
    133101
    134         lightNode_->setPosition(radius_*sin(5*t), radius_*cos(5*t), sin(1*t)*distance_);
    135        
    136         light_->setDiffuseColour(sin(1*t), sin(1*t + 2.09), sin(1*t + 2.09*2));
    137         light_->setSpecularColour(sin(1*t), sin(1*t + 2.09), sin(1*t + 2.09*2));
     102          //create first entity
     103          Entity *head = sceneMgr_->createEntity("head", "ogrehead.mesh");
    138104
    139         bbs_->getBillboard(0)->setColour(ColourValue(sin(1*t),
    140         sin(1*t + 2.09), sin(1*t + 2.09*2)));
    141  
    142   return true;
     105          //create a scene node to attach the head to
     106          SceneNode *node = sceneMgr_->getRootSceneNode()
     107          ->createChildSceneNode("OgreHeadNode", Vector3(0,0,0));
     108          //attach the ogre head
     109          node->attachObject(head);
     110
     111          // set up skybox
     112          sceneMgr_->setSkyBox(true, "Examples/SceneSkyBox2");
     113
     114          // set up one light_ source
     115          light_ = sceneMgr_->createLight("Light1");
     116          light_->setType(Light::LT_POINT);
     117          light_->setPosition(Vector3(0, 0, 0));
     118          light_->setDiffuseColour(1.0, 1.0, 1.0);
     119          light_->setSpecularColour(1.0, 1.0, 1.0);
     120
     121          //create billboard
     122          bbs_ = sceneMgr_->createBillboardSet("bb", 1);
     123          bbs_->createBillboard(Vector3::ZERO, ColourValue(1.0, 1.0, 1.0));
     124          bbs_->setMaterialName("Examples/Flare");
     125
     126          lightNode_ = sceneMgr_->getRootSceneNode()
     127          ->createChildSceneNode("lightNode_", Vector3(0, 100, 0));
     128
     129          lightNode_->attachObject(bbs_);
     130          lightNode_->attachObject(light_);
     131  }
     132
     133
     134  /**
     135  * Compute something between frames if neccessary.
     136  * @param time Absolute time.
     137  * @param deltaTime Relative time.
     138  * @return Return true to continue rendering.
     139  */
     140  bool OrxonoxScene::tick(unsigned long time, Real deltaTime)
     141  {
     142          Real t = time/1000.0;
     143
     144          lightNode_->setPosition(radius_*sin(5*t), radius_*cos(5*t), sin(1*t)*distance_);
     145       
     146          light_->setDiffuseColour(sin(1*t), sin(1*t + 2.09), sin(1*t + 2.09*2));
     147          light_->setSpecularColour(sin(1*t), sin(1*t + 2.09), sin(1*t + 2.09*2));
     148
     149          bbs_->getBillboard(0)->setColour(ColourValue(sin(1*t),
     150          sin(1*t + 2.09), sin(1*t + 2.09*2)));
     151   
     152    return true;
     153  }
     154
    143155}
  • code/branches/main_reto_vs05/src/orxonox_ship.cc

    r159 r161  
    2626 */
    2727
    28 /**
    29 * Base class for any kind of flyable ship in Orxonox.
    30 *
    31 * The ship offers steering methods (like left, right, etc.) and translates
    32 * them into movement. A ship can also hold more than one weapons (where each
    33 * of these can be replaced during the game). This means that a ship can have
    34 * many WeaponManagers but only one MunitionManager (independant object that
    35 * is referenced in each WeaponManager).
    36 * Furthermore a ship in Orxonox is responsible for its visualization, which is
    37 * why it receives a pointer to the SceneManager.
    38 */
    39 
     28#include "OgreSceneManager.h"
     29#include "OgreSceneNode.h"
     30#include "OgreEntity.h"
     31#include "OgreVector3.h"
     32#include "OgreStringConverter.h"
     33
     34#include "bullet.h"
    4035
    4136#include "orxonox_ship.h"
    4237
    43 
    44 /**
    45 * Standard constructor, that only initalizes a few variables. Some of them
    46 * could be made static, since any new ship would be derived from the BaseShip.
    47 * Or even better: write config files for each ship so that manipulating
    48 * its properties would be even easier.
    49 * @param mSceneMgr The current main SceneManager
    50 * @param mNode The scene node which the ship will be attached to later.
    51 */
    52 OrxonoxShip::OrxonoxShip(SceneManager *sceneMgr, SceneNode *node)
    53             : sceneMgr_(sceneMgr), rootNode_(node), currentSpeed_(Vector3(0, 0, 0)),
    54       baseThrust_(1000), currentThrust_(Vector3::ZERO),
    55       objectCounter_(0), bulletSpeed_(400)
    56 {
     38namespace Orxonox {
     39  using namespace Ogre;
     40
     41  /**
     42  * Base class for any kind of flyable ship in Orxonox.
     43  *
     44  * The ship offers steering methods (like left, right, etc.) and translates
     45  * them into movement. A ship can also hold more than one weapons (where each
     46  * of these can be replaced during the game). This means that a ship can have
     47  * many WeaponManagers but only one MunitionManager (independant object that
     48  * is referenced in each WeaponManager).
     49  * Furthermore a ship in Orxonox is responsible for its visualization, which is
     50  * why it receives a pointer to the SceneManager.
     51  */
     52
     53
     54
     55
     56  /**
     57  * Standard constructor, that only initalizes a few variables. Some of them
     58  * could be made static, since any new ship would be derived from the BaseShip.
     59  * Or even better: write config files for each ship so that manipulating
     60  * its properties would be even easier.
     61  * @param mSceneMgr The current main SceneManager
     62  * @param mNode The scene node which the ship will be attached to later.
     63  */
     64  OrxonoxShip::OrxonoxShip(SceneManager *sceneMgr, SceneNode *node)
     65              : sceneMgr_(sceneMgr), rootNode_(node), currentSpeed_(Vector3(0, 0, 0)),
     66        baseThrust_(1000), currentThrust_(Vector3::ZERO),
     67        objectCounter_(0), bulletSpeed_(400)
     68  {
     69  }
     70
     71
     72  /**
     73  * Standard destructor.
     74  * Doesn't have any work to do yet.
     75  */
     76  OrxonoxShip::~OrxonoxShip()
     77  {
     78  }
     79
     80
     81  /**
     82  * Initialises everything.
     83  * Once that ResourceGroups are organised, this method loads them.
     84  * It might be an idea to make this function static in order for the
     85  * SceneManger to call the initialise method of every needed class (macros..)
     86  * @return Returns false when failed.
     87  */
     88  bool OrxonoxShip::initialise()
     89  {
     90          // load all the resources needed (no resource groups yet,
     91    // so the allInit is not executed!)
     92          // ResourceGroupManager::getSingleton().initialiseAllResourceGroups();
     93
     94          // create the "space ship" (currently a fish..)
     95          // TODO: names must be unique! use static variables..
     96          shipEntity_ = sceneMgr_->createEntity("Ship", "fish.mesh");
     97          SceneNode *fishNode = rootNode_->createChildSceneNode("fishNode");
     98          fishNode->yaw(Degree(-90));
     99          fishNode->attachObject(shipEntity_);
     100          fishNode->setScale(Vector3(10, 10, 10));
     101
     102          return true;
     103  }
     104
     105
     106  /**
     107  * Gets the ship to accelerate in the current direction.
     108  * The value should be between 0 and 1, with one beeing full thrust and 0 none.
     109  * @param value Acceleration between 0 and 1
     110  */
     111  void OrxonoxShip::setMainThrust(const Real value)
     112  {
     113          //currentThrust_ = value * baseThrust_;
     114    currentThrust_.z = value * baseThrust_;
     115  }
     116
     117
     118  /**
     119  * Gets the ship to accelerate sideways regarding the current direction.
     120  * The value should be between 0 and 1, with one beeing full thrust and 0 none.
     121  * @param value Acceleration between 0 and 1
     122  */
     123  void OrxonoxShip::setSideThrust(const Real value)
     124  {
     125          //currentSideThrust_ = value * baseThrust_;
     126    currentThrust_.x = value * baseThrust_;
     127  }
     128
     129
     130  /**
     131  * Gets the ship to accelerate up and down.
     132  * The value should be between 0 and 1, with one beeing full thrust and 0 none.
     133  * @param value Acceleration between 0 and 1
     134  */
     135  void OrxonoxShip::setYThrust(const Real value)
     136  {
     137    //currentYThrust_ = value * baseThrust_;
     138    currentThrust_.y = value * baseThrust_;
     139  }
     140
     141
     142  /**
     143  * Rotate the ship along with the camera up and down.
     144  * @param angle Pitch value.
     145  */
     146  void OrxonoxShip::turnUpAndDown(const Radian &angle)
     147  {
     148    rootNode_->pitch(-angle, Node::TS_LOCAL);
     149  }
     150
     151
     152  /**
     153  * Rotate the ship along with the camera left and right.
     154  * @param angle Yaw value.
     155  */
     156  void OrxonoxShip::turnLeftAndRight(const Radian &angle)
     157  {
     158    rootNode_->yaw(-angle, Node::TS_PARENT);
     159  }
     160
     161
     162  /**
     163  * Returns the current speed of the ship according to its parent node.
     164  * @return The current speed.
     165  */
     166  Vector3 OrxonoxShip::getSpeed()
     167  {
     168    return currentSpeed_;
     169  }
     170
     171  /**
     172  * Returns the ship's root SceneNode.
     173  * @return The Root Node.
     174  */
     175  SceneNode* OrxonoxShip::getRootNode()
     176  {
     177    return rootNode_;
     178  }
     179
     180
     181  /**
     182  * Fire a bullet (Entity with SceneNode).
     183  * This method creates a new Entity plus a SceneNode. But be sure not make
     184  * the new Node a child of RootNode_!
     185  * @return Bullet containing speed and entity.
     186  */
     187  Bullet* OrxonoxShip::fire()
     188  {
     189          // TODO: Names must be unique!
     190          SceneNode *temp = rootNode_->getParentSceneNode()->createChildSceneNode(
     191          "BulletNode" + StringConverter::toString(objectCounter_));
     192          temp->setOrientation(rootNode_->getOrientation());
     193          temp->setPosition(rootNode_->getPosition());
     194          temp->setScale(Vector3(1, 1, 1) * 10);
     195          temp->yaw(Degree(-90));
     196          return new Bullet(temp, sceneMgr_->createEntity("bullet"
     197          + StringConverter::toString(objectCounter_++), "Barrel.mesh"), currentSpeed_
     198          + (rootNode_->getOrientation() * Vector3(0, 0, -1)).normalisedCopy()
     199          * bulletSpeed_);
     200  }
     201
     202
     203  /**
     204  * Standard tick() function.
     205  * Currently, only the speed is applied according to the thrust values.
     206  * @param time Absolute time.
     207  * @param deltaTime Relative time.
     208  * @return Return true to continue render
     209  */
     210  bool OrxonoxShip::tick(unsigned long time, Real deltaTime)
     211  {
     212    Quaternion quad = rootNode_->getOrientation();
     213    quad.normalise();
     214    currentSpeed_ += quad * (Vector3(-1, -1, -1) * currentThrust_) * deltaTime;
     215    //currentSpeed_ += quad * Vector3(0, 0, -1) * currentThrust_ * deltaTime;
     216          //currentSpeed_ += quad * Vector3(-1, 0,  0) * currentSideThrust_ * deltaTime;
     217
     218          rootNode_->translate(currentSpeed_ * deltaTime);
     219
     220          return true;
     221  }
     222
    57223}
    58 
    59 
    60 /**
    61 * Standard destructor.
    62 * Doesn't have any work to do yet.
    63 */
    64 OrxonoxShip::~OrxonoxShip()
    65 {
    66 }
    67 
    68 
    69 /**
    70 * Initialises everything.
    71 * Once that ResourceGroups are organised, this method loads them.
    72 * It might be an idea to make this function static in order for the
    73 * SceneManger to call the initialise method of every needed class (macros..)
    74 * @return Returns false when failed.
    75 */
    76 bool OrxonoxShip::initialise()
    77 {
    78         // load all the resources needed (no resource groups yet,
    79   // so the allInit is not executed!)
    80         // ResourceGroupManager::getSingleton().initialiseAllResourceGroups();
    81 
    82         // create the "space ship" (currently a fish..)
    83         // TODO: names must be unique! use static variables..
    84         shipEntity_ = sceneMgr_->createEntity("Ship", "fish.mesh");
    85         SceneNode *fishNode = rootNode_->createChildSceneNode("fishNode");
    86         fishNode->yaw(Degree(-90));
    87         fishNode->attachObject(shipEntity_);
    88         fishNode->setScale(Vector3(10, 10, 10));
    89 
    90         return true;
    91 }
    92 
    93 
    94 /**
    95 * Gets the ship to accelerate in the current direction.
    96 * The value should be between 0 and 1, with one beeing full thrust and 0 none.
    97 * @param value Acceleration between 0 and 1
    98 */
    99 void OrxonoxShip::setMainThrust(const Real value)
    100 {
    101         //currentThrust_ = value * baseThrust_;
    102   currentThrust_.z = value * baseThrust_;
    103 }
    104 
    105 
    106 /**
    107 * Gets the ship to accelerate sideways regarding the current direction.
    108 * The value should be between 0 and 1, with one beeing full thrust and 0 none.
    109 * @param value Acceleration between 0 and 1
    110 */
    111 void OrxonoxShip::setSideThrust(const Real value)
    112 {
    113         //currentSideThrust_ = value * baseThrust_;
    114   currentThrust_.x = value * baseThrust_;
    115 }
    116 
    117 
    118 /**
    119 * Gets the ship to accelerate up and down.
    120 * The value should be between 0 and 1, with one beeing full thrust and 0 none.
    121 * @param value Acceleration between 0 and 1
    122 */
    123 void OrxonoxShip::setYThrust(const Real value)
    124 {
    125   //currentYThrust_ = value * baseThrust_;
    126   currentThrust_.y = value * baseThrust_;
    127 }
    128 
    129 
    130 /**
    131 * Rotate the ship along with the camera up and down.
    132 * @param angle Pitch value.
    133 */
    134 void OrxonoxShip::turnUpAndDown(const Radian &angle)
    135 {
    136   rootNode_->pitch(-angle, Node::TS_LOCAL);
    137 }
    138 
    139 
    140 /**
    141 * Rotate the ship along with the camera left and right.
    142 * @param angle Yaw value.
    143 */
    144 void OrxonoxShip::turnLeftAndRight(const Radian &angle)
    145 {
    146   rootNode_->yaw(-angle, Node::TS_PARENT);
    147 }
    148 
    149 
    150 /**
    151 * Returns the current speed of the ship according to its parent node.
    152 * @return The current speed.
    153 */
    154 Vector3 OrxonoxShip::getSpeed()
    155 {
    156   return currentSpeed_;
    157 }
    158 
    159 /**
    160 * Returns the ship's root SceneNode.
    161 * @return The Root Node.
    162 */
    163 SceneNode* OrxonoxShip::getRootNode()
    164 {
    165   return rootNode_;
    166 }
    167 
    168 
    169 /**
    170 * Fire a bullet (Entity with SceneNode).
    171 * This method creates a new Entity plus a SceneNode. But be sure not make
    172 * the new Node a child of RootNode_!
    173 * @return Bullet containing speed and entity.
    174 */
    175 Bullet* OrxonoxShip::fire()
    176 {
    177         // TODO: Names must be unique!
    178         SceneNode *temp = rootNode_->getParentSceneNode()->createChildSceneNode(
    179         "BulletNode" + StringConverter::toString(objectCounter_));
    180         temp->setOrientation(rootNode_->getOrientation());
    181         temp->setPosition(rootNode_->getPosition());
    182         temp->setScale(Vector3(1, 1, 1) * 10);
    183         temp->yaw(Degree(-90));
    184         return new Bullet(temp, sceneMgr_->createEntity("bullet"
    185         + StringConverter::toString(objectCounter_++), "Barrel.mesh"), currentSpeed_
    186         + (rootNode_->getOrientation() * Vector3(0, 0, -1)).normalisedCopy()
    187         * bulletSpeed_);
    188 }
    189 
    190 
    191 /**
    192 * Standard tick() function.
    193 * Currently, only the speed is applied according to the thrust values.
    194 * @param time Absolute time.
    195 * @param deltaTime Relative time.
    196 * @return Return true to continue render
    197 */
    198 bool OrxonoxShip::tick(unsigned long time, Real deltaTime)
    199 {
    200   Quaternion quad = rootNode_->getOrientation();
    201   quad.normalise();
    202   currentSpeed_ += quad * (Vector3(-1, -1, -1) * currentThrust_) * deltaTime;
    203   //currentSpeed_ += quad * Vector3(0, 0, -1) * currentThrust_ * deltaTime;
    204         //currentSpeed_ += quad * Vector3(-1, 0,  0) * currentSideThrust_ * deltaTime;
    205 
    206         rootNode_->translate(currentSpeed_ * deltaTime);
    207 
    208         return true;
    209 }
  • code/branches/main_reto_vs05/src/run_manager.cc

    r160 r161  
    3939*/
    4040
     41#include "Ogre.h"
     42//#include "OgreRoot.h"
     43//#include "OgreSceneManager.h"
     44//#include "OgreSceneNode.h"
     45//#include "OgreCamera.h"
     46//#include "OgreViewport.h"
     47//#include "OgreRenderWindow.h"
     48//#include "OgreOverlay.h"
     49//#include "OgreOverlayManager.h"
     50//#include "OgreOverlayElement.h"
     51//#include "OgreTextureManager.h"
     52//#include "OgreMaterialManager.h"
     53//#include "OgreLogManager.h"
     54//#include "OgreVector3.h"
     55//#include "OgreStringConverter.h"
     56//#include "OgreWindowEventUtilities.h"
     57
     58//Use this define to signify OIS will be used as a DLL
     59//(so that dll import/export macros are in effect)
     60#define OIS_DYNAMIC_LIB
     61#include <OIS/OIS.h>
     62
     63#include "ogre_control.h"
     64#include "orxonox_scene.h"
     65#include "orxonox_ship.h"
     66#include "bullet.h"
     67#include "camera_manager.h"
     68
    4169#include "run_manager.h"
    4270
    43 
    44 /**
    45 * Contructor only needs the render window and the Root object which are both
    46 * the OgreControl object.
    47 * Right now the constructor does all the initialisation work. This could also
    48 * be done in a new method "initialize()", for whatever purpose.
    49 *
    50 *
    51 * @param ogre_ The OgreControl object holding the render window and the Root
    52 */
    53 RunManager::RunManager(OgreControl * ogre)
    54       : ogre_(ogre), window_(ogre->getRenderWindow()), leftButtonDown_(false),
    55       statsOn_(true), screenShotCounter_(0), timeUntilNextToggle_(0),
    56       filtering_(TFO_BILINEAR), aniso_(1), sceneDetailIndex_(0),
    57       mouseSensitivity_(0.003),
    58       debugOverlay_(0), inputManager_(0), mouse_(0), keyboard_(0), joystick_(0)
    59 {
    60 
    61   // SETTING UP THE SCENE
    62 
    63   // create one new SceneManger
    64   sceneMgr_ = ogre_->getRoot()->createSceneManager(ST_GENERIC, "backgroundScene_");
    65 
    66   // background scene (world objects, skybox, lights, etc.)
    67   backgroundScene_ = new OrxonoxScene(sceneMgr_);
    68 
    69   // PLAYER SPACESHIP
    70 
    71   // Create a space ship object and its SceneNode.
    72   // Some ideas about the steering: The ship should only receive events like
    73   // up, down, left, right, roll left, roll right, move down, move up, etc).
    74   // Multiple interpretations of these commands would make the game more
    75   // but it also makes AI steering more difficult, since for every type of
    76   // steering, new methods have to be written.
    77   // --> clearly define how a space ship can fly (rolling?, conservation of
    78   // impuls?, direct mouse sight steeering?, etc.)
    79   // It should also be considered, that the ship should provide another Node
    80   // for a camera to be attached (otherwise the spaceship in front of the
    81   // would be very static, never moving at all).
    82 
    83   // Construct a new spaceship and give it the node
    84   playerShip_ = new OrxonoxShip(sceneMgr_, sceneMgr_->getRootSceneNode()
    85     ->createChildSceneNode("ShipNode", Vector3(20, 20, 20)));
    86 
    87 
    88   // RESOURCE LOADING (using ResourceGroups if implemented)
    89 
    90   // load all resources and create the entities by calling the initialise()
    91   // methods for each object (don't initialise in the constructor!).
    92   backgroundScene_->initialise();
    93   playerShip_->initialise();
    94 
    95 
    96   // CAMERA AND VIEWPORT
    97   // TODO: create a camera manager. It should be able to change its position
    98   // around the space ship (predefined states would be nice too). And it should
    99   // also be able to switch between different locations (like ship, spactator,
    100   // certain fixed positions (e.g. finish line, etc.)). These are just ideas.
    101 
    102   // create camera and viewport
    103   createCamera();
    104   createViewports();
    105 
    106 
    107   // Set default mipmap level (NB some APIs ignore this)
    108   TextureManager::getSingleton().setDefaultNumMipmaps(5);
    109 
    110  
    111   // BULLET LIST FOR THE TEST APPLICATION
    112 
    113   // TODO: Use STL to make life easier. But it works this way too..
    114   bullets_ = new Bullet*[10];
    115   bulletsIndex_ = 0;
    116   bulletsSize_ = 10;
    117 
    118 
    119   // HUMAN INTERFACE
    120 
    121   using namespace OIS;
    122 
    123   debugOverlay_ = OverlayManager::getSingleton()
    124     .getByName("Core/DebugOverlay");
    125 
    126   LogManager::getSingletonPtr()->logMessage("*** Initializing OIS ***");
    127   ParamList pl;
    128   size_t windowHnd = 0;
    129   std::ostringstream windowHndStr;
    130 
    131   window_->getCustomAttribute("WINDOW", &windowHnd);
    132   windowHndStr << windowHnd;
    133   pl.insert(std::make_pair(std::string("WINDOW"), windowHndStr.str()));
    134 
    135   inputManager_ = InputManager::createInputSystem( pl );
    136 
    137   // Create all devices (We only catch joystick exceptions here,
    138   // as, most people have Key/Mouse)
    139   keyboard_ = static_cast<Keyboard*>(inputManager_
    140     ->createInputObject( OISKeyboard, false ));
    141   mouse_ = static_cast<Mouse*>(inputManager_
    142     ->createInputObject( OISMouse, false ));
    143   try {
    144     joystick_ = static_cast<JoyStick*>(inputManager_
    145       ->createInputObject( OISJoyStick, false ));
    146   }
    147   catch(...) {
    148     joystick_ = 0;
    149   }
    150 
    151   //Set initial mouse clipping size
    152   windowResized(window_);
    153 
    154   showDebugOverlay(true);
    155 
    156   // REGISTER THIS OBJECT AS A WINDOW EVENT LISTENER IN OGRE
    157   // It will then receive events liek windowClosed, windowResized, etc.
    158   WindowEventUtilities::addWindowEventListener(window_, this);
     71namespace Orxonox {
     72  using namespace Ogre;
     73
     74  /**
     75  * Contructor only needs the render window and the Root object which are both
     76  * the OgreControl object.
     77  * Right now the constructor does all the initialisation work. This could also
     78  * be done in a new method "initialize()", for whatever purpose.
     79  *
     80  *
     81  * @param ogre_ The OgreControl object holding the render window and the Root
     82  */
     83  RunManager::RunManager(OgreControl * ogre)
     84        : ogre_(ogre), window_(ogre->getRenderWindow()), leftButtonDown_(false),
     85        statsOn_(true), screenShotCounter_(0), timeUntilNextToggle_(0),
     86        filtering_(TFO_BILINEAR), aniso_(1), sceneDetailIndex_(0),
     87        mouseSensitivity_(0.003),
     88        debugOverlay_(0), inputManager_(0), mouse_(0), keyboard_(0), joystick_(0)
     89  {
     90
     91    // SETTING UP THE SCENE
     92
     93    // create one new SceneManger
     94    sceneMgr_ = ogre_->getRoot()->createSceneManager(ST_GENERIC, "backgroundScene_");
     95
     96    // background scene (world objects, skybox, lights, etc.)
     97    backgroundScene_ = new OrxonoxScene(sceneMgr_);
     98
     99    // PLAYER SPACESHIP
     100
     101    // Create a space ship object and its SceneNode.
     102    // Some ideas about the steering: The ship should only receive events like
     103    // up, down, left, right, roll left, roll right, move down, move up, etc).
     104    // Multiple interpretations of these commands would make the game more
     105    // but it also makes AI steering more difficult, since for every type of
     106    // steering, new methods have to be written.
     107    // --> clearly define how a space ship can fly (rolling?, conservation of
     108    // impuls?, direct mouse sight steeering?, etc.)
     109    // It should also be considered, that the ship should provide another Node
     110    // for a camera to be attached (otherwise the spaceship in front of the
     111    // would be very static, never moving at all).
     112
     113    // Construct a new spaceship and give it the node
     114    playerShip_ = new OrxonoxShip(sceneMgr_, sceneMgr_->getRootSceneNode()
     115      ->createChildSceneNode("ShipNode", Vector3(20, 20, 20)));
     116
     117
     118    // RESOURCE LOADING (using ResourceGroups if implemented)
     119
     120    // load all resources and create the entities by calling the initialise()
     121    // methods for each object (don't initialise in the constructor!).
     122    backgroundScene_->initialise();
     123    playerShip_->initialise();
     124
     125
     126    // CAMERA AND VIEWPORT
     127    // TODO: create a camera manager. It should be able to change its position
     128    // around the space ship (predefined states would be nice too). And it should
     129    // also be able to switch between different locations (like ship, spactator,
     130    // certain fixed positions (e.g. finish line, etc.)). These are just ideas.
     131
     132    // create camera and viewport
     133    createCamera();
     134    createViewports();
     135
     136
     137    // Set default mipmap level (NB some APIs ignore this)
     138    TextureManager::getSingleton().setDefaultNumMipmaps(5);
     139
     140   
     141    // BULLET LIST FOR THE TEST APPLICATION
     142
     143    // TODO: Use STL to make life easier. But it works this way too..
     144    bullets_ = new Bullet*[10];
     145    bulletsIndex_ = 0;
     146    bulletsSize_ = 10;
     147
     148
     149    // HUMAN INTERFACE
     150
     151    using namespace OIS;
     152
     153    debugOverlay_ = OverlayManager::getSingleton()
     154      .getByName("Core/DebugOverlay");
     155
     156    LogManager::getSingletonPtr()->logMessage("*** Initializing OIS ***");
     157    ParamList pl;
     158    size_t windowHnd = 0;
     159    std::ostringstream windowHndStr;
     160
     161    window_->getCustomAttribute("WINDOW", &windowHnd);
     162    windowHndStr << windowHnd;
     163    pl.insert(std::make_pair(std::string("WINDOW"), windowHndStr.str()));
     164
     165    inputManager_ = InputManager::createInputSystem( pl );
     166
     167    // Create all devices (We only catch joystick exceptions here,
     168    // as, most people have Key/Mouse)
     169    keyboard_ = static_cast<Keyboard*>(inputManager_
     170      ->createInputObject( OISKeyboard, false ));
     171    mouse_ = static_cast<Mouse*>(inputManager_
     172      ->createInputObject( OISMouse, false ));
     173    try {
     174      joystick_ = static_cast<JoyStick*>(inputManager_
     175        ->createInputObject( OISJoyStick, false ));
     176    }
     177    catch(...) {
     178      joystick_ = 0;
     179    }
     180
     181    //Set initial mouse clipping size
     182    windowResized(window_);
     183
     184    showDebugOverlay(true);
     185
     186    // REGISTER THIS OBJECT AS A WINDOW EVENT LISTENER IN OGRE
     187    // It will then receive events liek windowClosed, windowResized, etc.
     188    WindowEventUtilities::addWindowEventListener(window_, this);
     189  }
     190
     191  /**
     192  * Standard destructor.
     193  * Removes this object as a window event listener and deletes all created
     194  * variables.
     195  */
     196  RunManager::~RunManager()
     197  {
     198    //Remove ourself as a Window listener
     199    WindowEventUtilities::removeWindowEventListener(window_, this);
     200    windowClosed(window_);
     201
     202    if (backgroundScene_)
     203      delete backgroundScene_;
     204    if (playerShip_)
     205      delete playerShip_;
     206
     207    // clean up the bullet list
     208    for (int i = 0; i < bulletsIndex_; i++)
     209      delete bullets_[i];
     210    delete bullets_;
     211  }
     212
     213
     214  /**
     215  * Method to compute anyting between 2 frames.
     216  *
     217  * Everything that needs to be computed during the games happens right here.
     218  * The only exception are the listeners (which should only set variables,
     219  * not actually do something).
     220  *
     221  * @param time Absolute play time
     222  * @param deltaTime Time passed since last frame
     223  * @return Return false to end rendering
     224  */
     225  bool RunManager::tick(unsigned long time, float deltaTime)
     226  {
     227    // synchronize with internal class timer
     228    totalTime_ = time;
     229
     230    // Call tick() for every object
     231    // This could be done by registering (needs a factory..)
     232    backgroundScene_->tick(time, deltaTime);
     233    playerShip_->tick(time, deltaTime);
     234
     235
     236    // Update the 'HUD'
     237    updateStats();
     238
     239    // update the bullet positions
     240    for (int i = 0; i < bulletsIndex_; i++)
     241    {
     242      bullets_[i]->mNode->translate(bullets_[i]->mSpeed*deltaTime);
     243      bullets_[i]->mNode->yaw(Degree(deltaTime*100));
     244      bullets_[i]->mNode->roll(Degree(deltaTime*300));
     245    }
     246
     247    // HUMAN INTERFACE
     248
     249    using namespace OIS;
     250
     251    if(window_->isClosed())     return false;
     252
     253    //Need to capture/update each device
     254    keyboard_->capture();
     255    mouse_->capture();
     256    if( joystick_ ) joystick_->capture();
     257
     258    bool buffJ = (joystick_) ? joystick_->buffered() : true;
     259
     260    //Check if one of the devices is not buffered
     261    if( !mouse_->buffered() || !keyboard_->buffered() || !buffJ )
     262    {
     263      // one of the input modes is immediate, so setup what
     264      // is needed for immediate movement
     265      if (timeUntilNextToggle_ >= 0)
     266        timeUntilNextToggle_ -= deltaTime;
     267    }
     268
     269    // handle HID devices
     270    if( processUnbufferedKeyInput() == false )
     271        return false;
     272    if( processUnbufferedMouseInput() == false )
     273        return false;
     274
     275    // keep rendering
     276    return true;
     277  }
     278
     279
     280  /**
     281  * Adjust mouse clipping area.
     282  * This method is called by Ogre without regards of tick()!
     283  * Avoid doing too much in this call.
     284  * @param rw render window
     285  */
     286  void RunManager::windowResized(RenderWindow* rw)
     287  {
     288    unsigned int width, height, depth;
     289    int left, top;
     290    rw->getMetrics(width, height, depth, left, top);
     291
     292    const OIS::MouseState &ms = mouse_->getMouseState();
     293    ms.width = width;
     294    ms.height = height;
     295  }
     296
     297
     298  /**
     299  * Unattach OIS before window shutdown (very important under Linux).
     300  * Again, avoid computing a lot in this function.
     301  * @param rw Render Window
     302  */
     303  void RunManager::windowClosed(RenderWindow* rw)
     304  {
     305    //Only close for window that created OIS (the main window in these demos)
     306    if( rw == window_ )
     307    {
     308      if( inputManager_ )
     309      {
     310        inputManager_->destroyInputObject( mouse_ );
     311        inputManager_->destroyInputObject( keyboard_ );
     312        inputManager_->destroyInputObject( joystick_ );
     313
     314        OIS::InputManager::destroyInputSystem(inputManager_);
     315        inputManager_ = 0;
     316      }
     317    }
     318  }
     319
     320  /**
     321  * Processes the Keyboard input.
     322  * TODO: Use listeners to improve performance.
     323  * A lookup table should be implemented to bind any key to a specific action.
     324  * @return Return true to keep rendering
     325  */
     326  bool RunManager::processUnbufferedKeyInput()
     327  {
     328    using namespace OIS;
     329
     330    if(keyboard_->isKeyDown(KC_A) || keyboard_->isKeyDown(KC_LEFT))
     331      playerShip_->setSideThrust(1);
     332    else if(keyboard_->isKeyDown(KC_D) || keyboard_->isKeyDown(KC_RIGHT))
     333      playerShip_->setSideThrust(-1);
     334    else
     335      playerShip_->setSideThrust(0);
     336
     337    if(keyboard_->isKeyDown(KC_UP) || keyboard_->isKeyDown(KC_W) )
     338      playerShip_->setMainThrust(1);
     339    else if(keyboard_->isKeyDown(KC_DOWN) || keyboard_->isKeyDown(KC_S) )
     340      playerShip_->setMainThrust(-1);
     341    else
     342      playerShip_->setMainThrust(0);
     343
     344    if (keyboard_->isKeyDown(KC_C))
     345      playerShip_->setYThrust(1);
     346    else if (keyboard_->isKeyDown(KC_SPACE))
     347      playerShip_->setYThrust(-1);
     348    else
     349      playerShip_->setYThrust(0);
     350
     351    if( keyboard_->isKeyDown(KC_ESCAPE) || keyboard_->isKeyDown(KC_Q) )
     352      return false;
     353
     354    if( keyboard_->isKeyDown(KC_F) && timeUntilNextToggle_ <= 0 )
     355    {
     356      statsOn_ = !statsOn_;
     357      showDebugOverlay(statsOn_);
     358      timeUntilNextToggle_ = 1;
     359    }
     360
     361    if( keyboard_->isKeyDown(KC_T) && timeUntilNextToggle_ <= 0 )
     362    {
     363      switch(filtering_)
     364      {
     365      case TFO_BILINEAR:
     366        filtering_ = TFO_TRILINEAR;
     367        aniso_ = 1;
     368        break;
     369      case TFO_TRILINEAR:
     370        filtering_ = TFO_ANISOTROPIC;
     371        aniso_ = 8;
     372        break;
     373      case TFO_ANISOTROPIC:
     374        filtering_ = TFO_BILINEAR;
     375        aniso_ = 1;
     376        break;
     377      default: break;
     378      }
     379      MaterialManager::getSingleton().setDefaultTextureFiltering(filtering_);
     380      MaterialManager::getSingleton().setDefaultAnisotropy(aniso_);
     381
     382      showDebugOverlay(statsOn_);
     383      timeUntilNextToggle_ = 1;
     384    }
     385
     386    if(keyboard_->isKeyDown(KC_SYSRQ) && timeUntilNextToggle_ <= 0)
     387    {
     388      std::ostringstream ss;
     389      ss << "screenshot_" << ++screenShotCounter_ << ".png";
     390      window_->writeContentsToFile(ss.str());
     391      timeUntilNextToggle_ = 0.5;
     392      debugText_ = "Saved: " + ss.str();
     393    }
     394
     395    if(keyboard_->isKeyDown(KC_R) && timeUntilNextToggle_ <=0)
     396    {
     397      sceneDetailIndex_ = (sceneDetailIndex_+1)%3 ;
     398      switch(sceneDetailIndex_) {
     399          case 0 : camera_->setPolygonMode(PM_SOLID); break;
     400          case 1 : camera_->setPolygonMode(PM_WIREFRAME); break;
     401          case 2 : camera_->setPolygonMode(PM_POINTS); break;
     402      }
     403      timeUntilNextToggle_ = 0.5;
     404    }
     405
     406    static bool displayCameraDetails = false;
     407    if(keyboard_->isKeyDown(KC_P) && timeUntilNextToggle_ <= 0)
     408    {
     409      displayCameraDetails = !displayCameraDetails;
     410      timeUntilNextToggle_ = 0.5;
     411      if (!displayCameraDetails)
     412        debugText_ = "";
     413    }
     414
     415    // Print camera details
     416    if(displayCameraDetails)
     417      debugText_ = " | Speed = "
     418            + StringConverter::toString(playerShip_->getSpeed());
     419    // debugText_ = "P: " + StringConverter::toString(camera_
     420    //      ->getDerivedPosition()) + " " + "O: "
     421    //      + StringConverter::toString(camera_->getDerivedOrientation());
     422
     423    // Return true to continue rendering
     424    return true;
     425  }
     426
     427
     428  /**
     429  * Processes the Mouse input.
     430  * TODO: Use listeners to improve performance.
     431  * A lookup table should be implemented to bind ANY button or movement
     432  * to a specific action.
     433  * @return Return true to keep rendering
     434  */
     435  bool RunManager::processUnbufferedMouseInput()
     436  {
     437    using namespace OIS;
     438
     439    const MouseState &ms = mouse_->getMouseState();
     440
     441    // This is a 'hack' to show some flying barrels..
     442    // Usually, the Bullet created by the ship should be managed
     443    // by the physics engine..
     444    if (ms.buttonDown(MB_Left) && !leftButtonDown_)
     445    {
     446      // Prevent continuous fire for the moment.
     447      leftButtonDown_ = true;
     448     
     449      // let ship fire one shot with its only weapon (Barrels..)
     450      Bullet *tempBullet = playerShip_->fire();
     451
     452      // resize array if neccessary (double the size then)
     453      if (bulletsIndex_ >= bulletsSize_)
     454      {
     455        // redimension the array
     456        Bullet **tempArray = new Bullet*[2*bulletsSize_];
     457        for (int i = 0; i < bulletsSize_; i++)
     458          tempArray[i] = bullets_[i];
     459        bulletsSize_ *= 2;
     460        delete bullets_;
     461        bullets_ = tempArray;
     462      }
     463
     464      // add the bullet to the list
     465      bullets_[bulletsIndex_++] = tempBullet;
     466
     467    }
     468    else if (!ms.buttons)
     469      leftButtonDown_ = false;
     470
     471    // space ship steering. This should definitely be done in the steering object
     472    // Simply give it the mouse movements.
     473    playerShip_->turnUpAndDown(Radian(ms.Y.rel * mouseSensitivity_));
     474    playerShip_->turnLeftAndRight(Radian(ms.X.rel * mouseSensitivity_));
     475    //playerShip_->mRootNode->pitch(Degree(-ms.Y.rel * 0.13), Ogre::Node::TransformSpace::TS_LOCAL);
     476    //playerShip_->mRootNode->yaw(Degree(-ms.X.rel * 0.13), Ogre::Node::TransformSpace::TS_PARENT);
     477
     478    // keep rendering
     479    return true;
     480  }
     481
     482  /**
     483  * Show the debug overlay of desired.
     484  * @param show Whether or not to show the debug overlay
     485  */
     486  void RunManager::showDebugOverlay(bool show)
     487  {
     488    if (debugOverlay_)
     489    {
     490      if (show)
     491        debugOverlay_->show();
     492      else
     493        debugOverlay_->hide();
     494    }
     495  }
     496
     497
     498  /**
     499  * Show stats (e.g. FPS) in the left lower corner of the screen.
     500  * Copied from the ExampleFrameListener.h in the Ogre SDK
     501  */
     502  void RunManager::updateStats(void)
     503  {
     504    static String currFps = "Current FPS: ";
     505    static String avgFps = "Average FPS: ";
     506    static String bestFps = "Best FPS: ";
     507    static String worstFps = "Worst FPS: ";
     508    static String tris = "Triangle Count: ";
     509    static String batches = "Batch Count: ";
     510
     511    // update stats when necessary
     512    try {
     513      OverlayElement* guiAvg = OverlayManager::getSingleton()
     514        .getOverlayElement("Core/AverageFps");
     515      OverlayElement* guiCurr = OverlayManager::getSingleton()
     516        .getOverlayElement("Core/CurrFps");
     517      OverlayElement* guiBest = OverlayManager::getSingleton()
     518        .getOverlayElement("Core/BestFps");
     519      OverlayElement* guiWorst = OverlayManager::getSingleton()
     520        .getOverlayElement("Core/WorstFps");
     521
     522      const RenderTarget::FrameStats& stats = window_->getStatistics();
     523      guiAvg->setCaption(avgFps + StringConverter::toString(stats.avgFPS));
     524      guiCurr->setCaption(currFps + StringConverter::toString(stats.lastFPS));
     525      guiBest->setCaption(bestFps + StringConverter::toString(stats.bestFPS)
     526        +" "+StringConverter::toString(stats.bestFrameTime)+" ms");
     527      guiWorst->setCaption(worstFps + StringConverter::toString(stats.worstFPS)
     528        +" "+StringConverter::toString(stats.worstFrameTime)+" ms");
     529
     530      OverlayElement* guiTris = OverlayManager::getSingleton()
     531        .getOverlayElement("Core/NumTris");
     532      guiTris->setCaption(tris + StringConverter::toString(stats.triangleCount));
     533
     534      OverlayElement* guiBatches = OverlayManager::getSingleton()
     535        .getOverlayElement("Core/NumBatches");
     536      guiBatches->setCaption(batches
     537        + StringConverter::toString(stats.batchCount));
     538
     539      OverlayElement* guiDbg = OverlayManager::getSingleton()
     540        .getOverlayElement("Core/DebugText");
     541      guiDbg->setCaption(debugText_);
     542    }
     543    catch(...) { /* ignore */ }
     544  }
     545
     546
     547
     548  /**
     549  * Simple camera creator.
     550  * playerShip_Node->attachObject(camera_) should no be here! This is what the camera
     551  * manager is for. Right now, this method should do just fine, setting the
     552  * cam behind the ship.
     553  */
     554  void RunManager::createCamera(void)
     555  {
     556    camera_ = sceneMgr_->createCamera("PlayerCam");
     557    playerShip_->getRootNode()->attachObject(camera_);
     558    camera_->setNearClipDistance(5);
     559    camera_->setPosition(Vector3(0,10,500));
     560    camera_->lookAt(Vector3(0,0,0));
     561  }
     562
     563  /**
     564  * Simple viewport creator.
     565  * TODO: fully understand the concept of viewports concerning orxnox.
     566  * E.g. do we need splitscreen mode?
     567  * For now the viewport uses the entire render window and is based on the one
     568  * camera created so far.
     569  */
     570  void RunManager::createViewports(void)
     571  {
     572    // Create one viewport, entire window
     573    Viewport* vp = window_->addViewport(camera_);
     574    vp->setBackgroundColour(ColourValue(0,0,0));
     575
     576    // Alter the camera aspect ratio to match the viewport
     577    camera_->setAspectRatio(
     578      Real(vp->getActualWidth()) / Real(vp->getActualHeight()));
     579  }
     580
    159581}
    160 
    161 /**
    162 * Standard destructor.
    163 * Removes this object as a window event listener and deletes all created
    164 * variables.
    165 */
    166 RunManager::~RunManager()
    167 {
    168   //Remove ourself as a Window listener
    169   WindowEventUtilities::removeWindowEventListener(window_, this);
    170   windowClosed(window_);
    171 
    172   if (backgroundScene_)
    173     delete backgroundScene_;
    174   if (playerShip_)
    175     delete playerShip_;
    176 
    177   // clean up the bullet list
    178   for (int i = 0; i < bulletsIndex_; i++)
    179     delete bullets_[i];
    180   delete bullets_;
    181 }
    182 
    183 
    184 /**
    185 * Method to compute anyting between 2 frames.
    186 *
    187 * Everything that needs to be computed during the games happens right here.
    188 * The only exception are the listeners (which should only set variables,
    189 * not actually do something).
    190 *
    191 * @param time Absolute play time
    192 * @param deltaTime Time passed since last frame
    193 * @return Return false to end rendering
    194 */
    195 bool RunManager::tick(unsigned long time, float deltaTime)
    196 {
    197   // synchronize with internal class timer
    198   totalTime_ = time;
    199 
    200   // Call tick() for every object
    201   // This could be done by registering (needs a factory..)
    202   backgroundScene_->tick(time, deltaTime);
    203   playerShip_->tick(time, deltaTime);
    204 
    205 
    206   // Update the 'HUD'
    207   updateStats();
    208 
    209   // update the bullet positions
    210   for (int i = 0; i < bulletsIndex_; i++)
    211   {
    212     bullets_[i]->mNode->translate(bullets_[i]->mSpeed*deltaTime);
    213     bullets_[i]->mNode->yaw(Degree(deltaTime*100));
    214     bullets_[i]->mNode->roll(Degree(deltaTime*300));
    215   }
    216 
    217   // HUMAN INTERFACE
    218 
    219   using namespace OIS;
    220 
    221   if(window_->isClosed())       return false;
    222 
    223   //Need to capture/update each device
    224   keyboard_->capture();
    225   mouse_->capture();
    226   if( joystick_ ) joystick_->capture();
    227 
    228   bool buffJ = (joystick_) ? joystick_->buffered() : true;
    229 
    230   //Check if one of the devices is not buffered
    231   if( !mouse_->buffered() || !keyboard_->buffered() || !buffJ )
    232   {
    233     // one of the input modes is immediate, so setup what
    234     // is needed for immediate movement
    235     if (timeUntilNextToggle_ >= 0)
    236       timeUntilNextToggle_ -= deltaTime;
    237   }
    238 
    239   // handle HID devices
    240   if( processUnbufferedKeyInput() == false )
    241       return false;
    242   if( processUnbufferedMouseInput() == false )
    243       return false;
    244 
    245   // keep rendering
    246   return true;
    247 }
    248 
    249 
    250 /**
    251 * Adjust mouse clipping area.
    252 * This method is called by Ogre without regards of tick()!
    253 * Avoid doing too much in this call.
    254 * @param rw render window
    255 */
    256 void RunManager::windowResized(RenderWindow* rw)
    257 {
    258   unsigned int width, height, depth;
    259   int left, top;
    260   rw->getMetrics(width, height, depth, left, top);
    261 
    262   const OIS::MouseState &ms = mouse_->getMouseState();
    263   ms.width = width;
    264   ms.height = height;
    265 }
    266 
    267 
    268 /**
    269 * Unattach OIS before window shutdown (very important under Linux).
    270 * Again, avoid computing a lot in this function.
    271 * @param rw Render Window
    272 */
    273 void RunManager::windowClosed(RenderWindow* rw)
    274 {
    275   //Only close for window that created OIS (the main window in these demos)
    276   if( rw == window_ )
    277   {
    278     if( inputManager_ )
    279     {
    280       inputManager_->destroyInputObject( mouse_ );
    281       inputManager_->destroyInputObject( keyboard_ );
    282       inputManager_->destroyInputObject( joystick_ );
    283 
    284       OIS::InputManager::destroyInputSystem(inputManager_);
    285       inputManager_ = 0;
    286     }
    287   }
    288 }
    289 
    290 /**
    291 * Processes the Keyboard input.
    292 * TODO: Use listeners to improve performance.
    293 * A lookup table should be implemented to bind any key to a specific action.
    294 * @return Return true to keep rendering
    295 */
    296 bool RunManager::processUnbufferedKeyInput()
    297 {
    298   using namespace OIS;
    299 
    300   if(keyboard_->isKeyDown(KC_A) || keyboard_->isKeyDown(KC_LEFT))
    301     playerShip_->setSideThrust(1);
    302   else if(keyboard_->isKeyDown(KC_D) || keyboard_->isKeyDown(KC_RIGHT))
    303     playerShip_->setSideThrust(-1);
    304   else
    305     playerShip_->setSideThrust(0);
    306 
    307   if(keyboard_->isKeyDown(KC_UP) || keyboard_->isKeyDown(KC_W) )
    308     playerShip_->setMainThrust(1);
    309   else if(keyboard_->isKeyDown(KC_DOWN) || keyboard_->isKeyDown(KC_S) )
    310     playerShip_->setMainThrust(-1);
    311   else
    312     playerShip_->setMainThrust(0);
    313 
    314   if (keyboard_->isKeyDown(KC_C))
    315     playerShip_->setYThrust(1);
    316   else if (keyboard_->isKeyDown(KC_SPACE))
    317     playerShip_->setYThrust(-1);
    318   else
    319     playerShip_->setYThrust(0);
    320 
    321   if( keyboard_->isKeyDown(KC_ESCAPE) || keyboard_->isKeyDown(KC_Q) )
    322     return false;
    323 
    324   if( keyboard_->isKeyDown(KC_F) && timeUntilNextToggle_ <= 0 )
    325   {
    326     statsOn_ = !statsOn_;
    327     showDebugOverlay(statsOn_);
    328     timeUntilNextToggle_ = 1;
    329   }
    330 
    331   if( keyboard_->isKeyDown(KC_T) && timeUntilNextToggle_ <= 0 )
    332   {
    333     switch(filtering_)
    334     {
    335     case TFO_BILINEAR:
    336       filtering_ = TFO_TRILINEAR;
    337       aniso_ = 1;
    338       break;
    339     case TFO_TRILINEAR:
    340       filtering_ = TFO_ANISOTROPIC;
    341       aniso_ = 8;
    342       break;
    343     case TFO_ANISOTROPIC:
    344       filtering_ = TFO_BILINEAR;
    345       aniso_ = 1;
    346       break;
    347     default: break;
    348     }
    349     MaterialManager::getSingleton().setDefaultTextureFiltering(filtering_);
    350     MaterialManager::getSingleton().setDefaultAnisotropy(aniso_);
    351 
    352     showDebugOverlay(statsOn_);
    353     timeUntilNextToggle_ = 1;
    354   }
    355 
    356   if(keyboard_->isKeyDown(KC_SYSRQ) && timeUntilNextToggle_ <= 0)
    357   {
    358     std::ostringstream ss;
    359     ss << "screenshot_" << ++screenShotCounter_ << ".png";
    360     window_->writeContentsToFile(ss.str());
    361     timeUntilNextToggle_ = 0.5;
    362     debugText_ = "Saved: " + ss.str();
    363   }
    364 
    365   if(keyboard_->isKeyDown(KC_R) && timeUntilNextToggle_ <=0)
    366   {
    367     sceneDetailIndex_ = (sceneDetailIndex_+1)%3 ;
    368     switch(sceneDetailIndex_) {
    369         case 0 : camera_->setPolygonMode(PM_SOLID); break;
    370         case 1 : camera_->setPolygonMode(PM_WIREFRAME); break;
    371         case 2 : camera_->setPolygonMode(PM_POINTS); break;
    372     }
    373     timeUntilNextToggle_ = 0.5;
    374   }
    375 
    376   static bool displayCameraDetails = false;
    377   if(keyboard_->isKeyDown(KC_P) && timeUntilNextToggle_ <= 0)
    378   {
    379     displayCameraDetails = !displayCameraDetails;
    380     timeUntilNextToggle_ = 0.5;
    381     if (!displayCameraDetails)
    382       debugText_ = "";
    383   }
    384 
    385   // Print camera details
    386   if(displayCameraDetails)
    387     debugText_ = " | Speed = "
    388           + StringConverter::toString(playerShip_->getSpeed());
    389   // debugText_ = "P: " + StringConverter::toString(camera_
    390   //      ->getDerivedPosition()) + " " + "O: "
    391   //      + StringConverter::toString(camera_->getDerivedOrientation());
    392 
    393   // Return true to continue rendering
    394   return true;
    395 }
    396 
    397 
    398 /**
    399 * Processes the Mouse input.
    400 * TODO: Use listeners to improve performance.
    401 * A lookup table should be implemented to bind ANY button or movement
    402 * to a specific action.
    403 * @return Return true to keep rendering
    404 */
    405 bool RunManager::processUnbufferedMouseInput()
    406 {
    407   using namespace OIS;
    408 
    409   const MouseState &ms = mouse_->getMouseState();
    410 
    411   // This is a 'hack' to show some flying barrels..
    412   // Usually, the Bullet created by the ship should be managed
    413   // by the physics engine..
    414   if (ms.buttonDown(MB_Left) && !leftButtonDown_)
    415   {
    416     // Prevent continuous fire for the moment.
    417     leftButtonDown_ = true;
    418    
    419     // let ship fire one shot with its only weapon (Barrels..)
    420     Bullet *tempBullet = playerShip_->fire();
    421 
    422     // resize array if neccessary (double the size then)
    423     if (bulletsIndex_ >= bulletsSize_)
    424     {
    425       // redimension the array
    426       Bullet **tempArray = new Bullet*[2*bulletsSize_];
    427       for (int i = 0; i < bulletsSize_; i++)
    428         tempArray[i] = bullets_[i];
    429       bulletsSize_ *= 2;
    430       delete bullets_;
    431       bullets_ = tempArray;
    432     }
    433 
    434     // add the bullet to the list
    435     bullets_[bulletsIndex_++] = tempBullet;
    436 
    437   }
    438   else if (!ms.buttons)
    439     leftButtonDown_ = false;
    440 
    441   // space ship steering. This should definitely be done in the steering object
    442   // Simply give it the mouse movements.
    443   playerShip_->turnUpAndDown(Radian(ms.Y.rel * mouseSensitivity_));
    444   playerShip_->turnLeftAndRight(Radian(ms.X.rel * mouseSensitivity_));
    445   //playerShip_->mRootNode->pitch(Degree(-ms.Y.rel * 0.13), Ogre::Node::TransformSpace::TS_LOCAL);
    446   //playerShip_->mRootNode->yaw(Degree(-ms.X.rel * 0.13), Ogre::Node::TransformSpace::TS_PARENT);
    447 
    448   // keep rendering
    449   return true;
    450 }
    451 
    452 /**
    453 * Show the debug overlay of desired.
    454 * @param show Whether or not to show the debug overlay
    455 */
    456 void RunManager::showDebugOverlay(bool show)
    457 {
    458   if (debugOverlay_)
    459   {
    460     if (show)
    461       debugOverlay_->show();
    462     else
    463       debugOverlay_->hide();
    464   }
    465 }
    466 
    467 
    468 /**
    469 * Show stats (e.g. FPS) in the left lower corner of the screen.
    470 * Copied from the ExampleFrameListener.h in the Ogre SDK
    471 */
    472 void RunManager::updateStats(void)
    473 {
    474   static String currFps = "Current FPS: ";
    475   static String avgFps = "Average FPS: ";
    476   static String bestFps = "Best FPS: ";
    477   static String worstFps = "Worst FPS: ";
    478   static String tris = "Triangle Count: ";
    479   static String batches = "Batch Count: ";
    480 
    481   // update stats when necessary
    482   try {
    483     OverlayElement* guiAvg = OverlayManager::getSingleton()
    484       .getOverlayElement("Core/AverageFps");
    485     OverlayElement* guiCurr = OverlayManager::getSingleton()
    486       .getOverlayElement("Core/CurrFps");
    487     OverlayElement* guiBest = OverlayManager::getSingleton()
    488       .getOverlayElement("Core/BestFps");
    489     OverlayElement* guiWorst = OverlayManager::getSingleton()
    490       .getOverlayElement("Core/WorstFps");
    491 
    492     const RenderTarget::FrameStats& stats = window_->getStatistics();
    493     guiAvg->setCaption(avgFps + StringConverter::toString(stats.avgFPS));
    494     guiCurr->setCaption(currFps + StringConverter::toString(stats.lastFPS));
    495     guiBest->setCaption(bestFps + StringConverter::toString(stats.bestFPS)
    496       +" "+StringConverter::toString(stats.bestFrameTime)+" ms");
    497     guiWorst->setCaption(worstFps + StringConverter::toString(stats.worstFPS)
    498       +" "+StringConverter::toString(stats.worstFrameTime)+" ms");
    499 
    500     OverlayElement* guiTris = OverlayManager::getSingleton()
    501       .getOverlayElement("Core/NumTris");
    502     guiTris->setCaption(tris + StringConverter::toString(stats.triangleCount));
    503 
    504     OverlayElement* guiBatches = OverlayManager::getSingleton()
    505       .getOverlayElement("Core/NumBatches");
    506     guiBatches->setCaption(batches
    507       + StringConverter::toString(stats.batchCount));
    508 
    509     OverlayElement* guiDbg = OverlayManager::getSingleton()
    510       .getOverlayElement("Core/DebugText");
    511     guiDbg->setCaption(debugText_);
    512   }
    513   catch(...) { /* ignore */ }
    514 }
    515 
    516 
    517 
    518 /**
    519 * Simple camera creator.
    520 * playerShip_Node->attachObject(camera_) should no be here! This is what the camera
    521 * manager is for. Right now, this method should do just fine, setting the
    522 * cam behind the ship.
    523 */
    524 void RunManager::createCamera(void)
    525 {
    526   camera_ = sceneMgr_->createCamera("PlayerCam");
    527   playerShip_->getRootNode()->attachObject(camera_);
    528   camera_->setNearClipDistance(5);
    529   camera_->setPosition(Vector3(0,10,500));
    530   camera_->lookAt(Vector3(0,0,0));
    531 }
    532 
    533 /**
    534 * Simple viewport creator.
    535 * TODO: fully understand the concept of viewports concerning orxnox.
    536 * E.g. do we need splitscreen mode?
    537 * For now the viewport uses the entire render window and is based on the one
    538 * camera created so far.
    539 */
    540 void RunManager::createViewports(void)
    541 {
    542   // Create one viewport, entire window
    543   Viewport* vp = window_->addViewport(camera_);
    544   vp->setBackgroundColour(ColourValue(0,0,0));
    545 
    546   // Alter the camera aspect ratio to match the viewport
    547   camera_->setAspectRatio(
    548     Real(vp->getActualWidth()) / Real(vp->getActualHeight()));
    549 }
  • code/branches/main_reto_vs05/src/weapon_manager.cc

    r157 r161  
    2626 */
    2727
     28#include "OgreSceneManager.h"
     29
    2830#include "weapon_manager.h"
    2931
    30 WeaponManager::WeaponManager(SceneManager *mSceneMgr)
    31 {
    32        
    33 }
     32
     33namespace Orxonox {
     34  using namespace Ogre;
     35
     36  WeaponManager::WeaponManager(SceneManager *mSceneMgr)
     37  {
     38       
     39  }
    3440
    3541
    36 WeaponManager::~WeaponManager()
    37 {
     42  WeaponManager::~WeaponManager()
     43  {
     44  }
     45
    3846}
Note: See TracChangeset for help on using the changeset viewer.