GemRB support?
-
@mitu Maybe I should wait for the SDL2 version? No rush though. Just happy it’s on the list for future improvements :)
-
@mitu said in GemRB support?:
There will be a separate module for the SDL2 version
Thanks for adding it, tested and it works fine
-
Glad it works. If you have any suggestions on how we may improve the default configurations, feel free to add them - it looks like right now you're the only (active) user for
gemrb
:). -
@mitu Haha, I'm unique! :)
Actually, I think more would have used it if they knew about it. Especially the BG games are really good retro games and still played a lot today. Then again, it's not really an emulator so maybe it flies under the radar for RetroPie. I guess ports are not top in time spent in general on RetroPie anyway...
Big thanks again and I hope it leads to more people finding out about it and some really good RPG's. A must have for all retro fans! :)
-
I hope that it's ok to bring this thread back to life for a newly released stable version that has some issues launching...
A new version (0.8.7, previously 0.8.6 worked fine) was just released. I can't seem to get it to run. No rush, I know that the user base is kind of small :)
I would gladly reach out to the GemRB team on Github if something needs to be clarified, but it seems it's related to SDL2?
[1m[37;40m[SDL 2 GL Driver[1m[37;40m]: [0m[37;40mCreating display [1m[37;40m[SDL 2 GL Driver[1m[37;40m]: [0m[37;40mCreating Main Surface: w=800 h=600 fmt=SDL_PIXELFORMAT_RGBA8888 [1m[37;40m[SDL 2 GL Driver/[1m[31;40mFATAL[1m[37;40m]: [0m[37;40mCan't build shader program: 0:1(1): error: syntax error, unexpected NEW_IDENTIFIER [1m[37;40m[Core/[1m[31;40mFATAL[1m[37;40m]: [0m[37;40mCannot initialize shaders. [1m[37;40m[Main[1m[37;40m]: [0m[37;40mAborting due to fatal error... [0m
-
I'll take a look, but it doesn't seem related to SDL2, more likely an OpenGL (ES) initialization error.
-
@chilvence Do you have an idea what changes in 0.8.7 that prevents it from running? If I recall correctly, something was going to be implemented in 0.8.7, like widescreen support or something similar?
-
@mitu I reached out to gemrb and they don’t see anything wrong on their side in the log. OpenGL drivers and shaders are untouched in this release. So likely something in retropie. Still no rush, but wanted to share that to rule out other factors.
-
There is an incompatibility with some shader code. I'll have a look.
-
@Stuffu Can you post a complete log on pastebin.com ?
-
@mitu said in GemRB support?:
@Stuffu Can you post a complete log on pastebin.com ?
Here it is but I don't think it provides any additional info...
-
I think the error in 0.8.7 is caused by this commit, which forces OpenGLES for the SDL2 plugin when a Raspberry Pi is detected.
Before the commit, OpenGL was not detected or compiled in. It looks like when using OpenGLES, the GLSL shaders included withgemrb
are not working with the MESA GLES driver. I don't have any experience with GLSL, so I can't say right now why they fail, but the issue is not a RetroPie installation problem.The RPI related commit is a bit wrong, it assumes that all PI's use the (legacy) Broadcom GLES drivers/headers - which is not true for a Pi4. The resulting compilation doesn't seem to include those libraries though on the PI4 and - at runtime - it looks like the Mesa GLES driver is used anyway (but this is probably because SDL2 does the right thing and dynamically loads the correct GLES library).
-
@mitu thanks for checking it out! I’ll reach out to the gemrb project to see if there is something do do about it...
-
@mitu it would be good if someone from gemrb could reply here, but I try to be a relay...
Is the proposed solution below a way forward?
cool; is the pi4 good enough to just use the lightly accelerated sdl2?
http://sprunge.us/0A2Gos?diff <-- try applying this and rebuilding
-
@Stuffu said in GemRB support?:
cool; is the pi4 good enough to just use the lightly accelerated sdl2?
Probably yes.
http://sprunge.us/0A2Gos?diff <-- try applying this and rebuilding
No, that won't work. I'll try to experiment a bit and see if I find the error, then I'll open an issue for
gemrb
. -
@Stuffu Sorry, I was just catching up on the happenings at discord and didn't realise you'd tried to ping me. I saw this change go in a few weeks ago but I hadn't tested it out myself.
I do know that there is a huge upending in progress with the backend rendering system, all of which is way over my head, but I hadn't realised the support for the pi4 had been broken. It was actually compiling and running nicely last time I tried, but that was then...
@mitu it sounds like you have already sensed the root of the problem somewhat, if you can shed any light on it by opening an bugtracker issue, I'm not one of the gemrb developers but I am a regular tester and I am armed with a pi4, so hopefully I will be able to help solve this.
-
OK, I've opened an issue on the Github project page. It specifically addresses the shader initialization issue reported by @Stuffu, but not the build issues introduced by the commit I mentioned before.
@chilvence if you have a Pi4, you can test the patch I linked and see if it works for you, either with 0.8.7 or the latest master.
-
@mitu i read the Github issue you submitted. You are so awesome! :)
-
@mitu It seems there is a commit with the suggested changes and I tried installing from source, removing the "v0.8.7" but it still builds from stable release, without the commits.
This is how
gemrb.sh
looks, is it maybe related toBUILD_TYPE
?function sources_gemrb() { gitPullOrClone "$md_build" https://github.com/gemrb/gemrb } function build_gemrb() { mkdir -p build cd build make clean cmake .. -DCMAKE_INSTALL_PREFIX="$md_inst" -DCMAKE_BUILD_TYPE=Release -DFREETYPE_INCLUDE_DIRS=/usr/include/freetype2/ -DSDL_BACKEND=SDL2 -DUSE_SDLMIXER=OFF make md_ret_require="$md_build/build/gemrb/gemrb"
Thanks! :)
-
@Stuffu said in GemRB support?:
This is how gemrb.sh looks, is it maybe related to BUILD_TYPE?
No, that's not related to the source version. Without a branch name, it should pull from the master branch - make sure you clean up the downloaded sources before attempting to build from
master
.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.