Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
6c95e75f
Commit
6c95e75f
authored
Jan 27, 2004
by
Dimitrie O. Paun
Committed by
Alexandre Julliard
Jan 27, 2004
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Remove obsolete section about thread-safety.
Cleanup section on configuration, merged the remaining bit into the "Known problems" section. Miscellaneous cleanups and simplifications.
parent
4fae1e8f
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
20 additions
and
109 deletions
+20
-109
opengl.sgml
documentation/opengl.sgml
+20
-109
No files found.
documentation/opengl.sgml
View file @
6c95e75f
...
...
@@ -66,42 +66,12 @@
</sect2>
<sect2>
<title>OpenGL library thread-safety</title>
<para>
After that, the script checks if the OpenGL library relies
or not on the pthread library to provide thread safety (most
'modern' OpenGL libraries do).
</para>
<para>
If the OpenGL library explicitly links in libpthread (you
can check it with a <command>ldd libGL.so</command>), you
need to force OpenGL support by starting
<command>configure</command> with the
<parameter>--enable-opengl</parameter> flag.
</para>
<para>
The reason to this is that Wine contains some hacks done by
Ove to cohabit with pthread that are known to work well in
most of the cases (glibc 2.1.x). On the other hand, we never
got Wine to work with glibc 2.0.6. Thus, I deemed preferable
to play it safe : by default, I suppose that the hack won't
work and that it's the user's responsibility to enable it.
</para>
<para>
Anyway, it should be pretty safe to build with
<parameter>--enable-opengl</parameter>.
</para>
</sect2>
<sect2>
<title>OpenGL library itself</title>
<para>
To check for the presence of 'libGL' on the system, the
script checks if it defines the
<function>glXCreateContext</function> function. There should
be no problem here.
<function>glXCreateContext</function> function.
</para>
</sect2>
...
...
@@ -114,46 +84,9 @@
function. Your OpenGL library needs to have this function
defined for Wine to be able to support OpenGL.
</para>
<para>
If your library does not provide it, you are out of luck.
</para>
<note>
<para>
this is not completely true as one could rewrite a
<function>glXGetProcAddressARB</function> replacement
using <function>dlopen</function> and friends, but well,
telling people to upgrade is easier :-).
</para>
</note>
</sect2>
</sect1>
<sect1 id="opengl-configure">
<title>How to configure</title>
<para>
Configuration is quite easy : once OpenGL support has been
built in Wine, this internal OpenGL driver will be used each
time an application tries to load
<filename>opengl32.dll</filename>.
</para>
<para>
Due to restrictions (that do not exist in Windows) on OpenGL
contexts, if you want to prevent the screen to flicker when
using OpenGL applications (all games are using double-buffered
contexts), you need to set the following option in your
<filename>~/.wine/config</filename> file
in the [x11drv] section :
</para>
<programlisting>
DesktopDoubleBuffered = Y
</programlisting>
<para>
and to run Wine with the <parameter>--desktop</parameter>
option.
</para>
</sect1>
<sect1 id="opengl-works">
<title>How it all works</title>
...
...
@@ -203,7 +136,7 @@ DesktopDoubleBuffered = Y
choosing if one wants a depth / alpha buffer, the size
of these buffers, ...) and to do the 'page flipping' in
double buffer mode. This is implemented in
<filename>
graphic
s/x11drv/opengl.c</filename> (all these
<filename>
dll
s/x11drv/opengl.c</filename> (all these
functions are part of Wine's graphic driver function
pointer table and thus could be reimplemented if ever Wine
works on another Windowing system than X).
...
...
@@ -314,48 +247,27 @@ DesktopDoubleBuffered = Y
</sect1>
<sect1 id="opengl-problems">
<title>Known problems - shortcomings</title>
<sect2>
<title>Missing GLU32.DLL</title>
<para>
GLU is a library that is layered upon OpenGL. There is a
100% correspondence between the
<filename>libGLU.so</filename> that is used on Linux and
<filename>GLU32.DLL</filename>.
</para>
<para>
As for the moment, I did not create a set of thunks to support this
library natively in Wine (it would easy to do, but I am waiting for
a better solution than adding another autogenerated thunk file), you
can always download anywhere on the net (it's free) a
<filename>GLU32.DLL</filename> file (by browsing, for example,
<ulink url="http://www.dll-files.com/dllindex/index.shtml">
http://www.dll-files.com/dllindex/index.shtml</ulink>).
</para>
</sect2>
<sect2>
<title>OpenGL not detected at configure time</title>
<para>
See section (I) for a detailed explanation of the
<filename>configure</filename> requirements.
</para>
</sect2>
<title>Known problems</title>
<sect2>
<title>When running an OpenGL application, the screen flickers</title>
<para>
See section (II) for how to create the context
double-buffered and thus preventing this flicker effect.
Due to restrictions (that do not exist in Windows) on OpenGL
contexts, if you want to prevent the screen to flicker when
using OpenGL applications (all games are using double-buffered
contexts), you need to set the following option in your
<filename>~/.wine/config</filename> file
in the <literal>[x11drv]</literal> section:
<programlisting>
DesktopDoubleBuffered = Y
</programlisting>
and to run Wine in desktop mode.
</para>
</sect2>
<sect2>
<title>
Wine gives me the following error message :
</title>
<title>
Unknown extension error message:
</title>
<screen>
Extension defined in the OpenGL library but NOT in opengl_ext.c...
...
...
@@ -370,9 +282,7 @@ Please report (lionel.ulmer@free.fr) !
was NOT found in Wine's extension registry.
</para>
<para>
This can come from two causes :
</para>
This can come from two causes:
<orderedlist>
<listitem>
<para>
...
...
@@ -393,11 +303,11 @@ Please report (lionel.ulmer@free.fr) !
</para>
</listitem>
</orderedlist>
</para>
<para>
If you have this, run with <parameter>--debugmsg
+opengl</parameter> and send me
<email>lionel.ulmer@free.fr</email> the TRACE.
If you have this, run with <parameter>--debugmsg +opengl</parameter>
and send me <email>lionel.ulmer@free.fr</email> the TRACE.
</para>
</sect2>
...
...
@@ -419,7 +329,8 @@ Please report (lionel.ulmer@free.fr) !
create a dummy <filename>.c</filename> file :
</para>
<programlisting>
int main(void) {
int main(void)
{
return 0;
}
</programlisting>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment