Crash after destroying a text overlay in 1.6.2

Problems building or running the engine, queries about how to use features etc.
Post Reply
jfaust
Halfling
Posts: 94
Joined: Sun Sep 25, 2005 10:25 pm
Location: Menlo Park, CA

Crash after destroying a text overlay in 1.6.2

Post by jfaust »

I'm trying to upgrade to 1.6.2 from 1.4.9, and have run into a very strange problem. During first frame rendered after anything using a Font is destroyed, the application will crash horribly:

Code: Select all

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb70f3920 (LWP 11375)]
0xb7ab7903 in ?? ()
(gdb) bt
#0  0xb7ab7903 in ?? ()
Cannot access memory at address 0xbd1ed456
(gdb) info threads
* 1 Thread 0xb70f3920 (LWP 11375)  0xb7ab7903 in ?? ()
(gdb) 
I tracked the site of the crash down to line 2771 of OgreGLRenderSystem.cpp:

Code: Select all

glDrawElements(primType, op.indexData->indexCount, indexType, pBufferData);
The crash happens if you step over that line, on the first call to glDrawElements after the text is destroyed.

I found a "workaround", which is that if I prevent (comment out) the text element from deleting its vertex buffer, everything seems to work fine... that's not a real option though, as it will continuously leak video (and main) memory.

This is all under Ubuntu 8.04, with what appears to be the latest nvidia-glx-new drivers. I've attached a minimal sample which demonstrates the behavior, it can be compiled with:

Code: Select all

g++ -o font_crash -g font_crash.cpp `pkg-config --cflags OGRE` `pkg-config --libs OGRE`
font_crash.tar.gz
(39.56 KiB) Downloaded 43 times
And here's the program itself, inline:

Code: Select all

#include <OGRE/Ogre.h>

#include <exception>
#include <stdexcept>

