-
Notifications
You must be signed in to change notification settings - Fork 258
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
Video displays at the lower left corner, no full screen #813
Comments
you should use "--resolution 1280x720" if that is your screen resolution. nothing in the video plugin is going to automagically scale it for you. |
@richard42 So is there a way to use a different resolution for internal rendering than the displaying resolution? Like scaling a 320x240 texture onto a 1280x720 surface, like what is done by |
No, none of the video plugins support separate rendering/display resolutions with an intermediate scaling step. When work on most of these video plugins were first started, CRTs were common and you could set your output resolution to 640x480 and have it fill up the entire monitor. This type of functionality could be added to any of the plugins but it wouldn't be trivial. The way to implement it is to render to an FBO which is bound to a texture, and when everything is finished and it's time to do the GL_Swap, unbind the FBO and scale the rendered texture to the final output resolution on the real background surface, then do the swap. |
Thanks for confirming this @richard42 . That saved me much time trying to make it work. |
@wn2000 retropie uses an SDL fork with bespoke scaling hints to fullscreen 320x240 windows. btw, this doesn't work on mesa (the rpi4's only video driver) so in that case the resolution is set to current screen res, but some plugins (eg GLideN64) can render at lower resolutions internally (scaling up to mupen64plus's window). |
@dankcushions Thanks for that info! Do you have a link to the customized SDL fork? Is it open source? |
yes, yes: https://github.com/RetroPie/SDL-mirror/tree/retropie-2.0.10. relevant commit: RetroPie/SDL-mirror@9ae0a81
no, that's not the same plugin. GLideN64 is https://github.com/gonetz/GLideN64/ - it's by some margin the best HLE plugin at this point. gles2n64 is a GLES fork of glN64, which has been long abandoned.
for gles2n64 (which i don't suggest you use anyway), i get the same issue with non rpi0-3 platforms: RetroPie/RetroPie-Setup#3118 |
Awesome thanks for the help. I will try GLideN64 now. |
effectively, yes. like i said:
so you still have to use --resolution (your screen res), but you can use the setting
so it internally renders at n64 resolution, ending up with the result you want. |
Awesome will try that and report back. |
OK I tried GLideN64. Took some efforts to build for my RK3328 Mali-450 aarch64 platform (had to tweak the code for a little bit otherwise segfault).
But once this was set it becomes really slow (~10 FPS). |
Running mupen64plus on a RK3328 aarch64 Linux, with SDL2, KMS/DRM, and GLES2.
There's no X11 so windowed mode is not applicable.
When starting with
--fullscreen --resolution 320x240
in a 1280x720 screen, I was expecting to see video rendered internally at 320x240 then scaled to 1280x720, but instead video is only rendered in a 320x240 block in the lower left corner of the 1280x720 screen, with the rest part being blank.Tried three different video plugins, and got the same result.
Is this the normal behavior? Any parameters I missed to make it full screen?
I found some similar reports in the rpi community. And all solutions suggest "update mupen64plus from source". But I'm building from the latest source and the issue still persists.
Appreciate any help on setup or hint regarding where to look in the code.
The text was updated successfully, but these errors were encountered: