[Solved] Slow Oolite in Ubuntu

For discussion of ports to POSIX based systems, especially using GNUStep.

Moderators: winston, another_commander, Getafix

Post Reply
adeypoop
Poor
Poor
Posts: 4
Joined: Tue Oct 27, 2009 12:23 am

[Solved] Slow Oolite in Ubuntu

Post by adeypoop »

My problem is Oolite (version 1.73.4) running slow in Ubuntu (Hardy Heron). I am finding the framerate to be so low that it is almost unplayable. (framerate drops to 3 or 4 FPS when there is a planet looming in front and ships and things nearby).

I have tried reducing the screen resolution to the miniumum, setting reduced detail and switching off detailed planets but those things didn't seem to make enough of a difference to make the game really playable.

I guess I'm wondering if I'd get better performance if I upgrade Ubuntu to Jaunty ? Are there better graphics drivers in the latest kernels? Or should I buy a graphics card and if so perhaps you can recommend one ?Or is there something else I can try or troubleshoot ?

My setup is as follows: I am using Hardy Heron. My computer is a dual processor pentium 4 with 2G of RAM. There is no graphics/video card only onboard intel graphics. As far as I can tell the 3D graphics work fine for most things though, I am able to use compiz desktop effects without any problem, and games such as Assault Cube work really well with good framerates.

thanks in advance for any help Oolite is an excellent game
Y A J
Average
Average
Posts: 15
Joined: Fri Oct 02, 2009 4:10 pm
Location: Laenin, Galaxy 1

Re: Slow Oolite in Ubuntu

Post by Y A J »

adeypoop wrote:
There is no graphics/video card only onboard intel graphics.
Hi, Adeypoop!

Could you please describe exactly which Intel graphics chipset you have? Either the output of "glxinfo", or the Oolite log (look in ~/.Oolite/Logs/Latest.log, and search for a few lines around "[rendering.opengl.version]") should be sufficient. Some Intel chipsets work just fine with Oolite (such as the G965, which I have), but others do not implement vertex shaders in hardware and so will almost certainly require shaders to be turned off to achieve adequate performance. Unfortunately Intel's naming scheme is horribly confusing (they sometimes use G965, X3000 or Broadwater to mean more or less the same thing).

The Mesa version will also matter -- it appears that Hardy Heron uses Mesa 7.0.3, which unfortunately is a tiny bit too old for GLSL support if you do have a G965 (GLSL was added shortly afterwards, in 7.0.4). But that will be answered by glxinfo or the logs, too.

In any case, welcome to Oolite and the forum... hopefully the game will work fine on your machine, even if it takes a bit of software tweaking and upgrading!

- Yet Another Jameson
adeypoop
Poor
Poor
Posts: 4
Joined: Tue Oct 27, 2009 12:23 am

Some details as requested

Post by adeypoop »

Hi YAJ thanks for your response :) The option for shaders is disabled for me so I can't try it with those enabled even if I wanted to.

I've no idea what my chipset is but after a bit of googling came up with these details about my chipset from lshw, hope this is the correct info.
description: VGA compatible controller
product: 82915G/GV/910GL Integrated Graphics Controller
vendor: Intel Corporation
Here is an extract from the log file.
[display.mode.list.native]: X11 native resolution detected: 1280 x 1024
[rendering.opengl.version]: OpenGL renderer version: 1.3.0 ("1.3 Mesa 7.0.3-rc2")
Vendor: Tungsten Graphics, Inc
Renderer: Mesa DRI Intel(R) 915G 20061017 x86/MMX/SSE2
[rendering.opengl.extensions]: OpenGL extensions (81):

In case it helps here is output from glxinfo too
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_ARB_multisample, GLX_EXT_import_context, GLX_EXT_texture_from_pixmap,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
GLX_OML_swap_method, GLX_SGI_make_current_read, GLX_SGI_swap_control,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_visual_select_group
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_allocate_memory,
GLX_MESA_copy_sub_buffer, GLX_MESA_swap_control,
GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_SGI_make_current_read,
GLX_SGI_swap_control, GLX_SGI_video_sync, GLX_SGIS_multisample,
GLX_SGIX_fbconfig, GLX_SGIX_visual_select_group
OpenGL vendor string: Tungsten Graphics, Inc
OpenGL renderer string: Mesa DRI Intel(R) 915G 20061017 x86/MMX/SSE2
OpenGL version string: 1.3 Mesa 7.0.3-rc2
OpenGL extensions:
GL_ARB_depth_texture, GL_ARB_fragment_program, GL_ARB_imaging,
GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_point_parameters,
GL_ARB_shadow, 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_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_cull_vertex, GL_EXT_compiled_vertex_array, GL_EXT_convolution,
GL_EXT_copy_texture, GL_EXT_draw_range_elements, GL_EXT_fog_coord,
GL_EXT_histogram, GL_EXT_multi_draw_arrays, GL_EXT_packed_pixels,
GL_EXT_point_parameters, GL_EXT_polygon_offset, GL_EXT_rescale_normal,
GL_EXT_secondary_color, GL_EXT_separate_specular_color,
GL_EXT_shadow_funcs, 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_object, GL_EXT_texture_rectangle,
GL_EXT_vertex_array, GL_3DFX_texture_compression_FXT1,
GL_APPLE_client_storage, GL_APPLE_packed_pixels,
GL_ATI_blend_equation_separate, 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_NV_vertex_program1_1,
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, GL_SGIX_depth_texture,
GL_SUN_multi_draw_arrays

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 0 0 0 0 0 0 0 0 None
0x24 24 tc 0 32 0 r . . 8 8 8 8 0 0 0 0 0 0 0 0 0 None
0x25 24 tc 0 32 0 r y . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x26 24 tc 0 32 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x27 24 tc 0 32 0 r y . 8 8 8 8 0 0 0 16 16 16 16 0 0 Slow
0x28 24 tc 0 32 0 r . . 8 8 8 8 0 0 0 16 16 16 16 0 0 Slow
0x29 24 tc 0 32 0 r y . 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 8 16 16 16 16 0 0 Slow
0x2b 24 dc 0 32 0 r y . 8 8 8 8 0 0 0 0 0 0 0 0 0 None
0x2c 24 dc 0 32 0 r . . 8 8 8 8 0 0 0 0 0 0 0 0 0 None
0x2d 24 dc 0 32 0 r y . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x2e 24 dc 0 32 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x2f 24 dc 0 32 0 r y . 8 8 8 8 0 0 0 16 16 16 16 0 0 Slow
0x30 24 dc 0 32 0 r . . 8 8 8 8 0 0 0 16 16 16 16 0 0 Slow
0x31 24 dc 0 32 0 r y . 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 8 16 16 16 16 0 0 Slow
0x5a 32 tc 0 32 0 r . . 8 8 8 8 0 0 0 0 0 0 0 0 0 Ncon
I'm thinking of waiting for the next Ubuntu (Karmic) to come out and then upgrade to that, do you think that might make a difference? I'm not against the idea of a video card either, will see how it spans out.

cheers
User avatar
DaddyHoggy
Intergalactic Spam Assassin
Intergalactic Spam Assassin
Posts: 8515
Joined: Tue Dec 05, 2006 9:43 pm
Location: Newbury, UK
Contact:

Post by DaddyHoggy »

This is of no consolation at the moment but I use an older version of Ubuntu (Gutsy Gibbon) on an older machine (Athlon XP 2800+) similar memory (2.5GB DDR) but with a (possibly) better gfx card (128MB GF6600GT) and nvidia restricted drivers - my frame rate is at 30-50fps depending on what's on the screen. (1024x768).

It would seem that your card claims to support OpenGL1.3 and Oolite works in 1.2 upwards so it is odd that you claim not to have shader option which does still imply that this is a driver issue.

I'm sure one of the devs will be along at some point to help.

Oh, and welcome to the Friendliest board this side of Riedquat(tm)
Selezen wrote:
Apparently I was having a DaddyHoggy moment.
Oolite Life is now revealed here
User avatar
_ds_
Deadly
Deadly
Posts: 180
Joined: Thu Jan 22, 2009 5:34 pm
Location: In a cloaked ship behind you

Re: Some details as requested

Post by _ds_ »

adeypoop wrote:
[…]
OpenGL vendor string: Tungsten Graphics, Inc
OpenGL renderer string: Mesa DRI Intel(R) 915G 20061017 x86/MMX/SSE2
OpenGL version string: 1.3 Mesa 7.0.3-rc2
[…]
I'm thinking of waiting for the next Ubuntu (Karmic) to come out and then upgrade to that, do you think that might make a difference? I'm not against the idea of a video card either, will see how it spans out.
You definitely need to upgrade libgl1-mesa-dri and libgl1-mesa-glx. (These links lead to packages in intrepid; I see no difficulty in installing them, since their dependencies appear to be fully satisfiable from packages in hardy and which you'll have already installed anyway.)

Download both packages then:

Code: Select all

sudo dpkg -i libgl1-mesa-*.deb
Upgrading your whole installation would work too, of course…
http://tartarus.org/~ds/oolite/patches, Buzzer OXP etc.
Y A J
Average
Average
Posts: 15
Joined: Fri Oct 02, 2009 4:10 pm
Location: Laenin, Galaxy 1

Re: Some details as requested

Post by Y A J »

adeypoop wrote:
Renderer: Mesa DRI Intel(R) 915G 20061017 x86/MMX/SSE2
Ah, OK -- that is a 915G chipset (also known as 82915G, GMA 900, or Grantsdale, or whatever other name Intel wants to make up this week). I'm afraid I can't test on similar hardware myself, so I can't really tell what will help, but perhaps another reader might have gotten the same device to work.

The 915G cannot implement the Oolite shaders in hardware (it uses software vertex processing, and while it does have a programmable hardware fragment processor, it lacks features like conditional branch instructions). So that is why the shader option is disabled. I would have guessed that it should give adequate frame rates otherwise, though.
adeypoop wrote:
I'm thinking of waiting for the next Ubuntu (Karmic) to come out and then upgrade to that, do you think that might make a difference? I'm not against the idea of a video card either, will see how it spans out.
It's certainly possible that the OS upgrade might help (there are a few new features and bug fixes affecting the 915G between Mesa 7.0.3 and the current 7.6, so maybe one of those might be relevant). And adding a video card is very likely to fix things, if it comes to that.

I think _ds_'s suggestion of upgrading Mesa right now is a very good one -- it's a relatively fast procedure, it's unlikely to hurt, and who knows, it just might fix everything...

Good luck,
- Yet Another Jameson
adeypoop
Poor
Poor
Posts: 4
Joined: Tue Oct 27, 2009 12:23 am

fast oolite

Post by adeypoop »

Hi I tried the upgrade of libgl-mesa-dri and libgl1-mesa-glx (installing the Intrepid ones over Hardy) and I can now run Oolite at full resolution, with detailed graphics on and even with some OXP expansion packs installed :D

Great stuff! Maybe I don't need a new graphics card afterall? There is still no option for shaders though, the option is disabled. So I may consider a cheap graphics card anyway.

one wierd thing though I can no longer get into Gnome. I assume it is something to do with my compiz settings? When I login I get confronted with a plain whiteish screen and a cursor. I can login to XCFE no problem (which doesnt' have any fancy desktop effects enabled).

Anyway I'm not too worried about that thing with Gnome, I'll probably be upgrading to Karmic Koala soon which I imagine will fix these issues.

Thanks to all the posters for the help, was much appreciated
User avatar
_ds_
Deadly
Deadly
Posts: 180
Joined: Thu Jan 22, 2009 5:34 pm
Location: In a cloaked ship behind you

Re: fast oolite

Post by _ds_ »

adeypoop wrote:
[…] There is still no option for shaders though, the option is disabled. So I may consider a cheap graphics card anyway. […]
You won't get shaders with anything Intel older than 965. For ATI and nVidia (when using xserver-xorg-video-radeon/-nouveau), there's no support currently in Mesa (but it looks like that will change when everything's switched over to Gallium; it doesn't seem to be sufficiently ready yet, though).
http://tartarus.org/~ds/oolite/patches, Buzzer OXP etc.
adeypoop
Poor
Poor
Posts: 4
Joined: Tue Oct 27, 2009 12:23 am

Post by adeypoop »

The big thing for me was the framerate which is now showing a HUGE improvement. Cheers for the suggestion _ds_

Think i can live without the shader option for now. I wasn't really as bothered about that. Just wanted to be able to play the game at a decent speed. Its cool that I now can.

Not sure what switching over to Gallium means lol, would that influence the card I could choose? As far as video cards go, I'm stuck with PCI (not PCI Express) as thats all my motherboard will support. was thinking maybe the gforce fx5500 or something.. Althouth that doesn't seem so urgent now that I've got the Intel graphics working much better.
User avatar
_ds_
Deadly
Deadly
Posts: 180
Joined: Thu Jan 22, 2009 5:34 pm
Location: In a cloaked ship behind you

Post by _ds_ »

adeypoop wrote:
Not sure what switching over to Gallium means lol, would that influence the card I could choose?
It shouldn't. (It's internal to Mesa, and is intended to make writing hw-specific drivers and support for various features of said hw easier.)
http://tartarus.org/~ds/oolite/patches, Buzzer OXP etc.
User avatar
DaddyHoggy
Intergalactic Spam Assassin
Intergalactic Spam Assassin
Posts: 8515
Joined: Tue Dec 05, 2006 9:43 pm
Location: Newbury, UK
Contact:

Post by DaddyHoggy »

adeypoop wrote:
The big thing for me was the framerate which is now showing a HUGE improvement. Cheers for the suggestion _ds_

Think i can live without the shader option for now. I wasn't really as bothered about that. Just wanted to be able to play the game at a decent speed. Its cool that I now can.

Not sure what switching over to Gallium means lol, would that influence the card I could choose? As far as video cards go, I'm stuck with PCI (not PCI Express) as thats all my motherboard will support. was thinking maybe the gforce fx5500 or something.. Althouth that doesn't seem so urgent now that I've got the Intel graphics working much better.
We're looking at getting these for our servers (like you no AGP or PIC-E)

http://www.ebuyer.com/product/139026
Selezen wrote:
Apparently I was having a DaddyHoggy moment.
Oolite Life is now revealed here
User avatar
JensAyton
Grand Admiral Emeritus
Grand Admiral Emeritus
Posts: 6657
Joined: Sat Apr 02, 2005 2:43 pm
Location: Sweden
Contact:

Re: Some details as requested

Post by JensAyton »

Y A J wrote:
The 915G cannot implement the Oolite shaders in hardware (it uses software vertex processing, and while it does have a programmable hardware fragment processor, it lacks features like conditional branch instructions). So that is why the shader option is disabled. I would have guessed that it should give adequate frame rates otherwise, though.
Not having hardware vertex processing or branching isn’t inherently an issue (Oolite works fine on a GMA950 under Mac OS X, with the same limitations). Not having GL_ARB_shading_language_100, GL_ARB_fragment_shader, GL_ARB_vertex_shader and GL_ARB_shader_objects in the extensions list is an issue, though. :-)
Post Reply