Test application on different openGL version

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Test application on different openGL version

Nelu Cristian Tone
Hello,

Is there an easy way to test a JOGL application on different openGL versions?
I want to test it on openGL 1.1, 2.0 and 3.0
Reply | Threaded
Open this post in threaded view
|

Re: Test application on different openGL version

gouessej
Administrator
Hello

Maybe you can use GLProfile to do that.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Test application on different openGL version

Nelu Cristian Tone
There is no any GLProfile for openGL 1.1
Reply | Threaded
Open this post in threaded view
|

Re: Test application on different openGL version

Sven Gothel
Administrator
On 5/17/19 8:22 AM, Nelu Cristian Tone [via jogamp] wrote:
> There is no any GLProfile for openGL 1.1

Correct.

In theory it could be feasible to query one exact GL context
profile from the OpenGL implementation, which is supported
'under the hood'.

Practically this is of no use for proper runtime validation
as the implementation may not reliably differentiate minor version
numbers or otherwise - there is no guarantee.

However, selecting a GL* profile vi GLProfile might be
good enough for source code compatibility verification.
Yes, we start at GL2 here, which includes OpenGL 1.1+,
sorry about that. At some point one needs to make a
compromise regarding complexity.

For real product validation, I would attempt to use either
1) a pass through GL implementation, capable of restricting
the OpenGL capabilities and hence profile

2) using a virtual machine w/ same restrictions

Hope this helps a little

~Sven
Reply | Threaded
Open this post in threaded view
|

Re: Test application on different openGL version

Nelu Cristian Tone
Thank you Sven

How can i restrict functionalities to simulate like profile it's for openGL 1.1?
Reply | Threaded
Open this post in threaded view
|

Re: Test application on different openGL version

Sven Gothel
Administrator
On 5/20/19 1:18 PM, Nelu Cristian Tone [via jogamp] wrote:
> Thank you Sven
>
> How can i restrict functionalities to simulate like profile it's for openGL 1.1?

Use a virtual machine and only install an OpenGL 1.1 capable driver?
Like on Windows w/o any GPU driver probably, i.e. only using the vendor 'host
dll'.
For GNU/Linux, I don't know - might would require to build an old MESA version?

When you have done your research, maybe you can publish your results on our wiki?
Thank you.
Reply | Threaded
Open this post in threaded view
|

Re: Test application on different openGL version

Nelu Cristian Tone
This post was updated on .
I did that earlier, but i thought i can emulate it programatically.
Using virtual machine it takes me quite a lot of time for testing.

On a virtual machine with openGL 1.1 driver i have the following restrictions/problems:
- multisample antialias doesn't work at all
- method readPixels from GLReadBufferUtil doesn't work properly. The texture which is made it looks strange
- can not use GLprofile.GL2;  so i used GLprofile.GL2ES1 profile. If i would use GL2 profile then method glGetIntegerv  from GL2 class, throw an exception


Reply | Threaded
Open this post in threaded view
|

Re: Test application on different openGL version

Sven Gothel
Administrator
On 5/20/19 2:46 PM, Nelu Cristian Tone [via jogamp] wrote:
> I did that earlier, but i thought i can emulate it programatically.
> Using virtual machine it takes me quite a lot of time for testing.
>
> On a virtual machine with openGL 1.1 driver i have the following
> restrictions/problems:
> - multisample antialias doesn't work at all
> - method readPixels from GLReadBufferUtil doesn't work properly. The texture
> which is made it looks strange
> - can not use GLprofile.GL2;  so i used GLprofile.GL2ES1 profile

Yes. So from the JOGL programmatic OpenGL profile compliance,
one would use these GLProfiles to restrict certain codepaths
for said profiles. Like one renderer for GL2ES1 and one for GL2ES2 etc.

As I said initially, product validation would still be required of course.

Utilizing extensions should also be queried accordingly and even JOGL's
GLProfile already assume a certain X.Y profile for completeness.

~Sven


signature.asc (849 bytes) Download Attachment