int main(int argc, char** argv)
{

  Ogre::Root* root = new Ogre::Root();
  root->loadPlugin( "RenderSystem_GL" );
  root->loadPlugin( "Plugin_CgProgramManager" );
  root->loadPlugin( "Plugin_OctreeSceneManager" );
  root->loadPlugin( "Plugin_ParticleFX" );
  
  if (!root->showConfigDialog())
    {
      return 1;
    }

  Ogre::RenderWindow* window = root->initialise(true);
  Ogre::SceneManager* scene_manager = root->createSceneManager( Ogre::ST_GENERIC, "TestSceneManager" );
  Ogre::Camera* camera = scene_manager->createCamera("Cam");
  camera->setNearClipDistance(0.1);
  camera->setPosition(Ogre::Vector3(0, 0, 5));
  camera->lookAt(Ogre::Vector3(0, 0, 0));

  // Create one viewport, entire window
  Ogre::Viewport* vp = window->addViewport(camera);
  vp->setBackgroundColour(Ogre::ColourValue(1,0,0));
  // Alter the camera aspect ratio to match the viewport
  camera->setAspectRatio(Ogre::Real(vp->getActualWidth()) / Ogre::Real(vp->getActualHeight()));
  
  Ogre::ResourceGroupManager::getSingleton().addResourceLocation("media", "FileSystem", Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
  Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups();

  Ogre::Overlay* overlay = Ogre::OverlayManager::getSingleton().create("test");
  Ogre::OverlayContainer* container = (Ogre::OverlayContainer*)Ogre::OverlayManager::getSingleton().createOverlayElement("Panel", "container1");
  overlay->add2D(container);
  overlay->show();

  Ogre::Entity* ent = scene_manager->createEntity("entity", "sphere.mesh");
  scene_manager->getRootSceneNode()->createChildSceneNode()->attachObject(ent);
  
  Ogre::OverlayElement* text = 0;
  
  int i = 0;

  while (true)
    {
      if (i % 1000 == 0)
	{
	  if (!text)
	    {
	      printf("Creating text\n");
	      text = Ogre::OverlayManager::getSingleton().createOverlayElement("TextArea", "text");
	      text->setParameter("font_name", "Ogre");
	      text->setParameter("char_height", "1.0");
	      text->setDimensions(100.0, 100.0);
	      text->setColour(Ogre::ColourValue(1.0, 1.0, 1.0, 1.0));
	      text->setCaption("A");
	      container->addChild(text);
	    }
	  else
	    {
	      printf("Deleting text\n");
	      container->removeChild(text->getName());
	      Ogre::OverlayManager::getSingleton().destroyOverlayElement("text");
	      text = 0;
	    }
	}
      
      root->renderOneFrame();

      ++i;
    }
  
  delete root;
}
Here's the Ogre.log from my system:

Code: Select all

14:14:48: Creating resource group General
14:14:48: Creating resource group Internal
14:14:48: Creating resource group Autodetect
14:14:48: SceneManagerFactory for type 'DefaultSceneManager' registered.
14:14:48: Registering ResourceManager for type Material
14:14:48: Registering ResourceManager for type Mesh
14:14:48: Registering ResourceManager for type Skeleton
14:14:48: MovableObjectFactory for type 'ParticleSystem' registered.
14:14:48: OverlayElementFactory for type Panel registered.
14:14:48: OverlayElementFactory for type BorderPanel registered.
14:14:48: OverlayElementFactory for type TextArea registered.
14:14:48: Registering ResourceManager for type Font
14:14:48: ArchiveFactory for archive type FileSystem registered.
14:14:48: ArchiveFactory for archive type Zip registered.
14:14:48: FreeImage version: 3.9.3
14:14:48: This program uses FreeImage, a free, open source image library supporting all common bitmap formats. See http://freeimage.sourceforge.net for details
14:14:48: 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
14:14:48: DDS codec registering
14:14:48: Registering ResourceManager for type HighLevelGpuProgram
14:14:48: Registering ResourceManager for type Compositor
14:14:48: MovableObjectFactory for type 'Entity' registered.
14:14:48: MovableObjectFactory for type 'Light' registered.
14:14:48: MovableObjectFactory for type 'BillboardSet' registered.
14:14:48: MovableObjectFactory for type 'ManualObject' registered.
14:14:48: MovableObjectFactory for type 'BillboardChain' registered.
14:14:48: MovableObjectFactory for type 'RibbonTrail' registered.
14:14:48: OGRE EXCEPTION(6:FileNotFoundException): 'plugins.cfg' file not found! in ConfigFile::load at OgreConfigFile.cpp (line 84)
14:14:48: plugins.cfg not found, automatic plugin loading disabled.
14:14:48: *-*-* OGRE Initialising
14:14:48: *-*-* Version 1.6.2 (Shoggoth)
14:14:48: Loading library RenderSystem_GL
14:14:48: Installing plugin: GL RenderSystem
14:14:48: OpenGL Rendering Subsystem created.
14:14:48: Plugin successfully installed
14:14:48: Loading library Plugin_CgProgramManager
14:14:48: Installing plugin: Cg Program Manager
14:14:48: Plugin successfully installed
14:14:48: Loading library Plugin_OctreeSceneManager
14:14:48: Installing plugin: Octree & Terrain Scene Manager
14:14:48: Plugin successfully installed
14:14:48: Loading library Plugin_ParticleFX
14:14:48: Installing plugin: ParticleFX
14:14:48: Particle Emitter Type 'Point' registered
14:14:48: Particle Emitter Type 'Box' registered
14:14:48: Particle Emitter Type 'Ellipsoid' registered
14:14:48: Particle Emitter Type 'Cylinder' registered
14:14:48: Particle Emitter Type 'Ring' registered
14:14:48: Particle Emitter Type 'HollowEllipsoid' registered
14:14:48: Particle Affector Type 'LinearForce' registered
14:14:48: Particle Affector Type 'ColourFader' registered
14:14:48: Particle Affector Type 'ColourFader2' registered
14:14:48: Particle Affector Type 'ColourImage' registered
14:14:48: Particle Affector Type 'ColourInterpolator' registered
14:14:48: Particle Affector Type 'Scaler' registered
14:14:48: Particle Affector Type 'Rotator' registered
14:14:48: Particle Affector Type 'DirectionRandomiser' registered
14:14:48: Particle Affector Type 'DeflectorPlane' registered
14:14:48: Plugin successfully installed
14:14:48: OGRE EXCEPTION(6:FileNotFoundException): 'ogre.cfg' file not found! in ConfigFile::load at OgreConfigFile.cpp (line 84)
14:14:58: CPU Identifier & Features
14:14:58: -------------------------
14:14:58:  *   CPU ID: GenuineIntel: Intel(R) Core(TM)2 Quad CPU    Q9550  @ 2.83GHz
14:14:58:  *      SSE: yes
14:14:58:  *     SSE2: yes
14:14:58:  *     SSE3: yes
14:14:58:  *      MMX: yes
14:14:58:  *   MMXEXT: yes
14:14:58:  *    3DNOW: no
14:14:58:  * 3DNOWEXT: no
14:14:58:  *     CMOV: yes
14:14:58:  *      TSC: yes
14:14:58:  *      FPU: yes
14:14:58:  *      PRO: yes
14:14:58:  *       HT: no
14:14:58: -------------------------
14:14:58: ******************************
*** Starting GLX Subsystem ***
******************************
14:14:58: GLRenderSystem::_createRenderWindow "OGRE Render Window", 3760x1600 windowed  miscParams: FSAA=0 displayFrequency=0 MHz gamma=No vsync=No 
14:14:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource GLX_icon.png in resource group General or any other group. in ResourceGroupManager::openResource at OgreResourceGroupManager.cpp (line 753)
14:14:58: GLXWindow::create used FBConfigID = 117
14:14:58: GL_VERSION = 2.1.2 NVIDIA 169.12
14:14:58: GL_VENDOR = NVIDIA Corporation
14:14:58: GL_RENDERER = GeForce 8600 GT/PCI/SSE2
14:14:58: GL_EXTENSIONS = GL_ARB_color_buffer_float GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_half_float_pixel GL_ARB_imaging GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_shadow GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_dot3 GL_ARB_texture_float GL_ARB_texture_mirrored_repeat GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_transpose_matrix GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_texture_float GL_ATI_texture_mirror_once GL_S3_s3tc GL_EXT_texture_env_add GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_Cg_shader GL_EXT_bindable_uniform GL_EXT_depth_bounds_test GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object GL_EXTX_framebuffer_mixed_formats GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_texture3D GL_EXT_texture_array GL_EXT_texture_buffer_object GL_EXT_texture_compression_latc GL_EXT_texture_compression_rgtc GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_integer GL_EXT_texture_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_sRGB GL_EXT_texture_shared_exponent GL_EXT_timer_query GL_EXT_vertex_array GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_blend_square GL_NV_copy_depth_to_color GL_NV_depth_buffer_float GL_NV_conditional_render GL_NV_depth_clamp GL_NV_fence GL_NV_float_buffer GL_NV_fog_distance GL_NV_fragment_program GL_NV_fragment_program_option GL_NV_fragment_program2 GL_NV_framebuffer_multisample_coverage GL_NV_geometry_shader4 GL_NV_gpu_program4 GL_NV_half_float GL_NV_light_max_exponent GL_NV_multisample_coverage GL_NV_multisample_filter_hint GL_NV_occlusion_query GL_NV_packed_depth_stencil GL_NV_parameter_buffer_object GL_NV_pixel_data_range GL_NV_point_sprite GL_NV_primitive_restart GL_NV_register_combiners GL_NV_register_combiners2 GL_NV_texgen_reflection GL_NV_texture_compression_vtc GL_NV_texture_env_combine4 GL_NV_texture_expand_normal GL_NV_texture_rectangle GL_NV_texture_shader GL_NV_texture_shader2 GL_NV_texture_shader3 GL_NV_transform_feedback GL_NV_vertex_array_range GL_NV_vertex_array_range2 GL_NV_vertex_program GL_NV_vertex_program1_1 GL_NV_vertex_program2 GL_NV_vertex_program2_option GL_NV_vertex_program3 GL_NVX_conditional_render GL_SGIS_generate_mipmap GL_SGIS_texture_lod GL_SGIX_depth_texture GL_SGIX_shadow GL_SUN_slice_accum 
14:14:58: Supported GLX extensions: GLX_EXT_visual_info GLX_EXT_visual_rating GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGI_video_sync GLX_SGI_swap_control GLX_EXT_texture_from_pixmap GLX_ARB_multisample GLX_NV_float_buffer GLX_ARB_fbconfig_float GLX_EXT_framebuffer_sRGB GLX_ARB_get_proc_address 
14:14:58: ***************************
14:14:58: *** GL Renderer Started ***
14:14:58: ***************************
14:14:58: Registering ResourceManager for type GpuProgram
14:14:58: GLSL support detected
14:14:58: GL: Using GL_EXT_framebuffer_object for rendering to textures (best)
14:14:59: FBO PF_UNKNOWN depth/stencil support: D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_L8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A4L4 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_BYTE_LA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_R5G6B5 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_B5G6R5 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A1R5G5B5 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_B8G8R8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A8R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_B8G8R8A8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A2R10G10B10 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A2B10G10R10 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_FLOAT16_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT16_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT32_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT32_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_X8R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_X8B8G8R8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_SHORT_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_R3G3B2 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT16_R depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT32_R depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT16_GR depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT32_GR depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_SHORT_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: [GL] : Valid FBO targets PF_UNKNOWN PF_L8 PF_A8 PF_A4L4 PF_BYTE_LA PF_R5G6B5 PF_B5G6R5 PF_A1R5G5B5 PF_R8G8B8 PF_B8G8R8 PF_A8R8G8B8 PF_B8G8R8A8 PF_A2R10G10B10 PF_A2B10G10R10 PF_FLOAT16_RGB PF_FLOAT16_RGBA PF_FLOAT32_RGB PF_FLOAT32_RGBA PF_X8R8G8B8 PF_X8B8G8R8 PF_SHORT_RGBA PF_R3G3B2 PF_FLOAT16_R PF_FLOAT32_R PF_FLOAT16_GR PF_FLOAT32_GR PF_SHORT_RGB 
14:15:00: RenderSystem capabilities
14:15:00: -------------------------
14:15:00: RenderSystem Name: OpenGL Rendering Subsystem
14:15:00: GPU Vendor: nvidia
14:15:00: Device Name: GeForce 8600 GT/PCI/SSE2
14:15:00: Driver Version: 2.1.2.0
14:15:00:  * Fixed function pipeline: yes
14:15:00:  * Hardware generation of mipmaps: yes
14:15:00:  * Texture blending: yes
14:15:00:  * Anisotropic texture filtering: yes
14:15:00:  * Dot product texture operation: yes
14:15:00:  * Cube mapping: yes
14:15:00:  * Hardware stencil buffer: yes
14:15:00:    - Stencil depth: 8
14:15:00:    - Two sided stencil support: yes
14:15:00:    - Wrap stencil values: yes
14:15:00:  * Hardware vertex / index buffers: yes
14:15:00:  * Vertex programs: yes
14:15:00:  * Fragment programs: yes
14:15:00:  * Geometry programs: yes
14:15:00:  * Supported Shader Profiles: arbfp1 arbvp1 fp20 fp30 fp40 glsl gp4gp gpu_gp nvgp4 vp30 vp40
14:15:00:  * Texture Compression: yes
14:15:00:    - DXT: yes
14:15:00:    - VTC: yes
14:15:00:  * Scissor Rectangle: yes
14:15:00:  * Hardware Occlusion Query: yes
14:15:00:  * User clip planes: yes
14:15:00:  * VET_UBYTE4 vertex element type: yes
14:15:00:  * Infinite far plane projection: yes
14:15:00:  * Hardware render-to-texture: yes
14:15:00:  * Floating point textures: yes
14:15:00:  * Non-power-of-two textures: yes
14:15:00:  * Volume textures: yes
14:15:00:  * Multiple Render Targets: 8
14:15:00:    - With different bit depths: yes
14:15:00:  * Point Sprites: yes
14:15:00:  * Extended point parameters: yes
14:15:00:  * Max Point Size: 63.375
14:15:00:  * Vertex texture fetch: yes
14:15:00:    - Max vertex textures: 32
14:15:00:    - Vertex textures shared: yes
14:15:00:  * Render to Vertex Buffer : yes
14:15:00:  * GL 1.5 without VBO workaround: no
14:15:00:  * Frame Buffer objects: yes
14:15:00:  * Frame Buffer objects (ARB extension): no
14:15:00:  * Frame Buffer objects (ATI extension): no
14:15:00:  * PBuffer suppport: no
14:15:00:  * GL 1.5 without HW-occlusion workaround: no
14:15:00: Registering ResourceManager for type Texture
14:15:00: ResourceBackgroundQueue - threading disabled
14:15:00: Particle Renderer Type 'billboard' registered
14:15:00: SceneManagerFactory for type 'OctreeSceneManager' registered.
14:15:00: SceneManagerFactory for type 'TerrainSceneManager' registered.
14:15:00: Added resource location 'media' of type 'FileSystem' to resource group 'General'
14:15:00: Parsing scripts for resource group Autodetect
14:15:00: Finished parsing scripts for resource group Autodetect
14:15:00: Parsing scripts for resource group General
14:15:00: Parsing script sample.fontdef
14:15:00: Bad attribute line: glyph	 	0.152344	0.125	0.160156	0.1875 in font Ogre
14:15:00: Finished parsing scripts for resource group General
14:15:00: Parsing scripts for resource group Internal
14:15:00: Finished parsing scripts for resource group Internal
14:15:00: Mesh: Loading sphere.mesh.
14:15:00: Texture: font_matisse_itc.png: Loading 1 faces(PF_A8R8G8B8,512x512x1) with 0 generated mipmaps from Image. Internal format is PF_A8R8G8B8,512x512x1.
jfaust@lan-dhcp-182:/home/jfaust/ros/pkg-ogre-16/visualization_core/font_crash$ cat Ogre.log 
14:14:48: Creating resource group General
14:14:48: Creating resource group Internal
14:14:48: Creating resource group Autodetect
14:14:48: SceneManagerFactory for type 'DefaultSceneManager' registered.
14:14:48: Registering ResourceManager for type Material
14:14:48: Registering ResourceManager for type Mesh
14:14:48: Registering ResourceManager for type Skeleton
14:14:48: MovableObjectFactory for type 'ParticleSystem' registered.
14:14:48: OverlayElementFactory for type Panel registered.
14:14:48: OverlayElementFactory for type BorderPanel registered.
14:14:48: OverlayElementFactory for type TextArea registered.
14:14:48: Registering ResourceManager for type Font
14:14:48: ArchiveFactory for archive type FileSystem registered.
14:14:48: ArchiveFactory for archive type Zip registered.
14:14:48: FreeImage version: 3.9.3
14:14:48: This program uses FreeImage, a free, open source image library supporting all common bitmap formats. See http://freeimage.sourceforge.net for details
14:14:48: 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
14:14:48: DDS codec registering
14:14:48: Registering ResourceManager for type HighLevelGpuProgram
14:14:48: Registering ResourceManager for type Compositor
14:14:48: MovableObjectFactory for type 'Entity' registered.
14:14:48: MovableObjectFactory for type 'Light' registered.
14:14:48: MovableObjectFactory for type 'BillboardSet' registered.
14:14:48: MovableObjectFactory for type 'ManualObject' registered.
14:14:48: MovableObjectFactory for type 'BillboardChain' registered.
14:14:48: MovableObjectFactory for type 'RibbonTrail' registered.
14:14:48: OGRE EXCEPTION(6:FileNotFoundException): 'plugins.cfg' file not found! in ConfigFile::load at OgreConfigFile.cpp (line 84)
14:14:48: plugins.cfg not found, automatic plugin loading disabled.
14:14:48: *-*-* OGRE Initialising
14:14:48: *-*-* Version 1.6.2 (Shoggoth)
14:14:48: Loading library RenderSystem_GL
14:14:48: Installing plugin: GL RenderSystem
14:14:48: OpenGL Rendering Subsystem created.
14:14:48: Plugin successfully installed
14:14:48: Loading library Plugin_CgProgramManager
14:14:48: Installing plugin: Cg Program Manager
14:14:48: Plugin successfully installed
14:14:48: Loading library Plugin_OctreeSceneManager
14:14:48: Installing plugin: Octree & Terrain Scene Manager
14:14:48: Plugin successfully installed
14:14:48: Loading library Plugin_ParticleFX
14:14:48: Installing plugin: ParticleFX
14:14:48: Particle Emitter Type 'Point' registered
14:14:48: Particle Emitter Type 'Box' registered
14:14:48: Particle Emitter Type 'Ellipsoid' registered
14:14:48: Particle Emitter Type 'Cylinder' registered
14:14:48: Particle Emitter Type 'Ring' registered
14:14:48: Particle Emitter Type 'HollowEllipsoid' registered
14:14:48: Particle Affector Type 'LinearForce' registered
14:14:48: Particle Affector Type 'ColourFader' registered
14:14:48: Particle Affector Type 'ColourFader2' registered
14:14:48: Particle Affector Type 'ColourImage' registered
14:14:48: Particle Affector Type 'ColourInterpolator' registered
14:14:48: Particle Affector Type 'Scaler' registered
14:14:48: Particle Affector Type 'Rotator' registered
14:14:48: Particle Affector Type 'DirectionRandomiser' registered
14:14:48: Particle Affector Type 'DeflectorPlane' registered
14:14:48: Plugin successfully installed
14:14:48: OGRE EXCEPTION(6:FileNotFoundException): 'ogre.cfg' file not found! in ConfigFile::load at OgreConfigFile.cpp (line 84)
14:14:58: CPU Identifier & Features
14:14:58: -------------------------
14:14:58:  *   CPU ID: GenuineIntel: Intel(R) Core(TM)2 Quad CPU    Q9550  @ 2.83GHz
14:14:58:  *      SSE: yes
14:14:58:  *     SSE2: yes
14:14:58:  *     SSE3: yes
14:14:58:  *      MMX: yes
14:14:58:  *   MMXEXT: yes
14:14:58:  *    3DNOW: no
14:14:58:  * 3DNOWEXT: no
14:14:58:  *     CMOV: yes
14:14:58:  *      TSC: yes
14:14:58:  *      FPU: yes
14:14:58:  *      PRO: yes
14:14:58:  *       HT: no
14:14:58: -------------------------
14:14:58: ******************************
*** Starting GLX Subsystem ***
******************************
14:14:58: GLRenderSystem::_createRenderWindow "OGRE Render Window", 3760x1600 windowed  miscParams: FSAA=0 displayFrequency=0 MHz gamma=No vsync=No 
14:14:58: OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource GLX_icon.png in resource group General or any other group. in ResourceGroupManager::openResource at OgreResourceGroupManager.cpp (line 753)
14:14:58: GLXWindow::create used FBConfigID = 117
14:14:58: GL_VERSION = 2.1.2 NVIDIA 169.12
14:14:58: GL_VENDOR = NVIDIA Corporation
14:14:58: GL_RENDERER = GeForce 8600 GT/PCI/SSE2
14:14:58: GL_EXTENSIONS = GL_ARB_color_buffer_float GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_half_float_pixel GL_ARB_imaging GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_shadow GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_dot3 GL_ARB_texture_float GL_ARB_texture_mirrored_repeat GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_transpose_matrix GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_texture_float GL_ATI_texture_mirror_once GL_S3_s3tc GL_EXT_texture_env_add GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_Cg_shader GL_EXT_bindable_uniform GL_EXT_depth_bounds_test GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object GL_EXTX_framebuffer_mixed_formats GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_texture3D GL_EXT_texture_array GL_EXT_texture_buffer_object GL_EXT_texture_compression_latc GL_EXT_texture_compression_rgtc GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_integer GL_EXT_texture_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_sRGB GL_EXT_texture_shared_exponent GL_EXT_timer_query GL_EXT_vertex_array GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_blend_square GL_NV_copy_depth_to_color GL_NV_depth_buffer_float GL_NV_conditional_render GL_NV_depth_clamp GL_NV_fence GL_NV_float_buffer GL_NV_fog_distance GL_NV_fragment_program GL_NV_fragment_program_option GL_NV_fragment_program2 GL_NV_framebuffer_multisample_coverage GL_NV_geometry_shader4 GL_NV_gpu_program4 GL_NV_half_float GL_NV_light_max_exponent GL_NV_multisample_coverage GL_NV_multisample_filter_hint GL_NV_occlusion_query GL_NV_packed_depth_stencil GL_NV_parameter_buffer_object GL_NV_pixel_data_range GL_NV_point_sprite GL_NV_primitive_restart GL_NV_register_combiners GL_NV_register_combiners2 GL_NV_texgen_reflection GL_NV_texture_compression_vtc GL_NV_texture_env_combine4 GL_NV_texture_expand_normal GL_NV_texture_rectangle GL_NV_texture_shader GL_NV_texture_shader2 GL_NV_texture_shader3 GL_NV_transform_feedback GL_NV_vertex_array_range GL_NV_vertex_array_range2 GL_NV_vertex_program GL_NV_vertex_program1_1 GL_NV_vertex_program2 GL_NV_vertex_program2_option GL_NV_vertex_program3 GL_NVX_conditional_render GL_SGIS_generate_mipmap GL_SGIS_texture_lod GL_SGIX_depth_texture GL_SGIX_shadow GL_SUN_slice_accum 
14:14:58: Supported GLX extensions: GLX_EXT_visual_info GLX_EXT_visual_rating GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGI_video_sync GLX_SGI_swap_control GLX_EXT_texture_from_pixmap GLX_ARB_multisample GLX_NV_float_buffer GLX_ARB_fbconfig_float GLX_EXT_framebuffer_sRGB GLX_ARB_get_proc_address 
14:14:58: ***************************
14:14:58: *** GL Renderer Started ***
14:14:58: ***************************
14:14:58: Registering ResourceManager for type GpuProgram
14:14:58: GLSL support detected
14:14:58: GL: Using GL_EXT_framebuffer_object for rendering to textures (best)
14:14:59: FBO PF_UNKNOWN depth/stencil support: D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_L8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A4L4 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_BYTE_LA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_R5G6B5 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_B5G6R5 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A1R5G5B5 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_B8G8R8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A8R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_B8G8R8A8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A2R10G10B10 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_A2B10G10R10 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:14:59: FBO PF_FLOAT16_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT16_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT32_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT32_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_X8R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_X8B8G8R8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_SHORT_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_R3G3B2 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT16_R depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT32_R depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT16_GR depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_FLOAT32_GR depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: FBO PF_SHORT_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8 
14:15:00: [GL] : Valid FBO targets PF_UNKNOWN PF_L8 PF_A8 PF_A4L4 PF_BYTE_LA PF_R5G6B5 PF_B5G6R5 PF_A1R5G5B5 PF_R8G8B8 PF_B8G8R8 PF_A8R8G8B8 PF_B8G8R8A8 PF_A2R10G10B10 PF_A2B10G10R10 PF_FLOAT16_RGB PF_FLOAT16_RGBA PF_FLOAT32_RGB PF_FLOAT32_RGBA PF_X8R8G8B8 PF_X8B8G8R8 PF_SHORT_RGBA PF_R3G3B2 PF_FLOAT16_R PF_FLOAT32_R PF_FLOAT16_GR PF_FLOAT32_GR PF_SHORT_RGB 
14:15:00: RenderSystem capabilities
14:15:00: -------------------------
14:15:00: RenderSystem Name: OpenGL Rendering Subsystem
14:15:00: GPU Vendor: nvidia
14:15:00: Device Name: GeForce 8600 GT/PCI/SSE2
14:15:00: Driver Version: 2.1.2.0
14:15:00:  * Fixed function pipeline: yes
14:15:00:  * Hardware generation of mipmaps: yes
14:15:00:  * Texture blending: yes
14:15:00:  * Anisotropic texture filtering: yes
14:15:00:  * Dot product texture operation: yes
14:15:00:  * Cube mapping: yes
14:15:00:  * Hardware stencil buffer: yes
14:15:00:    - Stencil depth: 8
14:15:00:    - Two sided stencil support: yes
14:15:00:    - Wrap stencil values: yes
14:15:00:  * Hardware vertex / index buffers: yes
14:15:00:  * Vertex programs: yes
14:15:00:  * Fragment programs: yes
14:15:00:  * Geometry programs: yes
14:15:00:  * Supported Shader Profiles: arbfp1 arbvp1 fp20 fp30 fp40 glsl gp4gp gpu_gp nvgp4 vp30 vp40
14:15:00:  * Texture Compression: yes
14:15:00:    - DXT: yes
14:15:00:    - VTC: yes
14:15:00:  * Scissor Rectangle: yes
14:15:00:  * Hardware Occlusion Query: yes
14:15:00:  * User clip planes: yes
14:15:00:  * VET_UBYTE4 vertex element type: yes
14:15:00:  * Infinite far plane projection: yes
14:15:00:  * Hardware render-to-texture: yes
14:15:00:  * Floating point textures: yes
14:15:00:  * Non-power-of-two textures: yes
14:15:00:  * Volume textures: yes
14:15:00:  * Multiple Render Targets: 8
14:15:00:    - With different bit depths: yes
14:15:00:  * Point Sprites: yes
14:15:00:  * Extended point parameters: yes
14:15:00:  * Max Point Size: 63.375
14:15:00:  * Vertex texture fetch: yes
14:15:00:    - Max vertex textures: 32
14:15:00:    - Vertex textures shared: yes
14:15:00:  * Render to Vertex Buffer : yes
14:15:00:  * GL 1.5 without VBO workaround: no
14:15:00:  * Frame Buffer objects: yes
14:15:00:  * Frame Buffer objects (ARB extension): no
14:15:00:  * Frame Buffer objects (ATI extension): no
14:15:00:  * PBuffer suppport: no
14:15:00:  * GL 1.5 without HW-occlusion workaround: no
14:15:00: Registering ResourceManager for type Texture
14:15:00: ResourceBackgroundQueue - threading disabled
14:15:00: Particle Renderer Type 'billboard' registered
14:15:00: SceneManagerFactory for type 'OctreeSceneManager' registered.
14:15:00: SceneManagerFactory for type 'TerrainSceneManager' registered.
14:15:00: Added resource location 'media' of type 'FileSystem' to resource group 'General'
14:15:00: Parsing scripts for resource group Autodetect
14:15:00: Finished parsing scripts for resource group Autodetect
14:15:00: Parsing scripts for resource group General
14:15:00: Parsing script sample.fontdef
14:15:00: Bad attribute line: glyph	 	0.152344	0.125	0.160156	0.1875 in font Ogre
14:15:00: Finished parsing scripts for resource group General
14:15:00: Parsing scripts for resource group Internal
14:15:00: Finished parsing scripts for resource group Internal
14:15:00: Mesh: Loading sphere.mesh.
14:15:00: Texture: font_matisse_itc.png: Loading 1 faces(PF_A8R8G8B8,512x512x1) with 0 generated mipmaps from Image. Internal format is PF_A8R8G8B8,512x512x1.
Any ideas?
jfaust
Halfling
Posts: 94
Joined: Sun Sep 25, 2005 10:25 pm
Location: Menlo Park, CA

Re: Crash after destroying a text overlay in 1.6.2

Post by jfaust »

Alright, I just tested against 1.6.0 and 1.6.1 and it works fine, so this is something new in 1.6.2
User avatar
AntonTheManton
Greenskin
Posts: 100
Joined: Sun Jan 14, 2007 1:47 am

Re: Crash after destroying a text overlay in 1.6.2

Post by AntonTheManton »

Yeah I've been having the same problems with ~Overlay().
Again, my solution has been to stop freeing memory - disaster.

I have had so many other problems compiling and running under Ubuntu 8.04 that I've given up the platform altogether (much less hassle than ripping the entire project apart).

It would be nice if the overlay issue was solved; otherwise I guess the sensible thing is to stick with the old version of Ogre
User avatar
AntonTheManton
Greenskin
Posts: 100
Joined: Sun Jan 14, 2007 1:47 am

Re: Crash after destroying a text overlay in 1.6.2

Post by AntonTheManton »

Okay - found the problem. (I'm on Ubuntu Jaunty)
OGRE is not compiling against g++-4.3. Definitely a problem with OGRE's code not being up to the 4.3 spec (and RakNet incidentally).
Solution was to roll back to g++-4.2 and to recompile everything (biggest hitch was that to get OGRE to compile without weird errors I also had to recompile OIS with g++-4.2 - man, that was hard to figure out).
I've only tried the previous release of OGRE (1.6.1) but it's working now.
I can confirm that it is NOT a problem with the new nvidia glx driver.
I assume that the dodgy bit of code is in the Overlay::~Overlay() memory handling.
jfaust
Halfling
Posts: 94
Joined: Sun Sep 25, 2005 10:25 pm
Location: Menlo Park, CA

Re: Crash after destroying a text overlay in 1.6.2

Post by jfaust »

That doesn't explain our original problem -- we're on Hardy, which uses gcc 4.2, and 1.6.1 works fine for us.

It's also not an issue with overlays specifically, but with everything that renders with a font. The MovableText example from the wiki exhibits the same behavior, and does not if it's using a different material (than the one from OgreFont::getMaterial()).
User avatar
_tommo_
Gnoll
Posts: 677
Joined: Tue Sep 19, 2006 6:09 pm
x 5
Contact:

Re: Crash after destroying a text overlay in 1.6.2

Post by _tommo_ »

Don't know if this is related, but i'm getting an Ogre Memory Exception when i destroy Ogre root, only if i use overlays at some point.
I'm using the latest SVN Trunk.
OverMindGames Blog
IndieVault.it: Il nuovo portale italiano su Game Dev & Indie Games
Post Reply