Fix two multi-sample bugs: 1) include MS in name mangling, 2) add 'sample' argument texelFetch(*MS*,...).

This commit is contained in:
John Kessenich 2015-08-16 21:04:07 -06:00
parent dc9eff7221
commit 2b0a11351f
10 changed files with 74 additions and 71 deletions

View file

@ -2,5 +2,5 @@
// For the version, it uses the latest git tag followed by the number of commits.
// For the date, it uses the current date (when then script is run).
#define GLSLANG_REVISION "2.3.716"
#define GLSLANG_REVISION "2.3.717"
#define GLSLANG_DATE "16-Aug-2015"

View file

@ -2152,8 +2152,9 @@ void TBuiltIns::addSamplingFunctions(TSampler sampler, TString& typeName, int /*
if (bias && compare)
continue;
// non-optional lod argument (lod that's not driven by lod loop)
if (fetch && sampler.dim != EsdBuffer && sampler.dim != EsdRect && !sampler.ms)
// non-optional lod argument (lod that's not driven by lod loop) or sample
if ((fetch && sampler.dim != EsdBuffer && sampler.dim != EsdRect && !sampler.ms) ||
(sampler.ms && fetch))
s.append(",int");
// non-optional lod

View file

@ -89,6 +89,8 @@ void TType::buildMangledName(TString& mangledName)
case EsdBuffer: mangledName += "B"; break;
default: break; // some compilers want this
}
if (sampler.ms)
mangledName += "M";
break;
case EbtStruct:
mangledName += "struct-";