Mesa3d installing for Windows 10

Hello,

I don’t understand the installing guide from Mesa 3d (Homepage from Mesa 3d)
I have already downloaded Mesa 13.02, Python 2.7.12 and SCons 2.5.1.

Thanks for request !

Lam

Your best bet for help building/installing on Windows is probably the Mesa3D mesa-users mailing list:

You might even find someone that will share some precompiled binaries so you can just skip building and go straight to using Mesa3D. However, I see that they’re recommending you try here first :slight_smile:

Which part are you having trouble with?:

I have also this problem.

I think he don’t understand like me what they me with that installing guide:

To build Mesa with SCons on Linux or Windows do

scons

The build output will be placed in build/platform-machine-debug/…, where platform is for example linux or windows, machine is x86 or x86_64, optionally followed by -debug for debug builds.

To build Mesa with SCons for Windows on Linux using the MinGW crosscompiler toolchain do

scons platform=windows toolchain=crossmingw machine=x86 libgl-gdi
This will create:

build/windows-x86-debug/gallium/targets/libgl-gdi/opengl32.dll — Mesa + Gallium + softpipe (or llvmpipe), binary compatible with Windows’s opengl32.dll
Put them all in the same directory to test them.

Yes, Cola77 ist right.
I don’t understand, what they mean about that.

The best would be, if you let me download a opengl32.dll file with full OpenGl 3.3 support.
That is the thing I need for my Windows 10 PC.
–> I don’t want to buy a new graphic card.

Thanks !

[QUOTE=Lam777;1285481]The best would be, if you let me download a opengl32.dll file with full OpenGl 3.3 support.
That is the thing I need for my Windows 10 PC.
–> I don’t want to buy a new graphic card.

Thanks ![/QUOTE]

OpenGL doesn’t work that way. OpenGL is not software.

If you want hardware accelerated graphics then you must use the driver for your graphics card. If the driver for your graphics card does not support a particular GL version then you cannot have it hardware accelerated. This isn’t about letting you do it or preventing you from doing it. It just does not work that way.

Mesa is a software implementation. It is not a good alternative if you want performance. You will be disappointed.

I need Mesa for a programm which need OpenGl 3.3.
So I will be happy with Mesa although it’s not the best support.

Thanks for request !

[QUOTE=Lam777;1285538]I need Mesa for a programm which need OpenGl 3.3.
So I will be happy with Mesa although it’s not the best support.[/QUOTE]

Your best bet for that is probably the Mesa3D mesa-users mailing list.

Thanks, I have already do it now.

But it would the best way for me anyway, if somebody had a guide for me.

A better guide to build mesa was written by some folks at QT. They posted it on their Wiki.
I took that guide and automated the process. I went so far that I created a complete installer.
It installs mesa3d system-wide and also an utility for local deployments as certain applications may be confused.

Thank you very much !

But I have a question:

Do you have a way that your build can support OpenGL 3.3 fully (shading language 3.3) ?

That would be very nice :slight_smile:

If you want Mesa3D source or binaries, you need to get that from the Mesa3D web site or request it on the Mesa3D mailing list.

For information on installing OpenGL for various GPU vendors, see: Getting Started in the OpenGL wiki.

I don’t understand what they are meaning here (for OpenGl 4.5.).

OpenGL 4.5 is only available if requested at context creation because compatibility contexts are not supported.

https://www.mesa3d.org/relnotes/17.0.2.html

It sounds like only an OpenGL 4.5 Core Profile context is supported, not an OpenGL 4.5 Compatibility Context.

You can only get a core context by requesting one when you create the context. For details, see:

What programm should I use ?

Thank you very much !

But I have a question:

Do you have a way that your build can support OpenGL 3.3 fully (shading language 3.3) ?

That would be very nice :

What programm should I use ?

No program. You have to use an environment variable. See documentation.
The one of interest is MESA_GL_VERSION_OVERRIDE. The documentation is unfortunately incomplete as it doesn’t state you can request a compatibility context with CONTEXTCOMPAT. Ex. 3.3COMPAT for OpenGL 3.3. Putting something like this in a batch file that also launches your game/program you want to use Mesa with should do the trick:

set MESA_GL_VERSION_OVERRIDE=3.3COMPAT
filename.exe

The documentation only mentions core and core+forward compatible contexts. These are unlikely to be used by Windows applications because all Windows graphics drivers that support OpenGL 3.1 and up implement GL_ARB_compatibility leading to default on compatibility contexts. Most exceptions are cross-platform applications that support at least Windows and a form of Unix (Linux, Mac, etc). These have to request core contexts for cross-platform compatibility to work, because on Unix things are completely different. Contexts have to be requested explicitly by programs and Mesa demands the same thing and as explained above is not something to see often on Windows. That’s why we need that variable set to override Mesa default behavior with what’s the default on Windows.

And what should I set ? I have used your build.

Thanks !

(Sorry, I don’t know much.)

Wrote a few examples. I’ll come with a complete guide soon.
Look here: https://github.com/pal1000/mesa-dist-win/tree/master/glcontextsamples

[QUOTE=pal1000;1287030]Wrote a few examples. I’ll come with a complete guide soon.
Look here: https://github.com/pal1000/mesa-dist-win/tree/master/glcontextsamples[/QUOTE]

Wow, that really helped.
Is the complete guide still coming?

It is already posted here since May 26, last updated May 29: