I compiled celestia from today's CVS on linux, QT 3.2.1, KDE 3.1.4, and installed Walton Comer's 32k virtual BlueMarbel earth texture.
Celestia starts up ok, but crashes when selecting BlueMarbel DDS as alternate surface on earth. Dump looks like this:
Code: Select all
#0 0x00000000 in ?? ()
#1 0x080f0998 in LoadMiplessTexture (img=@0x87c32c8, target=142357192)
at texture.cpp:300
#2 0x080f0f90 in ImageTexture (this=0x87a7060, img=@0x87c32c8, addressMode=33777,
mipMapMode=DefaultMipMaps) at texture.cpp:458
#3 0x080fb2ea in VirtualTexture::loadTileTexture(unsigned, unsigned, unsigned) (
this=0x87af7c8, lod=0, u=142357192, v=142241888) at virtualtex.cpp:234
#4 0x080fb390 in VirtualTexture::makeResident(VirtualTexture::Tile*, unsigned, unsigned, unsigned) (this=0x83f1, tile=0x8541070, lod=33777, u=33777, v=33777)
at virtualtex.cpp:246
#5 0x080fb03b in VirtualTexture::getTile(int, int, int) (this=0x87af7c8,
lod=139726960, u=1, v=0) at virtualtex.cpp:129
#6 0x081118bd in LODSphereMesh::renderSection(int, int, int, LODSphereMesh::RenderInfo const&) (this=0x8600260, phi0=0, theta0=0, extent=1024, ri=@0xbfffe420)
at lodspheremesh.cpp:653
#7 0x0811123f in LODSphereMesh::renderPatches(int, int, int, int, LODSphereMesh::RenderInfo const&) (this=0x8600260, phi0=0, theta0=0, extent=1024, level=1, ri=@0xbfffe420)
at lodspheremesh.cpp:566
#8 0x081111e1 in LODSphereMesh::renderPatches(int, int, int, int, LODSphereMesh::RenderInfo const&) (this=0x8600260, phi0=0, theta0=0, extent=2048, level=2, ri=@0xbfffe420)
at lodspheremesh.cpp:576
#9 0x081109bb in LODSphereMesh::render(GLContext const&, unsigned, Frustum const&, float, Texture**, int) (this=0x8600260, context=@0x8572e38, attributes=9,
frustum=@0xbfffe680, pixWidth=359.778625, tex=0xbfffe4e0, nTextures=1)
at lodspheremesh.cpp:367
#10 0x0810febf in LODSphereMesh::render(GLContext const&, unsigned, Frustum const&, float, Texture*, Texture*, Texture*, Texture*) (this=0x83f1, context=@0x83f1,
attributes=33777, frustum=@0x83f1, pixWidth=4.73316582e-41, tex0=0xde1,
tex1=0xbfffdde4, tex2=0x0, tex3=0x0) at lodspheremesh.cpp:166
#11 0x080d05aa in renderSphereDefault (ri=@0x0, frustum=@0xbfffe680, context=@0x0)
at render.cpp:2374
#12 0x080d573a in Renderer::renderObject(Point3<float>, float, double, Quaternion<float>, float, float, Vector3<float>, Color, Renderer::RenderProperties&) (this=0x81ed610,
pos={x = 5344.13867, y = -6201.51367, z = -20972.2227}, distance=22513.3906,
now=2452612.8051646859, cameraOrientation=
{w = 0.978316367, x = 0.150961056, y = 0.106951036, z = -0.093109034},
nearPlaneDistance=7040.8374, farPlaneDistance=4.73316582e-41, sunDirection=
{x = -45744944, y = 959.825928, z = 140176240}, obj=@0xbfffeaf0)
at render.cpp:3552
#13 0x080d6118 in Renderer::renderPlanet(Body&, Point3<float>, Vector3<float>, float, float, double, Quaternion<float>, float, float) (this=0x81ed610, body=@0xbfffe770, pos=
{x = 5344.13867, y = -6201.51367, z = -20972.2227}, sunDirection=
{x = -45744944, y = 959.825928, z = 140176240}, distance=22513.3906,
appMag=4.73316582e-41, now=2452612.8051646859, orientation=
{w = 0.978316367, x = 0.150961056, y = 0.106951036, z = -0.093109034},
nearPlaneDistance=7040.8374, farPlaneDistance=35625.1797) at vecmath.h:322
#14 0x080cc235 in Renderer::render(Observer const&, Universe const&, float, Selection const&) (this=0x81ed610, observer=@0x82e6638, universe=@0x82e5da8,
faintestMagNight=4.73316582e-41, sel=@0xde1) at stl_vector.h:501
#15 0x080dff40 in Simulation::render(Renderer&) (this=0xde1, renderer=@0x83f1)
at simulation.cpp:55
#16 0x08063a2d in CelestiaCore::draw() (this=0x81ed3a0) at celestiacore.cpp:1968
#17 0x40be248e in QGLWidget::glDraw() () from /opt/qt3/lib/libqt-mt.so.3
#18 0x40be1f07 in QGLWidget::paintEvent(QPaintEvent*) ()
from /opt/qt3/lib/libqt-mt.so.3
#19 0x409d3ace in QWidget::event(QEvent*) () from /opt/qt3/lib/libqt-mt.so.3
#20 0x40942a1f in QApplication::internalNotify(QObject*, QEvent*) ()
from /opt/qt3/lib/libqt-mt.so.3
#21 0x4094202b in QApplication::notify(QObject*, QEvent*) ()
from /opt/qt3/lib/libqt-mt.so.3
#22 0x4058f5b9 in KApplication::notify(QObject*, QEvent*) ()
from /opt/kde3/lib/libkdecore.so.4
#23 0x408dea42 in QETWidget::translatePaintEvent(_XEvent const*) ()
from /opt/qt3/lib/libqt-mt.so.3
#24 0x408da6f3 in QApplication::x11ProcessEvent(_XEvent*) ()
from /opt/qt3/lib/libqt-mt.so.3
#25 0x408f0061 in QEventLoop::processEvents(unsigned) ()
from /opt/qt3/lib/libqt-mt.so.3
#26 0x40956246 in QEventLoop::enterLoop() () from /opt/qt3/lib/libqt-mt.so.3
#27 0x409560f8 in QEventLoop::exec() () from /opt/qt3/lib/libqt-mt.so.3
#28 0x40942c61 in QApplication::exec() () from /opt/qt3/lib/libqt-mt.so.3
#29 0x0807df98 in main (argc=33777, argv=0x83f1) at kdemain.cpp:53
#30 0x41185571 in __libc_start_main (main=0x807de10 <main>, argc=1,
ubp_av=0xbffff834, init=0x8058e24 <_init>, fini=0x8121cc0 <_fini>,
rtld_fini=0x4000aa44 <_dl_fini>, stack_end=0xbffff82c)
at ../sysdeps/generic/libc-start.c:129
I tried to debug, and it seems that glx::glCompressedTexImage2DARB contains 0 instead of a valid function pointer, but now I'm lost.
I have a Radeon 9600 graphics card and use ATI's XFree86 drivers (fglrx 3.2.5, XFree 4.2.0, Kernel 2.4.21). I use the libGL that comes with this driver. glxinfo gives
Code: Select all
woho@kristall:~/work/temp/celestia_20030920cvs > glxinfo
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context
client glx vendor string: SGI
client glx version string: 1.2
client glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context,
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_ATI_pixel_format_float,
GLX_ATI_render_texture
GLX extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: Radeon 9600 Pentium 4 (SSE2)
OpenGL version string: 1.3 (X4.2.0-3.2.5)
OpenGL extensions:
GL_ARB_multitexture, GL_EXT_texture_env_add, GL_EXT_compiled_vertex_array,
GL_S3_s3tc, GL_ARB_depth_texture, GL_ARB_fragment_program,
GL_ARB_multisample, GL_ARB_point_parameters, GL_ARB_shadow,
GL_ARB_shadow_ambient, 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_crossbar, GL_ARB_texture_env_dot3,
GL_ARB_texture_mirrored_repeat, GL_ARB_transpose_matrix,
GL_ARB_vertex_blend, GL_ARB_vertex_buffer_object, GL_ARB_vertex_program,
GL_ARB_window_pos, GL_ATI_draw_buffers, GL_ATI_element_array,
GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer,
GL_ATI_separate_stencil, GL_ATI_texture_env_combine3,
GL_ATI_texture_float, GL_ATI_texture_mirror_once,
GL_ATI_vertex_array_object, GL_ATI_vertex_attrib_array_object,
GL_ATI_vertex_streams, GL_ATIX_texture_env_combine3,
GL_ATIX_texture_env_route, GL_ATIX_vertex_shader_output_point_size,
GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_func_separate,
GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_clip_volume_hint,
GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_multi_draw_arrays,
GL_EXT_packed_pixels, GL_EXT_point_parameters, GL_EXT_rescale_normal,
GL_EXT_polygon_offset, GL_EXT_secondary_color,
GL_EXT_separate_specular_color, GL_EXT_stencil_wrap,
GL_EXT_texgen_reflection, GL_EXT_texture3D,
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_lod_bias, GL_EXT_texture_object, GL_EXT_texture_rectangle,
GL_EXT_vertex_array, GL_EXT_vertex_shader, GL_HP_occlusion_test,
GL_NV_texgen_reflection, GL_NV_blend_square, GL_NV_occlusion_query,
GL_SGI_color_matrix, GL_SGIS_texture_edge_clamp,
GL_SGIS_texture_border_clamp, GL_SGIS_texture_lod,
GL_SGIS_generate_mipmap, GL_SGIS_multitexture, GL_SUN_multi_draw_arrays
glu version: 1.3
glu extensions:
GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess
visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
----------------------------------------------------------------------
0x23 24 tc 0 24 0 r y . 8 8 8 8 0 24 8 16 16 16 16 0 0 None
0x24 24 tc 0 24 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 None
0x25 24 tc 0 24 0 r y . 8 8 8 8 0 24 0 16 16 16 16 0 0 None
0x26 24 tc 0 24 0 r . . 8 8 8 8 0 24 0 16 16 16 16 0 0 None
0x27 24 tc 0 24 0 r y . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x28 24 tc 0 24 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x29 24 tc 0 24 0 r y . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x2a 24 tc 0 24 0 r . . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x2b 24 dc 0 24 0 r y . 8 8 8 8 0 24 8 16 16 16 16 0 0 None
0x2c 24 dc 0 24 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 None
0x2d 24 dc 0 24 0 r y . 8 8 8 8 0 24 0 16 16 16 16 0 0 None
0x2e 24 dc 0 24 0 r . . 8 8 8 8 0 24 0 16 16 16 16 0 0 None
0x2f 24 dc 0 24 0 r y . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x30 24 dc 0 24 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x31 24 dc 0 24 0 r y . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x32 24 dc 0 24 0 r . . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
Any clues? Can I provide further info? Thank you for helping.
Wolfgang