Imagination PowerVR SDK Blog

Antialiasing on SDK 3.2


#1

Is antialiasing supposed to work on Windows 7 host with some NVidia GTX 460?

Can’t get it to kick in :frowning:


#2

Antialiasing should work with most cards. In your application you just need to select an appropriate EGL config by setting EGL_SAMPLE_BUFFERS and EGL_SAMPLES.



If you are using PVRShell or running the examples provided with the SDK, this is done automatically, but you need to pass an additional command line option to specify the number of samples to use.



For example, for 4 samples:

OGLES2FilmTV.exe -aasamples=4


#3

Ok it works if you request an antialiased config the first time you initialize EGL.

It won’t work if you init EGL first without antialias and during the life time of you application reinit EGL with an antialiased config. The proper config is returned by eglChooseConfig but antialias won’t kick in.



I observed that behaviour on a Windows 7 machine.


#4

The opposite is also true. If you init first with antialias then you can’t disable it. Maybe I need to delete my HWND on top of reinitializing EGL.


#5

Hi Slion, sorry for the delay. I’m going to see if I can reproduce this issue here. It sounds like you have found a bug in the emulator.


#6

Hi Slion,



I’ve been investigating and it looks like you will need to recreate your window each time you change the framebuffer configuration. Sadly it’s not possible to set the pixel format of a GDI window more than once so an internal error will occur inside eglCreateWindowSurface if you pass in a HWND which you’ve already used. I’ll update the emulator to report an appropriate EGL error in this case.



Hope this helps clear things up a bit!


#7

If I recall well the MALI emulator somehow managed to get this working.