diff options
| author | Ryan Houdek <Sonicadvance1@gmail.com> | 2011-12-07 22:47:13 -0600 |
|---|---|---|
| committer | Ryan Houdek <Sonicadvance1@gmail.com> | 2011-12-07 22:47:13 -0600 |
| commit | bf4ef054d3cf2889a7753d86ce3b582ce5349e4c (patch) | |
| tree | 0d60e432a326a0e54fea631c17f956b26b8aed2f /Source | |
| parent | ed18b82d2f9b36293f6b3ffaaeeaf958cf024144 (diff) | |
Shader Compile fixes. Played SMS for two shines.
Diffstat (limited to 'Source')
| -rw-r--r-- | Source/Core/VideoCommon/Src/PixelShaderGen.cpp | 2 | ||||
| -rw-r--r-- | Source/Core/VideoCommon/Src/TextureConversionShader.cpp | 10 |
2 files changed, 5 insertions, 7 deletions
diff --git a/Source/Core/VideoCommon/Src/PixelShaderGen.cpp b/Source/Core/VideoCommon/Src/PixelShaderGen.cpp index d3d59cde63..dcfa2da05d 100644 --- a/Source/Core/VideoCommon/Src/PixelShaderGen.cpp +++ b/Source/Core/VideoCommon/Src/PixelShaderGen.cpp @@ -750,7 +750,7 @@ const char *GeneratePixelShaderCode(DSTALPHA_MODE dstAlphaMode, API_TYPE ApiType // optional perspective divides if (xfregs.texMtxInfo[i].projection == XF_TEXPROJ_STQ) { - WRITE(p, "if (uv%d.z)", i); + WRITE(p, "if (uv%d.z != 0.0f)", i); WRITE(p, " uv%d.xy = uv%d.xy / uv%d.z;\n", i, i, i); } diff --git a/Source/Core/VideoCommon/Src/TextureConversionShader.cpp b/Source/Core/VideoCommon/Src/TextureConversionShader.cpp index ce4a5ca1f4..caa4ff8f72 100644 --- a/Source/Core/VideoCommon/Src/TextureConversionShader.cpp +++ b/Source/Core/VideoCommon/Src/TextureConversionShader.cpp @@ -125,8 +125,7 @@ void WriteSwizzler(char*& p, u32 format, API_TYPE ApiType) WRITE(p," in float2 uv0 : TEXCOORD0)\n"); } - WRITE(p," in float2 uv0 : TEXCOORD0)\n" - "{\n" + WRITE(p, "{\n" " float2 sampleUv;\n" " float2 uv1 = floor(uv0);\n"); @@ -448,10 +447,9 @@ void WriteRGB565Encoder(char* p,API_TYPE ApiType) WriteSampleColor(p, "rgb", "float3 texSample0",ApiType); WriteIncrementSampleX(p,ApiType); WriteSampleColor(p, "rgb", "float3 texSample1",ApiType); - - WRITE(p, " float2 texRs = {texSample0.r, texSample1.r};\n"); - WRITE(p, " float2 texGs = {texSample0.g, texSample1.g};\n"); - WRITE(p, " float2 texBs = {texSample0.b, texSample1.b};\n"); + WRITE(p, " float2 texRs = float2(texSample0.r, texSample1.r);\n"); + WRITE(p, " float2 texGs = float2(texSample0.g, texSample1.g);\n"); + WRITE(p, " float2 texBs = float2(texSample0.b, texSample1.b);\n"); WriteToBitDepth(p, 6, "texGs", "float2 gInt"); WRITE(p, " float2 gUpper = floor(gInt / 8.0f);\n"); |
