@Capehill About iconification snapshooting issue, i just change OS4_GetDiskObject() in the SDL_os4window.c as Trixie suggest and it works indeed. Just in case i set it to fallback one as well (to avoid problems when default on snapshoted somehow different too). There is:
Maybe you can try 'GetIconTags()' as it loads a default icon if none found. ... //diskObject = IIcon->GetDiskObject(videodata->appName); diskObject = IIcon->GetIconTags(videodata->appName, ICONGETA_FailIfUnavailable,FALSE, TAG_END); ...
Maybe you can try 'GetIconTags()' as it loads a default icon if none found.
So does GetDiskObjectNew(), by the way. The code kas1e has posted can surely be rewritten/improved in several ways, but I think the simplest edit is the safety check I've suggested above.
Remove some primitive forms (try only lines, points or rectangles, for example)
Only points: crash Only lines: crash Only rects: crash
Its like just whole "batching" thing broken for ogles2.
Btw, what i also notice, is that when it only rects, then graphics library give 4330 fps, opengl one 1910fps, and ogles2 2100fps. So in case with just rects, ogles2 version is faster a little. But when it come to lines and dots, it slower a lot.
@Capehill There was another bug in ogles2 which indeed caused testdraw2 with env-var SDL_RENDER_BATCHING 1 to produce undefined behaviour. On my FTP there's a wip-version of ogles2 2.7 which among many other stuff also contains a fix for that one.
@Daniel Yeah, can confirm that 2.7 fix the SDL_RENDER_BATCHING thing.
@Capehill Now when SDL_RENDER_BATCHING enabled, we have 207fps for ogles2 rendering, which indeed about 7 times faster than without, but render via pure opengl (minigl) give us 411fps.
So with batching it much better indeed, but still slower than opengl one.
I also notice, that in "fix-opengles2-renderer" branch, you rewrite a bit fragment shader (to map ARGB colors), but should't we just report issue to Hans, so he will made it works the same as on all other platforms ?
I removed angle/center stuff from the vertex shader (which are not used for point/line/rects) and also the glPointSize, and ran testdraw2 few times: for me, OGLES2 is faster that MiniGL in rects and lines. MiniGL is 2x faster in points.
Regarding fragment shader: SDL2 tells OpenGL all textures are internally GL_RGBA. Now, we have ARGB texture in memory and so I believe we need to reorder the color channels so that OpenGL gets what it was promised. This actually works (try testscale, for example). However target textures are partially broken: the smiley face (testrendercopyex) clearly suffers from wrong color channels. However, the background doesn't, so it seems strange to me. Their texture format is identical.
I don't know if the following issue is SDL2 or OGLES2, since it only appears when starting residualvm built with ogles2 (sdl1 and sdl2 are fine), but it has an SDL2 error message, so i guess it might be a cobination of both?
Sorry if this is the wrong thread, but i need to first find out who is acting wrong.
It could be SDL2 or OGLES2.
ScummVM built with OGLES2 and SDL2 running.
If i choose to play any game that is not yet fully supported, a black screen will come up with a window saying just that and the possibility to start or cancel.
The screen is, as i said, black or erased when using SDL1, SDL2 and MiniGL. But it's not once OGLES2 is used.
Instead a malformed part of the earlier launcher screen is displayed.
The right one is the correct one (SDL2 and OpenGL)
If you could just point me to the correct thread and i'll be gone
I think it's not SDL2. SDL2 doesn't draw anything when OGLES2 context is used (OGLES2 is given the window pointer). Which W3DNova driver version you are using?
It seems that you have reported this kind of texture/framebuffer (?) issue earlier here http://www.amigans.net/modules/xforum ... id=113834#forumpost113834 and then Kas1e responded that he may have the same issue with Letterfall game, and that is possibly fixed in Nova driver 1.60 or something, I didn't read the whole thread til the end.
Yes, i know about that other thread. I dropped it because iogles2 wasn't as evolved as it is now and i thought that it might be because of something else interfering.