-
Notifications
You must be signed in to change notification settings - Fork 2
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
create options tab for PCSX2 #50
Comments
Anthing else @Shoegzer? |
My thought was essentially that anything exposed through the existing UI that preserves the original PS2 eperience or is necessary for game performance or accuracy could be handled here, though I would personally remove aspect ratio and upscale as they aren't native PS2 features. Also BIOS selection could be any BIOS found in the BIOS directory (IIRC each region has many versions). Areas to consider:
|
@Shoegzer It's easy to create the screens, however, it is actual work to extract the screens from ppsspp. It is connected to the OpenGL context, event loop, their atlas texture, etc. I'm trying to strip everything away from ppsspp so that I have the bare minimum needed for the screens. I am a bit worried that it could affect the release date for X-Mas. Hopefully, this is not too much scope creep. I guess after the weekend we know more. |
Great start! I'd standardize on fonts etc. so for example "Core" and "Emulation" might use the same font as "Continue", in a header bar vs. below, so the eye is cast more naturally on it. Notwithstanding technical challenges wrt the OpenGL context, hopefully this can be standardized over all cores vs. just the PPSSPP as RA does with its Ozone UI/Quick Menu. And yes, careful on scope creep! It's okay to put off anything that isn't high priority. Most important is that really nice features are being added and will find their way in eventually. Christmas or no, people will still download and use Marley any time of year if they love it. |
@Shoegzer It is similar to a core but can only provide settings screens. Currently, it runs as a unit test. Hooking it up to Marley eventually should be plug&play. It still looks identical to the video I posted above. However, it is now a stand-alone Cmake project that has only a few source files. I separated the namespaces to avoid collisions with PPSSPP. There are quite a few classes left that I have to rename so that they don't clash with Marley's global scope. |
@Shoegzer Here's also a video demo: https://streamable.com/n2a7a0 The version in the PPA is not re-entry capable, which I fixed in the meantime with commit 8d0d6e3. I'd say the new framework for the settings screens is now operational and I can proceed to the functional implementation per your recommendations. |
Looking great! I think the layout will prove to be a great decision as it not only will be familiar to a wide audience already, but also that it's well-designed and clutter free. |
Thanks, Shoegzer! OK, so I hooked up the first settings to PCSX2 (beab71d) I was wondering how to call the two renderer modes "OpenGL" and "Software". I think they are both OpenGL-based, not? I find that "Software" works better. I named them "OpenGL Hardware" and "OpenGL Hardware+Software" so that people understand they both are based on hardware acceleration. I have to admit I don't know what the difference is between the two. I only know that both work great, except that "OpenGL Hardware" doesn't work with Spiderman. Below are the remaining settings. Which ones do you also want? AspectRatio I think is ok. And then you said we need the user hacks? I never used them myself. How do you know to enable or disable a user hack? Except for AspectRatio, I have no clue what those settings are about... LOL
|
I would just leave them as "OpenGL" and "Software" as I believe software mode uses the CPU rather than GPU to render 3D hence OpenGL would not be involved. This also seems consistent with the name scheme others have worked towards lately, such as here. Those settings you've posted above seem related to graphics exclusively, so I'd look at others too. Generally speaking I'd recommend referring to the UI to see what options are exposed to the majority of users and then map them to the settings above as the UI has always worked out fine for me (of course with the exception of inaccurate anti-features such as aspect ratio and resolution scaler which should not be exposed, but you already know my strong feelings there). Also hope we don't get confused between UserHacks and GameFixes:
|
That seems a bit too simplified and may be more appropriate as a tooltip than an actual setting? I'd also stick with parallel comparative statements, so you might have: Rendering Backend:
|
Ok, this looks great :-) CPU is actually "CPU+GPU", see Kojin's and Ref's answers to my question in the PR you linked above.
|
Thanks! At the risk of being pedantic: what I said above still seems to hold true given what Ref said about software mode not using OpenGL for scene rendering/rasterization (which is why I categorized the options under "Rendering Backend"). :-) That said, if you change the category to "Display Mode" or "Display and Rendering Mode" (either of which are more generalized), then I think your option names are just fine. Incidentally, I would consider keeping wording at "higher/slower" and "lower/higher" to avoid confusion. Even in recent builds of PCSX2, I've found many cases where hardware mode is highly inaccurate (spiky polygon syndrome, missing skybox etc.), and likewise where software mode is quite slow (even rendering at half-speed or worse especially in rendering scenes where volumetric fogging or high-volume particle effects are involved)! So to say these options are "high" and "fast" just seems disingenuous / misleading to users who know better. |
@Shoegzer I am still working on the 4:3 mode for fullscreen but in windowed mode, 4:3 should be ok. I programmed standard settings and advanced settings. Hopefully, this is what you had in mind. The user hacks need to be enabled on top of that. Please review version 0.2.3 from the PPA. It is still work in progress but I figure it would be time you looked over it. Thanks! :-) |
Yup, I'm on it - nice job overall! I realize you're just getting started with the options but here are my thoughts so far:
|
Does PCSX2 as a core work for you in 0.2.3? |
Funny you mention that - I accidentally reset my "Games folder" setting to my home dir, and now Marley just freezes when I try to change it from that. I can provide logs in case it isn't clear what's going on. |
About 4:3, I wasn't really aware of this topic. I looked into it yesterday for the first time. Yes, we can make 4:3 permanent and remove the option. Or detect it automatically. What you described above would be a different issue. This is not related to the PCSX2 core. I would check I tried this morning the PCSX2 core from the PPA version 0.2.3. It is not working. I saw that before and believed I had fixed it with removing additional compile options that the build server is injecting. Version 0.2.3 works when I build it locally. I built a new version 0.2.3.1 a few minutes ago in the PPA. Its release is pending; should be any minute now. I added Thanks for all the feedback BTW!! :-) :-) Tools tips I have to check. Not sure where they would show. Probably doable. Multiple tabs yes, but only one per core. If needed. If it works automatically, even better. Plus a general tab??? (bios and games path, input setup, etc.) As you said, the settings are still early days. I can move VSync to the bottom. Good idea. |
PPA version 0.2.4.3 (Santa Cruz Edition) is available:
The majority of PCSX2 options for #50 should be implemented by now. "Audio", "Input", and "Network" need to be looked at in new tickets.
Is there anything essential that is missing in version 0.2.4.3 in terms of PCSX2 settings? |
You're quite welcome for the feedback.
I removed ~/.marley but then after attempting to set the games folder, Marley [0.2.4.3] tries its recursive search through all folders under my home directory. ESC did not stop this so I had to kill the process. Subsequent attempts to restart Marley don't work wihtout removing ~/.marley again. I don't like this method of automatic recursive searching, which could take a very long time even if the feature were desired. I'd rather choose the directory manually from a file tree. This brings to mind another major improvement that Marley's own resolution should be much higher, with improved font size/style and selection windows for example to allow more configuration etc. lines per screen, as RA does it. I know Marley is in early alpha, but doing this now would help future testing efforts as it is quite difficult to navigate as-is. I'll take a look at PCSX2 settings once I can get into Marley again, but I can offer some preliminary thoughts. First I think "Audio" settings would work best in a separate "audio" tab rather than a general screen tab. Second, those "dev" features are actually needed for many games to work - if you look at the PCSX2 game compatibility wiki you'll see frequent references to change EE/IOP/VU to interpreter for example, in order to get a specific game to work, either in general, or to advance past a certain point in the game where more precision is required than the recompiler affords. |
The text was updated successfully, but these errors were encountered: