Graphical issues with Scilab 5.X

Scilab 5.X is doing an advanced use of JOGL (the Java Binding for the OpenGL). For performance reasons, we are using the Java2D OpenGL Pipeline. From a more technical aspect, it is using the internal buffer of the graphic cards called pbuffer. NB: This page is included in Scilab distribution (Since version 5.1) in the help page for usecanvas (Please update it too...)

Workaround

From Scilab, execute the function:

system_setproperty("jogl.gljpanel.nohw","");

Or launch Scilab wih hardware acceleration deactivated:

LIBGL_ALWAYS_SOFTWARE=1 bin/scilab-adv-cli

Issue

The problem of this is caused by a bad support of this feature by the drivers. Some of them are badly (or not at all) supporting this feature.

Free drivers under Linux

As far as we know, there is no free driver handling this feature.

Proprietary drivers under Linux

In the proprietary world, the support of this

NVIDIA

Nvidia provides the best proprietary driver. Scilab's graphics work without any problem with most of NVIDIA drivers.

ATI

From the driver version 8.8, most ATI graphics supports the pbuffer under Linux

Intel

This is the big drawback of using the pbuffer. There is currently no support of pbuffer by any official Intel drivers.

Workaround for Linux

Likely, there is a workaround to tackle this issue. One solution is to use a software accelerated driver. To do it, in /etc/X11/xorg.conf, look for the Section called Device and change the option Driver to mesa.

Section "Device"
        Identifier      "Your Graphic card"
        Driver  "vesa"
[...]
EndSection

Unfortunately, this solution makes Scilab pretty slow.

Situation under Windows

Video cards manufacturers update regularly and pBuffers are managed.

Please download recent drivers at :

Some troubles can be also present on windows 2000 (video drivers are no more updated & no more supported)

Solaris and OpenSolaris

Solaris video drivers supporting hardware OpenGL acceleration will work with x86 and Sparc based system. The state of various drivers are more or less the same as those of the Linux section.

Known issues :

In case software acceleration is required Mesa 7.4 is necessary as previous version will not render graphics correctly or will crash the desktop session. Software acceleration using Mesa 7.4 was found to be extremely stable even compared to hardware acceleration using Nvidia and RadeonHD drivers.

On Solaris 10 and older OpenSolaris release if a graphic window is opened without hardware acceleration your desktop session could crash and, upon X11 restarting, the user will be brought back to the login screen.

Due to an unknown problem right now graphical output may not be correctly rendered when Scilab is build with Sun Studio. See Bug 3915 for details : http://bugzilla.scilab.org/show_bug.cgi?id=3915

Future

Waiting for a working pbuffer is not a solution especially when you are aware of the though of the lead developer of JOGL: The OpenGL community is moving away from pbuffers and toward the frame buffer object extension, which is a more portable and higher-performance solution for offscreen rendering than pbuffers. (Source)

The JOGL team is working to fix this issue. Scilab R&D team is also considering an internal workaround to go round this issue.

References

See also

http://help.scilab.org/usecanvas

public: Graphical issues with Scilab 5.X (last edited 2015-06-02 15:08:59 by atoms.scilab.org@farialima.net)