Weird thing - can't use my shaders with new version of BH (1.11.2). For example this one (5xbr-v3.8a - http://www.u-sm.ru/downloads/5xbr-v3.8a.rar) works perfectly with previous version (1.11.1) but crashes new version in startup, here it screenshot:
So it's new for this version of BH... :(
Will be good if someone will upload archieve withh all existed shaders compatible with new BH. I made shaders myself not so long ago (source from here - https://github.com/reedolph/common-shaders-glsl) and now do not know where i can get same quality (my favourite is 5xbr-v3.8a) shaders instead them.
Joined: 4/17/2010
Posts: 11492
Location: Lake Chargoggagoggmanchauggagoggchaubunagungamaugg
I have a .cg shader that works in retroarch, but bizhawk asks for .cgp. I rename it and it tells me length must be greater than zero as an exception.
http://pastebin.com/7VY0pBGc
I canceled the dialog and closed the emu, and now it gives this exception on launch, not allowing to actually launch bizhawk. I have to remove the DispUserFilterPath value, but once this exception happens, this value can't be removed the normal way.
Switching between d3d and ogl doesn't affect the problem.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
.cgp and .cg are completely separate things. Create a .cgp which references the .cg. In principle it is impossible to load a .cg without a .cgp but I suppose a built-in boilerplate .cgp can be used in case a .cg is referenced directly. That must be what retroarch is doing, I just have to figure out the correct boilerplate. I'll do that eventually.
Here's a .cgp I tested with:
There are problems with your .cg:
1. There's garbage near the first call to sin which breaks compilation
2. the sampler must be named s_p. It's not possible to generally make a retroarch shader without using the correct uniform names. I might could add an exception for the sampler, but I don't see why I should, when the other uniforms still need to be named correctly. I'm not sure whether retroarch is violating it's own spec here as I don't think the specs are all that well written and it's not covering this question precisely.
Note that many of the shaders in retroarch's shader library are broken. You can't always rely on them for examples. Retroarch may also be lax in its implementation of its ambiguous specs.
You can see the results of compilation in the console log window, but the line numbers are a little bit off.