Can't change shader anymore ! Help !
-
Hi,
I am trying to change shader from per game configs wich are located in /opt/retropie/configs/all/retroarch/config/MAME 2003/
For example, I have a jrpacman.cfg with those lines in it :
video_shader_enable = "true"
video_shader = "/opt/retropie/configs/all/retroarch/shaders/crt-pi-vertical.glslp"But the vertical shader is not active when I start the game.
I can confirm the shaders are in the indicated folder and if I change other settings from the same jrpacman.cfg, like for button mapping, then the changes will be applied. This mean the config is loaded properly but the shader change only doesnt work.
It seems somehow that the shader selection has become fixed. The same command line isn't working if used in the /all folder too.
No clue as to what is happening. Can MAME be applying a shader somehow with even more privilege then my per game cfg ?
I have noted that I am able to change the shader and save it if I use the retroarch GUI for other emulators but I can't seem to pull up the retroarch GUI using MAME 2003. It would be a different way to do it but I prefer to be able to use per game config anyway.
Any help would be appreciated.
Here are my different config files:
In \retropie\configs\all : https://dl.dropboxusercontent.com/u/26446913/all-cfg/retroarch.cfg
In \retropie\configs\mame-libretro : https://dl.dropboxusercontent.com/u/26446913/mame-libretro-cfg/retroarch.cfgAnd jrpacman.cfg in \retropie\configs\all\retroarch\config\MAME 2003 : https://dl.dropboxusercontent.com/u/26446913/jrpacman.cfg
I understand per game config files can be placed in the rom folder adding .zip to the name. Both ways are valid for per game config and even using that method didn't work for me.
Help !
-
Ok I have found the problem ! (EDIT: No I didn't ! read following posts pls.) Or part of it. It's the shader path :)
How I got there :
First, what I did is fix my binding for the Retroarch GUI to work in MAME.
Then I loaded up the jrpacman game and using the retroarch GUI, I have selected a shader (crt-pi-vertical) and saved the override (.cfg) from the menu. Then I went into /opt/retropie/configs/all/retroarch/config/MAME 2003/ to look inside the just created jrpacman.cfg file. Among a lot of lines I found this one :
video_shader = "~/.config/retroarch/shaders/retroarch.glslp"
The path is strange and it is not even pointing to the crt-pi-vertical shader I just tried to save. Anyway, I figured I'd try to use that path and I just replaced the "retroarch" part by "crt-pi-vertical" so the line is now :
video_shader = "~/.config/retroarch/shaders/crt-pi-vertical.glslp"
And bingo ! (EDIT: I thought it was working but its not ! Read following posts) The crt-pi-vertical shader now loads properly when I launch the game ! So in any config files I want to change the shader, I need to use that strange path. I can now fix all my games .cfg.
All is good but I still would like to know why I have to use that strange path while everyone else has just to point to "/opt/retropie/configs/all/retroarch/shaders/crt-pi-vertical.glslp" for this to work. I can see the shaders in that path !
Any ideas ???
-
@Nataq
~/.config/retroarch/
is a symlink to/opt/retropie/configs/all/retroarch
in retropie - it's the same location - or should be unless something is broken on your set-up. -
Ok. Make sense. Would like to know how I can fix that although I can make it work by using the alternate path.
-
@Nataq your main retroarch.cfg may have the wrong path in it - but it should work with the other path. Not sure why the wrong shader file was put in there though.
-
Does my main retroarch.cfg need to specify the shader path ? Right now its not. I thought it isn't necessary since the shader path is specified in all my per game retroarch.cfg.
I am wondering about those lines in the all retroarch.cfg :
Defines a directory where shaders (Cg, CGP, GLSL) are kept for easy access.
video_shader_dir =
Is that mandatory ? What kind of "easy access" does that option provide ?
I can always try to specify the path there... Can't try right now since i'm not home.
Edit: There is the "#" symbol in front of those line. Not sure how to display .cfg properly in the forum...
-
@Nataq Please format configs in a code block for readability - http://commonmark.org/help/ otherwise
#
gets interpreted as a heading.actually, the default shader path should be ok - as it should be a symlink.
what's the output of
ls -l ~/.config/retroarch
-
@BuZz said in Can't change shader anymore ! Help !:
ls -l ~/.config/retroarch
Got this :
lrwxrwxrwx 1 pi pi 35 Nov 5 21:26 /home/pi/.config/retroarch -> /opt/retropie/configs/all/retroarch
-
@Nataq so the other path should work too - unless retroarch doesn't like symlinks for some reason.
-
Yeah that's the thing. It doesn't like it hehe. Ho well, as long as I have a way to do it :) Thanks for looking !
-
Turns out it still doesn't work ! :(
I thought it did since I used the alternate line AFTER I changed the shader using the Retroarch GUI. Now even if I delete the new line or change it, no change to the shader :(
Somehow, changing the shader through the Retroarch GUI does it, whatever is in the retroarch.cfg file.
Now what I'm thinking, could it be something to do with file permissions ? That shader line, does it tell the system to change another file properties and maybe it isn't able to do it because of file permission ?
I am thinking about this since I see other posts about file permission issues, requiring to do something like :
Sudo chown pi:pi /opt/retropie/configs/
Could that help ??? At work right now...
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.