Skip to content
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

Pause=>Resume=>colored screen\missing textures(GSDX) #584

Closed
vsub opened this issue Jun 5, 2015 · 12 comments · Fixed by #611
Closed

Pause=>Resume=>colored screen\missing textures(GSDX) #584

vsub opened this issue Jun 5, 2015 · 12 comments · Fixed by #611
Assignees
Labels

Comments

@vsub
Copy link

vsub commented Jun 5, 2015

Since this change 6c8f7a0 when I pause the emulation(close the game window)and then resume the game,I'll get either colored screen covering the while screen or textures(mainly text...I think it's only text)will be missing.

Tested games Atelier Iris 3 and Ar Tonelico 2.
Switching settings,renderer or sw\hw mode don't fix the problem
i7 4771,GTX750TI,16gb ram on Win7 ultimate sp1 x64
2015-06-05_212618
2015-06-05_212902
2015-06-05_212918

@gregory38
Copy link
Contributor

Ah. It was too nice...

@gregory38 gregory38 self-assigned this Jun 5, 2015
@gregory38 gregory38 added the Bug label Jun 5, 2015
@gregory38
Copy link
Contributor

I revert the change. I will do somethings better in a short future.

@gregory38
Copy link
Contributor

Is it legal to change gsdx option during the pause?

gregory38 added a commit that referenced this issue Jun 6, 2015
It fixes the reloading of openGL option and it avoids
issue during pause/resume.

Fix issue #584
@gregory38
Copy link
Contributor

Could you test lates GIT?

@vsub
Copy link
Author

vsub commented Jun 6, 2015

The problem I mention is fixed but I think the main problem(loading the settings)is not.
Aterlier Iris 3 in the menus(triangle)

1.Start the game with OpenGL(or any other renderer...I don't know if it's just me but I think OGL is starting to work faster than DX :) )HW already selected and with native resolution
2.Switch to 6x scaling and the gpu and vram usage goes up
3.Press F9 to switch to software mode(the gpu\vram usage goes down)
4.Switch to any hardware renderer(I didn't close the game window)
5.It will continie to act as if software mode is selected(the gpu\vram usage is the same)
6.Press F9 to supposedly switch to software renderer...and the result is higher gpu\vram like hardware mode is selected

@bositman
Copy link
Member

bositman commented Jun 6, 2015

So you're saying after switching to software via F9, if you change renderer in the GUI it doesn't take effect?

@refractionpcsx2
Copy link
Member

Sounds like the texture cache isn't initialising again so it leaves the render size at native not software though (it sounds)

@gregory38
Copy link
Contributor

Or f9 miss a set config call

@gregory38
Copy link
Contributor

Actually I think there are 2 bugs.
1/ we don't set the render variable so the gui is lost

            theApp.SetConfig("renderer", renderer);

2/ Then either the print is wrong or the toggling doesn't always work

(gsFrame) Invoking command: Sys_RenderswitchToggle
Suspending single plugin: GS
    Saving GS
    Closing GS
Recovering single plugin: GS
    Opening GS
        Toggling GSdx Hardware/Software renderer
    Loading GS
(gsFrame) Invoking command: Sys_RenderswitchToggle
Suspending single plugin: GS
    Saving GS
    Closing GS
Recovering single plugin: GS
    Opening GS
    Loading GS

@gregory38
Copy link
Contributor

Tell me if #588 is better.

@vsub
Copy link
Author

vsub commented Jun 7, 2015

If I understand this change correctly,GSdx is supposed to write in GSdx.ini in Renderer= when you hit F9.
If that's what it supposed to do then,then no,it's not working.
1.Notepad++ doesn't detect that the file is updated(because it's not)when you press F9
2.Pressing F9 does not make GSdx to auto select the current renderer from the Renderer drop down menu.

Here is an idea
1.Pressing F9 will set a variable telling which renderer is selected

0 - DX9 HW
1 - DX9 SW
2 - DX9 Null
3 - DX11 HW
4 - DX11 SW
5 - DX11 Null
10 - Null SW
16 - Null OCL
11 - Null Null
12 - OGL HW
13 - OGL SW
14 - DX9 OCL
15 - DX11 OCL
17 - OGL OCL

This is what GSdx writes to the "Renderer=" when you select it from the drop down menu and hit ok

2.When you open the settings,GSdx will load the settings from the ini but only set the renderer from the variable,not from what the "Renderer=" say(that way the the renderer selected will be temporary)

3.Changing settings from the GSdx settings window will write to the ini and update the variable telling which mode is selected.

Currently it's like I said above in my previous post:
1.F9=>SW
2.GSdx settings says some HW mode
3.Choosing any other hw renderer either changes to that renderer but in sw mode or it does nothing(I can't be sure about the second one but it's definitely still on sw mode)
Or choosing any sw mode(gsdx settings stays hw while sw is actually active(from F9)),will make GSDX to work in hw mode

And about what I said above about the texture filtering,I was probably wrong...the higher the scaling mode(Atelier Iris 3 characters)the more the characters will look like no texture filtering is enabled.It's set to half enabled but if it's checked(force on),they will look fine but then other things start to appear.

@gregory38
Copy link
Contributor

Hum, on linux the file is updated but it isn't important. Someone gives me the solution for the issue number2 which is I think the main issue (sometime the renderer didn't really toggle)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants