Enabling GL_COLOR_MATERIAL not working

This topic contains 15 replies, has 5 voices, and was last updated by  Tachikoma 7 years, 7 months ago.

Viewing 15 posts - 1 through 15 (of 16 total)
  • Author
    Posts
  • #29893

    TheDoktor
    Member

    Hi

    I’ve been working using the PVR Emulator in the GLES 1.1 SDK and using the SGX on the Beagleboard. I’ve noticed that glEnable(GL_COLOR_MATERIAL) doesn’t appear to work on the Emulator, however the same code works fine on the SGX. Has anyone else experienced this? The only difference between the 2 versions is the way I setup EGL. Could it be something to do with this or perhaps a bug in the emulator?
    I have the latest version of the SDK downloaded a couple of days ago.

    Cheers,
    TheDoktor

    #33317

    Tachikoma
    Member

    Yep I’m having the same problem. I create a vertex buffer object, with a colour buffer, I setup a light, then use glEnable(GL_COLOR_MATERIAL) just before rendering VBO. All I’m getting is white polygons. If I disable the light, the colour buffer works, but with no light shading of crouse.

    The emulator runs on Windows XP x64, with nVidia drivers.

    #33318

    r2d2Proton
    Member

    Has this been fixed?

    #33319

    Tachikoma
    Member

    Not sure, what build are you using?

    ps. i have actually tried contacting the developers via email, but got no response

    #33320

    r2d2Proton
    Member

    I’m using 2.04.24.0811 for OpenGL ES 1.1 (I did download the last release and I will give it a try later on)

    Also I have had excellent responses (timely and quality) from the IMG group.

    #33321

    jacekc
    Member

    HI,

    I’m very sorry for a late repsonse. We were able to reproduce that issue and this is a bug in PVRVFrame that will be fixed in our next release (internally it was filed as a bug BRN28613).

    Regards,

    #33322

    r2d2Proton
    Member

    Jacek,

    Do you have any idea when the next release will be?

    I installed the OGLES-1.1_WINDOWS_PCEMULATION_2.05.25.0804 version, and the bug is still there.

    And can you tell me why the need for the popup window when I start an application linked with the emulator?

    The PVRRFRAME popup window does not really do anything. It does affect my VS2008 debugger though.

    #33323

    jacekc
    Member

    Hi,

    The issue that you’re are describing was not introduced to the version you have tried. But will be included in a forthcoming release. The next major release will be early next year, but there may be a maintenance release earlier than this.

    As for a popup interface window , you can disable it in many ways.  One way of doing it is calling a special function obtained from pvrvframe libraries. You can do that by putting following code into your own application code:

    void (*PVRVFrameEnableControlWindow)(bool) = (void(*)(bool))eglGetProcAddress(“PVRVFrameEnableControlWindow”);
    if(PVRVFrameEnableControlWindow!=0)
    {
    PVRVFrameEnableControlWindow (true);
    }

    This and other ways of disableing the GUI and description of its funcionality are  fully described in manual of PVRVFrame.

    Regards,

    #33324

    r2d2Proton
    Member

    Jacek,

    I never saw this window in the previous version of the emulator. Additionally when I closed my application, my Visual Studio debugger would stop as expected.

    This version of the emulator does not do that. After my application window disappears, the PVR window remains, and my debugger is still active. This is not normal behavior.

    May I suggest that the PVR window be an option to open from an application – not an option to close. It makes sense to me to have the default as invisible, since it was historically, and from my point of view, expected.

    What is happening with my debugger? Why is the debugger not closing?

    I also noticed the WIRE FRAME mode, which is a nice option. How can I use it?

    Thanks.

    #33325

    jacekc
    Member

    Hi,

    PVRVFrame (this name refers to the GUI + emulator libraries) aims to be something more than just an emulator eg. provide some diagnostics information. And because of that Interface window is integral part of PVRVFrame. As I have written you can disable it in many ways: From code of your application, hide it via general options of GUI (more details in manual). 

    As for strange debugger behaviour, then I would like you to provide us more details. What version of Windows are you using? What Visual studio are you using? We will file BRN afterwards an investigate that issue.

    As for WireFrame options it works in similar way as Desktop OpenGL call glPolygonMode(GL_FRONT_AND_BACK,GL_LINE)  .  After you choose that option from menu you should see that scene’s polygons are rendered without being filled in ( as whole scene consists of wires). 

    Regards,

    Jacek

    #33326

    warmi
    Member

    I think it may be something with his code because in my case I have no problem with the window whatsoever – debugging or not – it simply closes when the main app goes away.

    warmi2009-11-04 15:43:31

    #33327

    r2d2Proton
    Member

    Jacek,

    Okay I got it working. I was processing WM_KILLFOCUS, which was making it so that I could not access the PVRFrame window menus, etc.

    I also added the WM_CLOSE and removed my WM_DESTROY, now it exists as expected.

    BTW – glPolygonMode is not defined in OpenGL ES 1.1.

    #33328

    jacekc
    Member

    Good to read that You solved the mentioned problem. As for glPolygonMode , PVRVFRame is implemented based on host (desktop) opengl , which means that it internaly use calls to OpenGL (not opengl ES). However ES standard of course does not define mentioned function.

    #33329

    Tachikoma
    Member

    *bump*

    Hello, any developments on the GL_COLOR_MATERIAL issue?

    #33330

    warmi
    Member

    If I remember correctly their next SDK release is scheduled for March so I presume it will contain many bug fixes including the GL_COLOR_MATERIAL bug.

Viewing 15 posts - 1 through 15 (of 16 total)
You must be logged in to reply to this topic.