The error occurs because nv10 (the driver used for this card) declares
VBO support (extension GL_ARB_vertex_buffer_object) but only supports
VBOs of int8, int16 and float (not double) types, and the application is
trying to draw data of type double.  Given that the double type is part
of the OpenGL spec, that would appear to be a bug in mesa, not the
application.

The easy fix would be "don't declare VBO support on those cards", but
that would slow down many other applications, and break any that require
this feature.

An alternative would be a software fallback that reads back the VBO data
and draws it as either a client-side array or individual primitives
(which would probably be even slower, but only applications that
actually use doubles would take the penalty), but that might be more
work than is reasonable to do for little benefit: stellarium and other
QtOpenGL applications will lose OpenGL 1 support in the upcoming Qt 5
transition anyway, and flightgear would probably be unusably slow on
such old hardware even if it didn't crash.

As an immediate workaround, you can use software rendering with
LIBGL_ALWAYS_SOFTWARE=1 stellarium
(perhaps the error message should suggest that?), but expect that to be slow.

I will report this upstream.

** Changed in: stellarium (Ubuntu)
       Status: Confirmed => Invalid

** Changed in: flightgear (Ubuntu)
       Status: New => Incomplete

** Changed in: mesa (Ubuntu)
       Status: Incomplete => Confirmed

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1079011

Title:
  stellarium assert failure:  nv10_state_fb.c:50: get_rt_format:
  Assertion `0' failed.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/flightgear/+bug/1079011/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to