Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem using Gl.Text.To_Texture #142

Open
rogermc2 opened this issue Jun 29, 2020 · 5 comments
Open

Problem using Gl.Text.To_Texture #142

rogermc2 opened this issue Jun 29, 2020 · 5 comments

Comments

@rogermc2
Copy link
Contributor

rogermc2 commented Jun 29, 2020

I have been trying to use Gl.Text.To_Texture but when I run my program the texture displays on the first iteration of the main loop only.
I have been unable to figure out why this happens.

@flyx
Copy link
Owner

flyx commented Jun 29, 2020

Can you provide a complete working example including the main loop so that I can build and execute it?

@rogermc2
Copy link
Contributor Author

rogermc2 commented Jun 29, 2020

I've just realized that the common that I used for the example (now deleted) is a local version that may have something to do with the problem, so you might want to delay any further investigation until I've checked against the current OpenGLAda-examples version which I will do tomorrow.
Apologies for any inconvenience.

@rogermc2
Copy link
Contributor Author

rogermc2 commented Jun 30, 2020

Using the debugger on To_Texture, I get three error messages:

  1. fb = <error reading variable fb (No definition of "fb__XRP_gl__objects__framebuffer__XE" in current context.)>
  2. tx = <error reading variable tx (No definition of "tx__XRP_gl__objects__textures_XE" in current context.)>
  3. va = <error reading variable va (No definition of "va__XRP_gl__objects__vertex_arrays_XE" in current context.)>

This occurs on all iterations including the first.
As these are renames, this seems to be a debugger bug?

Other than that, I can see no other problems given my limited debugging experience at this level.

@rogermc2
Copy link
Contributor Author

rogermc2 commented Jun 30, 2020

This latest version, with most unneccessary code removed and built in the OpenGLAda-examples environment, produces the same result.
I have included a delay in the main loop to emphasise that text is only displayed on the first iteration of the loop.

text_render_test.zip

@flyx
Copy link
Owner

flyx commented May 8, 2021

I did have a look at this when you first posted it but couldn't figure out what goes wrong. Today I tested this again with proper OpenGL 4.3 debugging (now available via GL.Debug) output enabled to see if anything is wrong on the OpenGL side. There isn't.

I tried to understand what the code does but ultimately I gave up. There is far too much going on with this common stuff it pulls in. As I see it, there are two possibilities:

  • The code is right and it sets something after the first text rendering which prevents GL.Text from rendering the text properly the second time.
  • The code is wrong and does something strange but I can't find it.

The only thing I can say is that all OpenGL calls in both this test code and GL.Text are correct since OpenGL debugging does not return any error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants