Remember me

Lost Password?

Register now!


Who's Online
30 user(s) are online (12 user(s) are browsing Forums)

Members: 0
Guests: 30


Support us!

Recent OS4 Files

Report message:*

Re: GL4ES: another OpenGL over OpenGLES2 emulation - some tech. info and porting progress

Subject: Re: GL4ES: another OpenGL over OpenGLES2 emulation - some tech. info and porting progress
by kas1e on 2019/3/28 17:29:52


Sorry, but no. There's no way to control how much debug output is printed. The debug output was never meant for application debugging, which is why it doesn't print the function parameters, either.

Is there any way to speedup executing of the games, but still take the debug output ?:) Just with current output, it will be unpossible to run some games as it will take hour to reach menus, etc :)


I always intended for Warp3D Nova to have debugging tools like apitrace I mentioned earlier.

Apitrace portable, just it should be done right, not like some fast port, but someone skileld enough should step in. That will also require to write some gui backend (reaction or mui) where one can operate with logs, etc. Like on example screenshot which ptitSeb shows some-ten-pages ago.


I've spotted something strange in the log: Textures are being created continuously in between the draw calls. If the game is drawing just a six sided skybox, then it should load the textures once, and just bind them repeatedly. Your log shows 76 textures being created in between 109 draw calls (i.e., while it's rendering the game world). Plus, none of the created textures are destroyed. Clearly that's not right.

I will not count at moment on the whole log. As it still lugaru, with something not stripped down. Its just i strip at moment as much as i can, but i still can do something not related to the showing our issue. I just was in hope, that "end" of log will help somehow to show why at some point faces changes.


I also notice in your video that one of the sides changes to almost black instead of transparent. So, the quad is being rendered, but the texture has been replaced. The fragment shader calls "discard" for texels with alpha <= _gl4es_AlphaRef. So, if a texture were replaced with a transparent one, then you could get missing faces just like you showed in the original video.

You probabaly mess it with glClear(GL_COLOR_BUFFER_BIT); which i call before skybox.draw(); to clear the background when move camera. As far as i can see it happens like this:

1). everything renders corectly in some first frames
2). after a while (10 or more frames), few faces draws not where they should
3). and in next frame, another face draws not where should, and one of previous one pure disappear (and then gl_clear make it looks not black).

I.e. there no transaprency or anything happens as far as i can see.

In post 513 i post the code, where i create 6 different textures of different colors.


Looks like we've been searching for the bug in the wrong place. Something's going wrong with the textures. Why are new textures being created continually? It could be legitimate if Lugaru loaded textures in the background, but I'd expect them all to have been loaded before it starts rendering the game world. Next question: how could some of the skybox textures get wiped? And why would changing the vertex coordinates have any impact on that?

What you mean by wiped ? Issue still the same, just i change texture on begin color ones : 6 different colors for 6 different textures (faces).

But yeah, probabaly we search it in wrong place. At first it draws for sure as should, then, after few frames mess starts. What it mean, is that more GL commands involved in the frame-rendering, which can have impact on.

Its not like its at moment just simple test case which draw cube + camera, there is still left outs of Lugaru in the rendering of frame, which stil full of gl-calls of different kind, which i trying to reduce with keeping bug.

But probabaly what is more important for us is that first few frames 100% draws correctly with the same skybox code. Its after a while, after some redrawing things going bad.



In the post #513 above kas1e seems to be creating texture for each side.

Yeah of course, i specially show the code : i create 6 dummy textures of different color.


To create colors you could use glColor calls as well, no need for texture unless the issue is related to textures.

Well, that idea .. We can try to get rid of textures at all, but use colors on the same place of the same size, to see, if it anyhow related to textures.

Powered by XOOPS 2.0 © 2001-2016 The XOOPS Project