Author Topic: [Fixed] OpenGL 4.0 - Tessellation v1 - No text/logos in viewport.  (Read 1001 times)

0 Members and 1 Guest are viewing this topic.

Dorian

  • Newbie
  • *
  • Posts: 6
    • View Profile
Hi,

Issue is visible on Intel Gfx, since GPU Caps Viewer 1.39.
It used to work up to 1.38.2.1, and there is no issue on NVidia Gfx.
It happens both on old drivers and new.

To reproduce it:
1. Launch GPU Caps Viewer 1.39 or 1.40 on Intel.
2. Open 3D demos
3. From GeeXLab demos choose "OpenGL - Tessellation v1" and click start.
Result: Torus is shown correctly, but no logos and text is rendered.

It looks like demo issue. I captured apitrace on NVidia and rendered it correctly on Intel.

Looking at scripts, I noticed an error in file:
"GPU_Caps_Viewer_1.40.0.0\GPU_Caps_Viewer\gxldemos\libs\lua\framework_v1\kx_gl.lua"

It is:
Code: [Select]
  local vs = ""
  local ps = ""
  if (gh_renderer.is_opengl_es() == 1) then
    vs = vs_gles2
    ps = ps_gles2
  else
    if (gh_renderer.get_api_version_major() < 3) then
      vs = vs_gl2
      ps = ps_gl2
    else
      if (gh_renderer.get_api_version_major() == 3) then
      if (gh_renderer.get_api_version_minor() < 2) then
        vs = vs_gl30
        ps = ps_gl30
      else
        vs = vs_gl32
        ps = ps_gl32
      end
      end
      if (gh_renderer.get_api_version_minor() > 3) then
        vs = vs_gl32
        ps = ps_gl32
      end
      // Dorian note: What about 4.0, 4.1, 4.2, 4.3 ??
    end
  end
I think it should be simpler:
Code: [Select]
local vs = ""
  local ps = ""
  if (gh_renderer.is_opengl_es() == 1) then
    vs = vs_gles2
    ps = ps_gles2
  else
    if (gh_renderer.get_api_version_major() < 3) then
      vs = vs_gl2
      ps = ps_gl2
    else
      if (gh_renderer.get_api_version_major() == 3 and
        gh_renderer.get_api_version_minor() < 2) then
        vs = vs_gl30
        ps = ps_gl30
      else
        vs = vs_gl32
        ps = ps_gl32
      end
    end
  end

This enables text.
Searching in apitrace I see that wglCreateContextAttribsARB is called with context 4.0.
Why it works on NVidia? I guess you get context 4.6 on NVidia when you request for 4.0.

It also shows another issue of OpenGL logo rotated and centered in viewport - I haven't looked into it yet.
« Last Edit: January 05, 2019, 12:01:17 AM by Dorian »


JeGX

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1867
    • View Profile
    • Geeks3D.com
Re: OpenGL 4.0 - Tessellation v1 - No text/logos in viewport.
« Reply #1 on: December 24, 2018, 03:23:05 PM »
Thanks Dorian for the feedback.
I will look at the bugs and update the demo.

JeGX

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1867
    • View Profile
    • Geeks3D.com
Re: OpenGL 4.0 - Tessellation v1 - No text/logos in viewport.
« Reply #2 on: December 29, 2018, 10:54:06 PM »
The bug is fixed in the new GPU Caps Viewer 1.41.0 (I should release it very shortly):

GPU Caps Viewer - OpenGL tessellation demo - Intel GPU

Thanks once again for your feedback!

Dorian

  • Newbie
  • *
  • Posts: 6
    • View Profile
Re: OpenGL 4.0 - Tessellation v1 - No text/logos in viewport.
« Reply #3 on: January 05, 2019, 12:00:45 AM »
I confirm it's fixed in 1.41.0.

Thanks! :)