Code Monkey home page Code Monkey logo

Comments (14)

dukeeeey avatar dukeeeey commented on May 23, 2024

I'm not sure supermodel really supports proper multi monitors.
But in any case i'd recommend always just running at your monitor native resolution. You have a 3070 card, you have horse power to spare :)

btw if you are using -true-hz, did you create a custom refresh rate for this?

from supermodel.

Shoegzer avatar Shoegzer commented on May 23, 2024

Thanks @dukeeeey. I was hoping to preserve the original 4:3 arcade aspect ratio with the external monitor, though I understand if it's outside the scope of what supermodel can support. At least it works fine on my normal monitor.
Should we close this issue, or leave it open as a placeholder for future developments?

The -true-hz was just a moonshot test based on your most recent commit, without a custom refresh rate. I realize that would be needed in practice though, and it's a nice feature. I had forgotten to leave it off of the details above. Sorry for any confusion.

from supermodel.

AaronBPaden avatar AaronBPaden commented on May 23, 2024

I do this as well. I'm not a fan of increasing the IR of early 3d games so I create a custom 496x384 mode. Though I don't have a second monitor to test.

I believe supermodel just sets the display mode to whatever you set it to. It doesn't scale the resulting frame. That would be your display (or GPU? Not sure.)

Is this x11 or Wayland? If X11, What happens if you do something like xrandr --output "DisplayPort-2" --set "scaling mode" "Full aspect" replacing the name of "DisplayPort-2" with your second monitor as reported by xrandr? I don't have an nvidia gpu either so I can't test, but this is what I do for my amd gpu.

from supermodel.

AaronBPaden avatar AaronBPaden commented on May 23, 2024

btw if you are using -true-hz, did you create a custom refresh rate for this?

The -true-hz was just a moonshot test based on your most recent commit, without a custom refresh rate. I realize that would be needed in practice though, and it's a nice feature. I had forgotten to leave it off of the details above. Sorry for any confusion.

This is a bit off topic, but this got me curious how this works with a freesync monitor. Seems to work just fine even without manually creating a new custom refresh rate (sorry for the cell image, no other way for me to capture the display OSD):
output-file

from supermodel.

Shoegzer avatar Shoegzer commented on May 23, 2024

Thanks @AaronBPaden. I'm using X11. I'm wary of using xrandr to set the scaling mode since I use my secondary monitor (HDMI-0) for other purposes that would not need to do that. Does this change a config or is this a one-time call? In case of the latter I can just script it to execute at runtime with the binary.

Also, normally supermodel is run on a 4:3 arcade CRT as a secondary display and looks fine there, this was just an observation made while testing on a more modern display. It would be nice if supermodel scaled appropriately though, regardless.

from supermodel.

AaronBPaden avatar AaronBPaden commented on May 23, 2024

To make it persist across logins you would generally put the line in ~/.xprofile. But running it from a terminal or script will effect the session globally until you relog.

A script where you set the scaling mode, run supermodel, and set it back on close would work.

xrandr --prop will list properties you can set with the --set command. Here's what I get for scaling mode:

    scaling mode: Full aspect
            supported: None, Full, Center, Full aspect

I'm guessing Full here is the normal one where it stretches the output to fit the display, but I only ever use full aspect so I'm not positive.

from supermodel.

Shoegzer avatar Shoegzer commented on May 23, 2024

Thanks again. My internal notebook display (eDP-1-1) reflects the same output as you noted above; however my external display (HDMI-0) does not reflect any scaling modes or mode options. That being the case, I wonder if I could force the 4:3 aspect via something like this:

xrandr --output HDMI-0 --mode 1024x768

Note that I already attempt this unsuccessfully by using the supermodel flag -res=1024,768, as stated above.

from supermodel.

dukeeeey avatar dukeeeey commented on May 23, 2024

I'd recommend just running supermodel at your monitor's native resolution. The model 3 uses 496x384 which isn't exactly 4:3 anyway.

from supermodel.

Shoegzer avatar Shoegzer commented on May 23, 2024

The monitor's native resolution is 16:9 aspect though, which stretches Model 3 games out too much. Ideally something at least approaching the original aspect would be best.

from supermodel.

trzy avatar trzy commented on May 23, 2024

If you don’t use the stretch option, won’t Supermodel create black borders and fill vertically? Seems like this is the best that can be done for a wide aspect ratio if you don’t want to use wide screen mode.

from supermodel.

Shoegzer avatar Shoegzer commented on May 23, 2024

Not using stretch will result in a more proper aspect (with black borders) when I'm using the primary display, though as I mentioned above, when I'm connected to the secondary display it doesn't work for some reason.

@dukeeeey mentioned earlier that YMMV with secondary monitors, so it's fine if resolving this issue is out of scope and I'm happy to close this. It would be nice to leave it open as a possible future target though.

from supermodel.

AaronBPaden avatar AaronBPaden commented on May 23, 2024

Thanks again. My internal notebook display (eDP-1-1) reflects the same output as you noted above; however my external display (HDMI-0) does not reflect any scaling modes or mode options. That being the case, I wonder if I could force the 4:3 aspect via something like this:

xrandr --output HDMI-0 --mode 1024x768

Note that I already attempt this unsuccessfully by using the supermodel flag -res=1024,768, as stated above.

I suspect you would get the same result since xrandr would be doing basically the same thing that supermodel does - change the display mode to 1024x768.

It sounds like your secondary monitor isn't offering this functionality, whether because of a driver configuration issue or some other reason I can't say. That is pretty much the end of my x11 knowledge, which isn't extensive or anything. It might be best to move this question to a Linux support forum like the linuxquestions subreddit or your distro's support forums since it's not really related to the supermodel emulator but some X11-specific jank.

from supermodel.

Shoegzer avatar Shoegzer commented on May 23, 2024

Thanks again. I was thinking that supermodel might be doing something different to set resolution where the xrandr method might work, though you're probably right that it's most likely not.

The secondary monitor does seem to have limitations even though it's only a few years old, and while it's never had a problem with 4:3 and similar aspect ratios with other emulators, I've never tried setting it through xrandr. Linux Mint is sticking with X11 for now but with a long-term goal to move to Wayland, so there's that.

from supermodel.

SeongGino avatar SeongGino commented on May 23, 2024

Just chipping in to say I'm having this issue as well.
In my case on a 4K display (in lamachin at least), my 3060ti slows down with alpha effects at 4K, so the next lowest common res is 1440p. But in doing that with --wide-bg/wide-screen, the size is... weird.
2023_09-10 100122
2023_09-10 100124

Using it without either of the widescreen-y options, it looks fine at first (with black borders) in cutscenes, but in actual gameplay it's all anamorphic for some reason.
2023_09-10 101207
2023_09-10 101217

The only res that works is 1920x1080, presumably because it's a clean integer scale? Though it's only here that it actually reinits my display into 1080p and thus fills the screen as it should.
2023_09-10 100923

from supermodel.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.