PDA

View Full Version : Running Quake 4 in Fedora Core 6


Karunes
21st February 2007, 05:05 PM
So I downloaded the .run file from ID's FTP server.

Then I copied the required files to the required directory.

Things look smooth but I am getting an error where the game will not start. It looks like I am missing some openGL extensions. There are two of them, I will post their names completely when I get home. I'm in my linux course right now.

Both of them start with GL_ARB_ and I believe one of them is GL_ARB_texture_compression.



This time I'll be a little more helpful, like leigh123 suggested.

I'm running an ATI Radeon X850XT, using the Radeon driver.

I have AIGLX working, with both compiz and beryl. I have a native version of Quake III that works, 3d rendering and all, just fine.

The output of glxinfo | grep rendering is:
libGL warning: 3D driver claims to not support visual 0x4b
Direct Rendering: Yes

I also get this message when I initialize beryl-manager and run Quake III, though everything still works. I installed the fglrx on a previous go at FC6, and the error message goes away, but then I can never get Beryl or Quake III to work.

When I get home today, at roughly 5:30 PST, I will post the outputs of my glxinfo and my xorg.conf file. Is there any other information I should post?

Thetargos
22nd February 2007, 06:54 AM
I take it you're running with the fglrx drivers, so you don't have AIGLX, but rather XGL (as the fglrx drivers do not have support for GLX_EXT_texture_from_pixmap). At any rate, have you tried to revet to normal desktop (no effects) and see if that works? That mode is strange, glxinfo should inform what does that mode refers to.

According to my glxinfo (nvidia driver), that mode refers to 24-bit visual depth, 32 buffers (32-bits), 8-bits per color+alpha (32-bit RGBA), apparently 8-bits stencil. The line looks like:

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
----------------------------------------------------------------------
...
0x4b 24 dc 0 32 0 r y . 8 8 8 8 4 24 8 16 16 16 16 0 0 None

Maybe something's messed up in your xorg.conf file?

Karunes
22nd February 2007, 04:32 PM

I am using the Radeon drivers, with AIGLX.

I didn't have much time to work on it last night, I have my English final today.

When I use the FGLRX drivers, I can't get Beryl to work, and I have a hard time disabling Compiz, as the desktop-effects command goes missing. :-P

Thetargos
22nd February 2007, 06:57 PM
Maybe indeed the Radeon driver doesn't have support for that mode, then?

Karunes
23rd February 2007, 02:46 AM
I was just wondering if anybody else had the same problem.

Missing openGL extensions with the Radeon driver.

There's got to be a fix.

Thetargos
23rd February 2007, 03:29 AM
Haven't you messed with any of the GLX and GL libraries by means of other drivers? It is known that installing some drivers will tinker the GL libraries, and that may be the problem. However I've seen the error of any given mode not being supported on other hardware as well, Intel 9xx chips and S3 Savage chips.

Karunes
23rd February 2007, 04:51 AM
Hopefully, this will help. I'll put all my system specs in now.

ATI Radeon X850XT - radeon driver
VIA KT880 Chipset
Athlon XP 2500+ Barton Core

Linux Kernel : 2.6.19-1.2911 (fc6, i686)

Xorg.conf

# Xorg configuration created by system-config-display

Section "ServerLayout"
Identifier "single head configuration"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
EndSection

Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection

Section "Monitor"
Identifier "Monitor0"
ModelName "LCD Panel 1440x900"
### Comment all HorizSync and VertSync values to use DDC:
HorizSync 31.5 - 100.0
VertRefresh 59.0 - 75.0
Option "dpms"
EndSection

Section "Device"
Identifier "Videocard0"
Driver "radeon"
Option "AddARGBGLXVisuals" "True"
Option "DisableGLXRootClipping" "True"
EndSection

Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1440x900" "1400x1050" "1280x1024" "1280x960" "1280x960" "1280x800" "1152x864" "1152x864" "1024x768" "1024x768" "800x600" "800x600" "640x480" "640x480"
EndSubSection
EndSection
#This is what I have added.

Section "DRI"
Group 0
Mode 0666
EndSection

Error Messages when I try to run Quake 4

GL_ARB_texture_non_power_of_two
GL_EXT_texture_compression_s3tc

Are not found.

Thetargos
23rd February 2007, 05:16 AM
The radeon driver indeed lacks the GL_EXT_texture_compression_s3tc, S3TC is a patent encumbered technology and AFAIK it has not been merged into the DRI drivers, even though there are ways to add that to the driver. About the other extension, though... I'm not so sure about that. Cuold you please post all the reported GLX and GL extensions from glxinfo? I'm afraid, if they're not found, there's nothing you can do, but to run the fglrx driver.

Edit
I know it is no justification, but here's what I get (in my nVidia setup) with glxinfo | grep GL_ARB_texture:

glxinfo | grep GL_ARB_texture
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_mirrored_repeat, GL_ARB_texture_rectangle,

There's no GL_ARB_texture_non_power_of_two there... However glxinfo | grep s3tc shows this:

glxinfo | grep s3tc
GL_S3_s3tc, GL_EXT_texture_env_add, GL_EXT_abgr, GL_EXT_bgra,
GL_EXT_stencil_wrap, GL_EXT_texture3D, GL_EXT_texture_compression_s3tc

Karunes
23rd February 2007, 05:42 AM
Now we are getting places.

I think that Non Power of Two isn't too much of a problem.

I will sacrifice Beryl to get quake 4 in linux. I am a little scared to do it, as I couldn't get Quake III to render right with XGL.

[karunes@karunes ~]$ glxinfo
name of display: :0.0
libGL warning: 3D driver claims to not support visual 0x4b
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
GLX_ARB_multisample, GLX_EXT_visual_info, GLX_EXT_visual_rating,
GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_OML_swap_method,
GLX_SGI_make_current_read, GLX_SGIS_multisample, GLX_SGIX_hyperpipe,
GLX_SGIX_swap_barrier, GLX_SGIX_fbconfig, GLX_MESA_copy_sub_buffer
client glx vendor string: SGI
client glx version string: 1.4
client glx extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_allocate_memory,
GLX_MESA_copy_sub_buffer, GLX_MESA_swap_control,
GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_OML_sync_control,
GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap
GLX version: 1.2
GLX extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
GLX_MESA_swap_control, GLX_MESA_swap_frame_usage, GLX_OML_swap_method,
GLX_SGI_video_sync, GLX_SGIS_multisample, GLX_SGIX_fbconfig
OpenGL vendor string: Tungsten Graphics, Inc.
OpenGL renderer string: Mesa DRI R300 20060815 AGP 1x x86/MMX+/3DNow!+/SSE TCL
OpenGL version string: 1.3 Mesa 6.5.1
OpenGL extensions:
GL_ARB_fragment_program, GL_ARB_imaging, GL_ARB_multisample,
GL_ARB_multitexture, 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_MESAX_texture_float, GL_ARB_texture_mirrored_repeat,
GL_ARB_texture_rectangle, GL_ARB_transpose_matrix,
GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_window_pos,
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_clip_volume_hint,
GL_EXT_compiled_vertex_array, GL_EXT_convolution, GL_EXT_copy_texture,
GL_EXT_draw_range_elements, GL_EXT_gpu_program_parameters,
GL_EXT_histogram, GL_EXT_packed_pixels, GL_EXT_polygon_offset,
GL_EXT_rescale_normal, GL_EXT_secondary_color,
GL_EXT_separate_specular_color, GL_EXT_stencil_wrap, GL_EXT_subtexture,
GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_edge_clamp,
GL_EXT_texture_env_add, GL_EXT_texture_env_combine,
GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic,
GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp,
GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_vertex_array,
GL_APPLE_packed_pixels, GL_ATI_blend_equation_separate,
GL_ATI_texture_env_combine3, GL_ATI_texture_mirror_once,
GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat,
GL_INGR_blend_func_separate, GL_MESA_pack_invert, GL_MESA_ycbcr_texture,
GL_MESA_window_pos, GL_NV_blend_square, GL_NV_light_max_exponent,
GL_NV_texture_rectangle, GL_NV_texgen_reflection, GL_NV_vertex_program,
GL_OES_read_format, GL_SGI_color_matrix, GL_SGI_color_table,
GL_SGIS_generate_mipmap, GL_SGIS_texture_border_clamp,
GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod

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 32 0 r y . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x24 24 tc 0 32 0 r y . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x25 24 tc 0 32 0 r y . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow
0x26 24 tc 0 32 0 r y . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x27 24 tc 0 32 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x28 24 tc 0 32 0 r . . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x29 24 tc 0 32 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow
0x2a 24 tc 0 32 0 r . . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x2b 24 dc 0 32 0 r y . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x2c 24 dc 0 32 0 r y . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x2d 24 dc 0 32 0 r y . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow
0x2e 24 dc 0 32 0 r y . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x2f 24 dc 0 32 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x30 24 dc 0 32 0 r . . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x31 24 dc 0 32 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow
0x32 24 dc 0 32 0 r . . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x4b 32 tc 0 32 0 r . . 8 8 8 8 0 0 0 0 0 0 0 0 0 Ncon

There is my glxinfo ouput.

Karunes
23rd February 2007, 05:48 AM
I feel like a jerk. Sorry for the double post. Here is what I get when I go to run Quake 4.

X..GL_ARB_texture_compression not found
signal caught: Segmentation fault
si_code 1

Then it says something like "Trying to exit gracefully"

Thetargos
23rd February 2007, 05:49 AM
Yup! It would seem that you either: Require to patch and build the DRI drivers so they have S3TC (if you still want to use the radeon driver) or you'll have to run with the fglrx driver (install from Livna, just check somewhere like the phoronix forums for xorg.conf settings). The fglrx drivers should give you a nice speed boost too (they're not known for speedyness, but they're faster for 3D than the DRI ones)

Karunes
23rd February 2007, 05:53 AM
I'll get right on that. :-( Goodbye Beryl. Hopefully, hello quake 4!

Thetargos
23rd February 2007, 05:55 AM
I feel like a jerk. Sorry for the double post. Here is what I get when I go to run Quake 4.

X..GL_ARB_texture_compression not found
signal caught: Segmentation fault
si_code 1

Then it says something like "Trying to exit gracefully"
Quake IV requires that extension to be present and usable (i.e to actually do texture compression/decompression), otherwise it crashes.

Another question which may not have anything to do with the game or why it crashes, but may be beneficial for performance. Is your Radeon AGP or PCI-E? Because, if it is AGP, it's running at AGP 1x.

Karunes
23rd February 2007, 07:21 AM
It is AGP. How do I fix that?

Thetargos
23rd February 2007, 08:56 AM
When you run the DRI drivers, you can change the the speed of AGP you are running by adding

Option "AGP" "8"
to the Section "Device", that should make the AGP run at 8x, however to make sure, just check about that particular option in man xorg.conf, I'm pretty sure that's the setting, but checking it up never hurts.