Commit 0dbda057 by Austin Kinross Committed by Geoff Lang

Add basic D3D11 Feature Level 9.3 support

Change-Id: I660c74791ddb9917bd4796bb652eefab2a3e4863 Reviewed-on: https://chromium-review.googlesource.com/233660Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Tested-by: 's avatarAustin Kinross <aukinros@microsoft.com>
parent 748f74ef
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
// Precompiled shaders // Precompiled shaders
#include "libANGLE/renderer/d3d/d3d11/shaders/compiled/clearfloat11vs.h" #include "libANGLE/renderer/d3d/d3d11/shaders/compiled/clearfloat11vs.h"
#include "libANGLE/renderer/d3d/d3d11/shaders/compiled/clearfloat11ps.h" #include "libANGLE/renderer/d3d/d3d11/shaders/compiled/clearfloat11ps.h"
#include "libANGLE/renderer/d3d/d3d11/shaders/compiled/clearfloat11_fl9ps.h"
#include "libANGLE/renderer/d3d/d3d11/shaders/compiled/clearuint11vs.h" #include "libANGLE/renderer/d3d/d3d11/shaders/compiled/clearuint11vs.h"
#include "libANGLE/renderer/d3d/d3d11/shaders/compiled/clearuint11ps.h" #include "libANGLE/renderer/d3d/d3d11/shaders/compiled/clearuint11ps.h"
...@@ -104,7 +105,7 @@ Clear11::Clear11(Renderer11 *renderer) ...@@ -104,7 +105,7 @@ Clear11::Clear11(Renderer11 *renderer)
rsDesc.DepthBias = 0; rsDesc.DepthBias = 0;
rsDesc.DepthBiasClamp = 0.0f; rsDesc.DepthBiasClamp = 0.0f;
rsDesc.SlopeScaledDepthBias = 0.0f; rsDesc.SlopeScaledDepthBias = 0.0f;
rsDesc.DepthClipEnable = FALSE; rsDesc.DepthClipEnable = TRUE;
rsDesc.ScissorEnable = FALSE; rsDesc.ScissorEnable = FALSE;
rsDesc.MultisampleEnable = FALSE; rsDesc.MultisampleEnable = FALSE;
rsDesc.AntialiasedLineEnable = FALSE; rsDesc.AntialiasedLineEnable = FALSE;
...@@ -113,9 +114,20 @@ Clear11::Clear11(Renderer11 *renderer) ...@@ -113,9 +114,20 @@ Clear11::Clear11(Renderer11 *renderer)
ASSERT(SUCCEEDED(result)); ASSERT(SUCCEEDED(result));
d3d11::SetDebugName(mRasterizerState, "Clear11 masked clear rasterizer state"); d3d11::SetDebugName(mRasterizerState, "Clear11 masked clear rasterizer state");
mFloatClearShader = CreateClearShader(device, DXGI_FORMAT_R32G32B32A32_FLOAT, g_VS_ClearFloat, g_PS_ClearFloat); if (renderer->getFeatureLevel() <= D3D_FEATURE_LEVEL_9_3)
mUintClearShader = CreateClearShader(device, DXGI_FORMAT_R32G32B32A32_UINT, g_VS_ClearUint, g_PS_ClearUint ); {
mIntClearShader = CreateClearShader(device, DXGI_FORMAT_R32G32B32A32_SINT, g_VS_ClearSint, g_PS_ClearSint ); mFloatClearShader = CreateClearShader(device, DXGI_FORMAT_R32G32B32A32_FLOAT, g_VS_ClearFloat, g_PS_ClearFloat_FL9);
}
else
{
mFloatClearShader = CreateClearShader(device, DXGI_FORMAT_R32G32B32A32_FLOAT, g_VS_ClearFloat, g_PS_ClearFloat);
}
if (renderer->isES3Capable())
{
mUintClearShader = CreateClearShader(device, DXGI_FORMAT_R32G32B32A32_UINT, g_VS_ClearUint, g_PS_ClearUint );
mIntClearShader = CreateClearShader(device, DXGI_FORMAT_R32G32B32A32_SINT, g_VS_ClearSint, g_PS_ClearSint );
}
} }
Clear11::~Clear11() Clear11::~Clear11()
...@@ -130,13 +142,16 @@ Clear11::~Clear11() ...@@ -130,13 +142,16 @@ Clear11::~Clear11()
SafeRelease(mFloatClearShader.vertexShader); SafeRelease(mFloatClearShader.vertexShader);
SafeRelease(mFloatClearShader.pixelShader); SafeRelease(mFloatClearShader.pixelShader);
SafeRelease(mUintClearShader.inputLayout); if (mRenderer->isES3Capable())
SafeRelease(mUintClearShader.vertexShader); {
SafeRelease(mUintClearShader.pixelShader); SafeRelease(mUintClearShader.inputLayout);
SafeRelease(mUintClearShader.vertexShader);
SafeRelease(mUintClearShader.pixelShader);
SafeRelease(mIntClearShader.inputLayout); SafeRelease(mIntClearShader.inputLayout);
SafeRelease(mIntClearShader.vertexShader); SafeRelease(mIntClearShader.vertexShader);
SafeRelease(mIntClearShader.pixelShader); SafeRelease(mIntClearShader.pixelShader);
}
for (ClearDepthStencilStateMap::iterator i = mClearDepthStencilStates.begin(); i != mClearDepthStencilStates.end(); i++) for (ClearDepthStencilStateMap::iterator i = mClearDepthStencilStates.begin(); i != mClearDepthStencilStates.end(); i++)
{ {
......
...@@ -211,6 +211,11 @@ Renderer11::Renderer11(egl::Display *display, EGLNativeDisplayType hDc, const eg ...@@ -211,6 +211,11 @@ Renderer11::Renderer11(egl::Display *display, EGLNativeDisplayType hDc, const eg
} }
} }
if (requestedMajorVersion == 9 && requestedMinorVersion == 3)
{
mAvailableFeatureLevels.push_back(D3D_FEATURE_LEVEL_9_3);
}
mDriverType = (attributes.get(EGL_PLATFORM_ANGLE_USE_WARP_ANGLE, EGL_FALSE) == EGL_TRUE) ? D3D_DRIVER_TYPE_WARP mDriverType = (attributes.get(EGL_PLATFORM_ANGLE_USE_WARP_ANGLE, EGL_FALSE) == EGL_TRUE) ? D3D_DRIVER_TYPE_WARP
: D3D_DRIVER_TYPE_HARDWARE; : D3D_DRIVER_TYPE_HARDWARE;
} }
...@@ -452,7 +457,7 @@ int Renderer11::generateConfigs(ConfigDesc **configDescList) ...@@ -452,7 +457,7 @@ int Renderer11::generateConfigs(ConfigDesc **configDescList)
// Before we check mFeatureLevel, we need to ensure that the D3D device has been created. // Before we check mFeatureLevel, we need to ensure that the D3D device has been created.
ASSERT(mDevice != NULL); ASSERT(mDevice != NULL);
newConfig.es2Conformant = (mFeatureLevel >= D3D_FEATURE_LEVEL_10_0); newConfig.es2Conformant = (mFeatureLevel >= D3D_FEATURE_LEVEL_10_0);
newConfig.es3Capable = (mFeatureLevel >= D3D_FEATURE_LEVEL_10_0); newConfig.es3Capable = isES3Capable();
(*configDescList)[numConfigs++] = newConfig; (*configDescList)[numConfigs++] = newConfig;
} }
...@@ -1946,8 +1951,8 @@ std::string Renderer11::getRendererDescription() const ...@@ -1946,8 +1951,8 @@ std::string Renderer11::getRendererDescription() const
rendererString << mDescription; rendererString << mDescription;
rendererString << " Direct3D11"; rendererString << " Direct3D11";
rendererString << " vs_" << getMajorShaderModel() << "_" << getMinorShaderModel(); rendererString << " vs_" << getMajorShaderModel() << "_" << getMinorShaderModel() << getShaderModelSuffix();
rendererString << " ps_" << getMajorShaderModel() << "_" << getMinorShaderModel(); rendererString << " ps_" << getMajorShaderModel() << "_" << getMinorShaderModel() << getShaderModelSuffix();
return rendererString.str(); return rendererString.str();
} }
...@@ -2005,6 +2010,7 @@ int Renderer11::getMajorShaderModel() const ...@@ -2005,6 +2010,7 @@ int Renderer11::getMajorShaderModel() const
case D3D_FEATURE_LEVEL_11_0: return D3D11_SHADER_MAJOR_VERSION; // 5 case D3D_FEATURE_LEVEL_11_0: return D3D11_SHADER_MAJOR_VERSION; // 5
case D3D_FEATURE_LEVEL_10_1: return D3D10_1_SHADER_MAJOR_VERSION; // 4 case D3D_FEATURE_LEVEL_10_1: return D3D10_1_SHADER_MAJOR_VERSION; // 4
case D3D_FEATURE_LEVEL_10_0: return D3D10_SHADER_MAJOR_VERSION; // 4 case D3D_FEATURE_LEVEL_10_0: return D3D10_SHADER_MAJOR_VERSION; // 4
case D3D_FEATURE_LEVEL_9_3: return D3D10_SHADER_MAJOR_VERSION; // 4
default: UNREACHABLE(); return 0; default: UNREACHABLE(); return 0;
} }
} }
...@@ -2016,10 +2022,23 @@ int Renderer11::getMinorShaderModel() const ...@@ -2016,10 +2022,23 @@ int Renderer11::getMinorShaderModel() const
case D3D_FEATURE_LEVEL_11_0: return D3D11_SHADER_MINOR_VERSION; // 0 case D3D_FEATURE_LEVEL_11_0: return D3D11_SHADER_MINOR_VERSION; // 0
case D3D_FEATURE_LEVEL_10_1: return D3D10_1_SHADER_MINOR_VERSION; // 1 case D3D_FEATURE_LEVEL_10_1: return D3D10_1_SHADER_MINOR_VERSION; // 1
case D3D_FEATURE_LEVEL_10_0: return D3D10_SHADER_MINOR_VERSION; // 0 case D3D_FEATURE_LEVEL_10_0: return D3D10_SHADER_MINOR_VERSION; // 0
case D3D_FEATURE_LEVEL_9_3: return D3D10_SHADER_MINOR_VERSION; // 0
default: UNREACHABLE(); return 0; default: UNREACHABLE(); return 0;
} }
} }
std::string Renderer11::getShaderModelSuffix() const
{
switch (mFeatureLevel)
{
case D3D_FEATURE_LEVEL_11_0: return "";
case D3D_FEATURE_LEVEL_10_1: return "";
case D3D_FEATURE_LEVEL_10_0: return "";
case D3D_FEATURE_LEVEL_9_3: return "_level_9_3";
default: UNREACHABLE(); return "";
}
}
int Renderer11::getMinSwapInterval() const int Renderer11::getMinSwapInterval() const
{ {
return 0; return 0;
...@@ -2554,28 +2573,7 @@ gl::Error Renderer11::compileToExecutable(gl::InfoLog &infoLog, const std::strin ...@@ -2554,28 +2573,7 @@ gl::Error Renderer11::compileToExecutable(gl::InfoLog &infoLog, const std::strin
return gl::Error(GL_INVALID_OPERATION); return gl::Error(GL_INVALID_OPERATION);
} }
unsigned int profileMajorVersion = 0; std::string profile = FormatString("%s_%d_%d%s", profileType, getMajorShaderModel(), getMinorShaderModel(), getShaderModelSuffix().c_str());
unsigned int profileMinorVersion = 0;
switch (mFeatureLevel)
{
case D3D_FEATURE_LEVEL_11_0:
profileMajorVersion = 5;
profileMinorVersion = 0;
break;
case D3D_FEATURE_LEVEL_10_1:
profileMajorVersion = 4;
profileMinorVersion = 1;
break;
case D3D_FEATURE_LEVEL_10_0:
profileMajorVersion = 4;
profileMinorVersion = 0;
break;
default:
UNREACHABLE();
return gl::Error(GL_INVALID_OPERATION);
}
std::string profile = FormatString("%s_%u_%u", profileType, profileMajorVersion, profileMinorVersion);
UINT flags = D3DCOMPILE_OPTIMIZATION_LEVEL2; UINT flags = D3DCOMPILE_OPTIMIZATION_LEVEL2;
......
...@@ -213,6 +213,9 @@ class Renderer11 : public RendererD3D ...@@ -213,6 +213,9 @@ class Renderer11 : public RendererD3D
void setShaderResource(gl::SamplerType shaderType, UINT resourceSlot, ID3D11ShaderResourceView *srv); void setShaderResource(gl::SamplerType shaderType, UINT resourceSlot, ID3D11ShaderResourceView *srv);
bool isES3Capable() const { return mFeatureLevel >= D3D_FEATURE_LEVEL_10_0; };
D3D_FEATURE_LEVEL getFeatureLevel() const { return mFeatureLevel; };
private: private:
DISALLOW_COPY_AND_ASSIGN(Renderer11); DISALLOW_COPY_AND_ASSIGN(Renderer11);
...@@ -244,6 +247,7 @@ class Renderer11 : public RendererD3D ...@@ -244,6 +247,7 @@ class Renderer11 : public RendererD3D
void initializeDevice(); void initializeDevice();
void releaseDeviceResources(); void releaseDeviceResources();
int getMinorShaderModel() const; int getMinorShaderModel() const;
std::string getShaderModelSuffix() const;
void release(); void release();
RenderStateCache mStateCache; RenderStateCache mStateCache;
......
...@@ -33,6 +33,23 @@ PS_OutputFloat PS_ClearFloat(in float4 inPosition : SV_POSITION, in float4 inCol ...@@ -33,6 +33,23 @@ PS_OutputFloat PS_ClearFloat(in float4 inPosition : SV_POSITION, in float4 inCol
return outColor; return outColor;
} }
struct PS_OutputFloat_FL9
{
float4 color0 : SV_TARGET0;
float4 color1 : SV_TARGET1;
float4 color2 : SV_TARGET2;
float4 color3 : SV_TARGET3;
};
PS_OutputFloat_FL9 PS_ClearFloat_FL9(in float4 inPosition : SV_POSITION, in float4 inColor : COLOR)
{
PS_OutputFloat_FL9 outColor;
outColor.color0 = inColor;
outColor.color1 = inColor;
outColor.color2 = inColor;
outColor.color3 = inColor;
return outColor;
}
void VS_ClearUint( in float3 inPosition : POSITION, in uint4 inColor : COLOR, void VS_ClearUint( in float3 inPosition : POSITION, in uint4 inColor : COLOR,
out float4 outPosition : SV_POSITION, out uint4 outColor : COLOR) out float4 outPosition : SV_POSITION, out uint4 outColor : COLOR)
......
#if 0
//
// Generated by Microsoft (R) HLSL Shader Compiler 6.3.9600.16384
//
//
//
// Input signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION 0 xyzw 0 POS float
// COLOR 0 xyzw 1 NONE float xyzw
//
//
// Output signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_TARGET 0 xyzw 0 TARGET float xyzw
// SV_TARGET 1 xyzw 1 TARGET float xyzw
// SV_TARGET 2 xyzw 2 TARGET float xyzw
// SV_TARGET 3 xyzw 3 TARGET float xyzw
//
//
// Level9 shader bytecode:
//
ps_2_x
dcl t0
mov oC0, t0
mov oC1, t0
mov oC2, t0
mov oC3, t0
// approximately 4 instruction slots used
ps_4_0
dcl_input_ps linear v1.xyzw
dcl_output o0.xyzw
dcl_output o1.xyzw
dcl_output o2.xyzw
dcl_output o3.xyzw
mov o0.xyzw, v1.xyzw
mov o1.xyzw, v1.xyzw
mov o2.xyzw, v1.xyzw
mov o3.xyzw, v1.xyzw
ret
// Approximately 5 instruction slots used
#endif
const BYTE g_PS_ClearFloat_FL9[] =
{
68, 88, 66, 67, 36, 167,
59, 21, 253, 46, 206, 132,
254, 28, 18, 118, 51, 115,
45, 31, 1, 0, 0, 0,
236, 2, 0, 0, 6, 0,
0, 0, 56, 0, 0, 0,
168, 0, 0, 0, 72, 1,
0, 0, 196, 1, 0, 0,
28, 2, 0, 0, 112, 2,
0, 0, 65, 111, 110, 57,
104, 0, 0, 0, 104, 0,
0, 0, 0, 2, 255, 255,
68, 0, 0, 0, 36, 0,
0, 0, 0, 0, 36, 0,
0, 0, 36, 0, 0, 0,
36, 0, 0, 0, 36, 0,
0, 0, 36, 0, 1, 2,
255, 255, 31, 0, 0, 2,
0, 0, 0, 128, 0, 0,
15, 176, 1, 0, 0, 2,
0, 8, 15, 128, 0, 0,
228, 176, 1, 0, 0, 2,
1, 8, 15, 128, 0, 0,
228, 176, 1, 0, 0, 2,
2, 8, 15, 128, 0, 0,
228, 176, 1, 0, 0, 2,
3, 8, 15, 128, 0, 0,
228, 176, 255, 255, 0, 0,
83, 72, 68, 82, 152, 0,
0, 0, 64, 0, 0, 0,
38, 0, 0, 0, 98, 16,
0, 3, 242, 16, 16, 0,
1, 0, 0, 0, 101, 0,
0, 3, 242, 32, 16, 0,
0, 0, 0, 0, 101, 0,
0, 3, 242, 32, 16, 0,
1, 0, 0, 0, 101, 0,
0, 3, 242, 32, 16, 0,
2, 0, 0, 0, 101, 0,
0, 3, 242, 32, 16, 0,
3, 0, 0, 0, 54, 0,
0, 5, 242, 32, 16, 0,
0, 0, 0, 0, 70, 30,
16, 0, 1, 0, 0, 0,
54, 0, 0, 5, 242, 32,
16, 0, 1, 0, 0, 0,
70, 30, 16, 0, 1, 0,
0, 0, 54, 0, 0, 5,
242, 32, 16, 0, 2, 0,
0, 0, 70, 30, 16, 0,
1, 0, 0, 0, 54, 0,
0, 5, 242, 32, 16, 0,
3, 0, 0, 0, 70, 30,
16, 0, 1, 0, 0, 0,
62, 0, 0, 1, 83, 84,
65, 84, 116, 0, 0, 0,
5, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
5, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 82, 68, 69, 70,
80, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 28, 0,
0, 0, 0, 4, 255, 255,
0, 1, 0, 0, 28, 0,
0, 0, 77, 105, 99, 114,
111, 115, 111, 102, 116, 32,
40, 82, 41, 32, 72, 76,
83, 76, 32, 83, 104, 97,
100, 101, 114, 32, 67, 111,
109, 112, 105, 108, 101, 114,
32, 54, 46, 51, 46, 57,
54, 48, 48, 46, 49, 54,
51, 56, 52, 0, 171, 171,
73, 83, 71, 78, 76, 0,
0, 0, 2, 0, 0, 0,
8, 0, 0, 0, 56, 0,
0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 3, 0,
0, 0, 0, 0, 0, 0,
15, 0, 0, 0, 68, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 1, 0, 0, 0,
15, 15, 0, 0, 83, 86,
95, 80, 79, 83, 73, 84,
73, 79, 78, 0, 67, 79,
76, 79, 82, 0, 171, 171,
79, 83, 71, 78, 116, 0,
0, 0, 4, 0, 0, 0,
8, 0, 0, 0, 104, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 0, 0, 0, 0,
15, 0, 0, 0, 104, 0,
0, 0, 1, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 1, 0, 0, 0,
15, 0, 0, 0, 104, 0,
0, 0, 2, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 2, 0, 0, 0,
15, 0, 0, 0, 104, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 3, 0, 0, 0,
15, 0, 0, 0, 83, 86,
95, 84, 65, 82, 71, 69,
84, 0, 171, 171
};
...@@ -19,6 +19,25 @@ ...@@ -19,6 +19,25 @@
// SV_POSITION 0 xyzw 0 POS float xyzw // SV_POSITION 0 xyzw 0 POS float xyzw
// COLOR 0 xyzw 1 NONE float xyzw // COLOR 0 xyzw 1 NONE float xyzw
// //
//
// Runtime generated constant mappings:
//
// Target Reg Constant Description
// ---------- --------------------------------------------------
// c0 Vertex Shader position offset
//
//
// Level9 shader bytecode:
//
vs_2_x
def c1, 1, 0, 0, 0
dcl_texcoord v0
dcl_texcoord1 v1
add oPos.xy, v0, c0
mad oPos.zw, v0.z, c1.xyxy, c1.xyyx
mov oT0, v1
// approximately 3 instruction slots used
vs_4_0 vs_4_0
dcl_input v0.xyz dcl_input v0.xyz
dcl_input v1.xyzw dcl_input v1.xyzw
...@@ -33,57 +52,41 @@ ret ...@@ -33,57 +52,41 @@ ret
const BYTE g_VS_ClearFloat[] = const BYTE g_VS_ClearFloat[] =
{ {
68, 88, 66, 67, 85, 165, 68, 88, 66, 67, 254, 253,
3, 169, 5, 163, 130, 219, 200, 174, 22, 35, 97, 190,
105, 202, 22, 102, 97, 129, 187, 200, 253, 161, 246, 45,
22, 14, 1, 0, 0, 0, 67, 66, 1, 0, 0, 0,
48, 2, 0, 0, 5, 0, 204, 2, 0, 0, 6, 0,
0, 0, 52, 0, 0, 0,
140, 0, 0, 0, 220, 0,
0, 0, 48, 1, 0, 0,
180, 1, 0, 0, 82, 68,
69, 70, 80, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
28, 0, 0, 0, 0, 4,
254, 255, 0, 1, 0, 0,
28, 0, 0, 0, 77, 105,
99, 114, 111, 115, 111, 102,
116, 32, 40, 82, 41, 32,
72, 76, 83, 76, 32, 83,
104, 97, 100, 101, 114, 32,
67, 111, 109, 112, 105, 108,
101, 114, 32, 54, 46, 51,
46, 57, 54, 48, 48, 46,
49, 54, 51, 56, 52, 0,
171, 171, 73, 83, 71, 78,
72, 0, 0, 0, 2, 0,
0, 0, 8, 0, 0, 0,
56, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 7, 7, 0, 0,
65, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 1, 0,
0, 0, 15, 15, 0, 0,
80, 79, 83, 73, 84, 73,
79, 78, 0, 67, 79, 76,
79, 82, 0, 171, 79, 83,
71, 78, 76, 0, 0, 0,
2, 0, 0, 0, 8, 0,
0, 0, 56, 0, 0, 0, 0, 0, 56, 0, 0, 0,
0, 0, 0, 0, 1, 0, 208, 0, 0, 0, 84, 1,
0, 0, 3, 0, 0, 0, 0, 0, 208, 1, 0, 0,
0, 0, 0, 0, 15, 0, 40, 2, 0, 0, 120, 2,
0, 0, 68, 0, 0, 0, 0, 0, 65, 111, 110, 57,
0, 0, 0, 0, 0, 0, 144, 0, 0, 0, 144, 0,
0, 0, 3, 0, 0, 0, 0, 0, 0, 2, 254, 255,
1, 0, 0, 0, 15, 0, 104, 0, 0, 0, 40, 0,
0, 0, 83, 86, 95, 80, 0, 0, 0, 0, 36, 0,
79, 83, 73, 84, 73, 79, 0, 0, 36, 0, 0, 0,
78, 0, 67, 79, 76, 79, 36, 0, 0, 0, 36, 0,
82, 0, 171, 171, 83, 72, 1, 0, 36, 0, 0, 0,
0, 0, 1, 2, 254, 255,
81, 0, 0, 5, 1, 0,
15, 160, 0, 0, 128, 63,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
31, 0, 0, 2, 5, 0,
0, 128, 0, 0, 15, 144,
31, 0, 0, 2, 5, 0,
1, 128, 1, 0, 15, 144,
2, 0, 0, 3, 0, 0,
3, 192, 0, 0, 228, 144,
0, 0, 228, 160, 4, 0,
0, 4, 0, 0, 12, 192,
0, 0, 170, 144, 1, 0,
68, 160, 1, 0, 20, 160,
1, 0, 0, 2, 0, 0,
15, 224, 1, 0, 228, 144,
255, 255, 0, 0, 83, 72,
68, 82, 124, 0, 0, 0, 68, 82, 124, 0, 0, 0,
64, 0, 1, 0, 31, 0, 64, 0, 1, 0, 31, 0,
0, 0, 95, 0, 0, 3, 0, 0, 95, 0, 0, 3,
...@@ -126,5 +129,47 @@ const BYTE g_VS_ClearFloat[] = ...@@ -126,5 +129,47 @@ const BYTE g_VS_ClearFloat[] =
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0 0, 0, 82, 68, 69, 70,
80, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 28, 0,
0, 0, 0, 4, 254, 255,
0, 1, 0, 0, 28, 0,
0, 0, 77, 105, 99, 114,
111, 115, 111, 102, 116, 32,
40, 82, 41, 32, 72, 76,
83, 76, 32, 83, 104, 97,
100, 101, 114, 32, 67, 111,
109, 112, 105, 108, 101, 114,
32, 54, 46, 51, 46, 57,
54, 48, 48, 46, 49, 54,
51, 56, 52, 0, 171, 171,
73, 83, 71, 78, 72, 0,
0, 0, 2, 0, 0, 0,
8, 0, 0, 0, 56, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 0, 0, 0, 0,
7, 7, 0, 0, 65, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 1, 0, 0, 0,
15, 15, 0, 0, 80, 79,
83, 73, 84, 73, 79, 78,
0, 67, 79, 76, 79, 82,
0, 171, 79, 83, 71, 78,
76, 0, 0, 0, 2, 0,
0, 0, 8, 0, 0, 0,
56, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 15, 0, 0, 0,
68, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 1, 0,
0, 0, 15, 0, 0, 0,
83, 86, 95, 80, 79, 83,
73, 84, 73, 79, 78, 0,
67, 79, 76, 79, 82, 0,
171, 171
}; };
...@@ -19,6 +19,25 @@ ...@@ -19,6 +19,25 @@
// SV_POSITION 0 xyzw 0 POS float xyzw // SV_POSITION 0 xyzw 0 POS float xyzw
// TEXCOORD 0 xy 1 NONE float xy // TEXCOORD 0 xy 1 NONE float xy
// //
//
// Runtime generated constant mappings:
//
// Target Reg Constant Description
// ---------- --------------------------------------------------
// c0 Vertex Shader position offset
//
//
// Level9 shader bytecode:
//
vs_2_x
def c1, 0, 1, 0, 0
dcl_texcoord v0
dcl_texcoord1 v1
add oPos.xy, v0, c0
mov oPos.zw, c1.xyxy
mov oT0.xy, v1
// approximately 3 instruction slots used
vs_4_0 vs_4_0
dcl_input v0.xy dcl_input v0.xy
dcl_input v1.xy dcl_input v1.xy
...@@ -33,101 +52,126 @@ ret ...@@ -33,101 +52,126 @@ ret
const BYTE g_VS_Passthrough2D[] = const BYTE g_VS_Passthrough2D[] =
{ {
68, 88, 66, 67, 59, 144, 68, 88, 66, 67, 230, 95,
40, 56, 193, 225, 103, 172, 115, 230, 65, 211, 74, 82,
109, 148, 29, 253, 61, 192, 143, 170, 109, 175, 63, 210,
251, 250, 1, 0, 0, 0, 14, 229, 1, 0, 0, 0,
68, 2, 0, 0, 5, 0, 216, 2, 0, 0, 6, 0,
0, 0, 52, 0, 0, 0, 0, 0, 56, 0, 0, 0,
140, 0, 0, 0, 224, 0, 200, 0, 0, 0, 88, 1,
0, 0, 56, 1, 0, 0, 0, 0, 212, 1, 0, 0,
200, 1, 0, 0, 82, 68, 44, 2, 0, 0, 128, 2,
69, 70, 80, 0, 0, 0, 0, 0, 65, 111, 110, 57,
0, 0, 0, 0, 0, 0, 136, 0, 0, 0, 136, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 254, 255,
28, 0, 0, 0, 0, 4, 96, 0, 0, 0, 40, 0,
254, 255, 0, 1, 0, 0, 0, 0, 0, 0, 36, 0,
28, 0, 0, 0, 77, 105, 0, 0, 36, 0, 0, 0,
99, 114, 111, 115, 111, 102, 36, 0, 0, 0, 36, 0,
116, 32, 40, 82, 41, 32, 1, 0, 36, 0, 0, 0,
72, 76, 83, 76, 32, 83, 0, 0, 1, 2, 254, 255,
104, 97, 100, 101, 114, 32, 81, 0, 0, 5, 1, 0,
67, 111, 109, 112, 105, 108, 15, 160, 0, 0, 0, 0,
101, 114, 32, 54, 46, 51, 0, 0, 128, 63, 0, 0,
46, 57, 54, 48, 48, 46, 0, 0, 0, 0, 0, 0,
49, 54, 51, 56, 52, 0, 31, 0, 0, 2, 5, 0,
171, 171, 73, 83, 71, 78, 0, 128, 0, 0, 15, 144,
76, 0, 0, 0, 2, 0, 31, 0, 0, 2, 5, 0,
0, 0, 8, 0, 0, 0, 1, 128, 1, 0, 15, 144,
56, 0, 0, 0, 0, 0, 2, 0, 0, 3, 0, 0,
0, 0, 0, 0, 0, 0, 3, 192, 0, 0, 228, 144,
3, 0, 0, 0, 0, 0, 0, 0, 228, 160, 1, 0,
0, 0, 3, 3, 0, 0, 0, 2, 0, 0, 12, 192,
65, 0, 0, 0, 0, 0, 1, 0, 68, 160, 1, 0,
0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 3, 224,
3, 0, 0, 0, 1, 0, 1, 0, 228, 144, 255, 255,
0, 0, 3, 3, 0, 0, 0, 0, 83, 72, 68, 82,
80, 79, 83, 73, 84, 73, 136, 0, 0, 0, 64, 0,
79, 78, 0, 84, 69, 88, 1, 0, 34, 0, 0, 0,
67, 79, 79, 82, 68, 0, 95, 0, 0, 3, 50, 16,
171, 171, 79, 83, 71, 78, 16, 0, 0, 0, 0, 0,
80, 0, 0, 0, 2, 0, 95, 0, 0, 3, 50, 16,
0, 0, 8, 0, 0, 0, 16, 0, 1, 0, 0, 0,
56, 0, 0, 0, 0, 0, 103, 0, 0, 4, 242, 32,
0, 0, 1, 0, 0, 0, 16, 0, 0, 0, 0, 0,
3, 0, 0, 0, 0, 0, 1, 0, 0, 0, 101, 0,
0, 0, 15, 0, 0, 0, 0, 3, 50, 32, 16, 0,
68, 0, 0, 0, 0, 0, 1, 0, 0, 0, 54, 0,
0, 0, 0, 0, 0, 0, 0, 5, 50, 32, 16, 0,
3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 70, 16,
0, 0, 3, 12, 0, 0, 16, 0, 0, 0, 0, 0,
83, 86, 95, 80, 79, 83, 54, 0, 0, 8, 194, 32,
73, 84, 73, 79, 78, 0, 16, 0, 0, 0, 0, 0,
84, 69, 88, 67, 79, 79, 2, 64, 0, 0, 0, 0,
82, 68, 0, 171, 171, 171, 0, 0, 0, 0, 0, 0,
83, 72, 68, 82, 136, 0, 0, 0, 0, 0, 0, 0,
0, 0, 64, 0, 1, 0, 128, 63, 54, 0, 0, 5,
34, 0, 0, 0, 95, 0,
0, 3, 50, 16, 16, 0,
0, 0, 0, 0, 95, 0,
0, 3, 50, 16, 16, 0,
1, 0, 0, 0, 103, 0,
0, 4, 242, 32, 16, 0,
0, 0, 0, 0, 1, 0,
0, 0, 101, 0, 0, 3,
50, 32, 16, 0, 1, 0, 50, 32, 16, 0, 1, 0,
0, 0, 54, 0, 0, 5,
50, 32, 16, 0, 0, 0,
0, 0, 70, 16, 16, 0, 0, 0, 70, 16, 16, 0,
0, 0, 0, 0, 54, 0, 1, 0, 0, 0, 62, 0,
0, 8, 194, 32, 16, 0, 0, 1, 83, 84, 65, 84,
0, 0, 0, 0, 2, 64, 116, 0, 0, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 128, 63,
54, 0, 0, 5, 50, 32,
16, 0, 1, 0, 0, 0,
70, 16, 16, 0, 1, 0,
0, 0, 62, 0, 0, 1,
83, 84, 65, 84, 116, 0,
0, 0, 4, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 4, 0, 0, 0, 0, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
82, 68, 69, 70, 80, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0 0, 0, 28, 0, 0, 0,
0, 4, 254, 255, 0, 1,
0, 0, 28, 0, 0, 0,
77, 105, 99, 114, 111, 115,
111, 102, 116, 32, 40, 82,
41, 32, 72, 76, 83, 76,
32, 83, 104, 97, 100, 101,
114, 32, 67, 111, 109, 112,
105, 108, 101, 114, 32, 54,
46, 51, 46, 57, 54, 48,
48, 46, 49, 54, 51, 56,
52, 0, 171, 171, 73, 83,
71, 78, 76, 0, 0, 0,
2, 0, 0, 0, 8, 0,
0, 0, 56, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 3, 3,
0, 0, 65, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 3, 0, 0, 0,
1, 0, 0, 0, 3, 3,
0, 0, 80, 79, 83, 73,
84, 73, 79, 78, 0, 84,
69, 88, 67, 79, 79, 82,
68, 0, 171, 171, 79, 83,
71, 78, 80, 0, 0, 0,
2, 0, 0, 0, 8, 0,
0, 0, 56, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 15, 0,
0, 0, 68, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 3, 0, 0, 0,
1, 0, 0, 0, 3, 12,
0, 0, 83, 86, 95, 80,
79, 83, 73, 84, 73, 79,
78, 0, 84, 69, 88, 67,
79, 79, 82, 68, 0, 171,
171, 171
}; };
...@@ -26,6 +26,25 @@ ...@@ -26,6 +26,25 @@
// -------------------- ----- ------ -------- -------- ------- ------ // -------------------- ----- ------ -------- -------- ------- ------
// SV_TARGET 0 xyzw 0 TARGET float xyzw // SV_TARGET 0 xyzw 0 TARGET float xyzw
// //
//
// Sampler/Resource to DX9 shader sampler mappings:
//
// Target Sampler Source Sampler Source Resource
// -------------- --------------- ----------------
// s0 s0 t0
//
//
// Level9 shader bytecode:
//
ps_2_x
def c0, 1, 0, 0, 0
dcl t0.xy
dcl_2d s0
texld r0, t0, s0
mad r0, r0.x, c0.xxxy, c0.yyyx
mov oC0, r0
// approximately 3 instruction slots used (1 texture, 2 arithmetic)
ps_4_0 ps_4_0
dcl_sampler s0, mode_default dcl_sampler s0, mode_default
dcl_resource_texture2d (float,float,float,float) t0 dcl_resource_texture2d (float,float,float,float) t0
...@@ -41,111 +60,137 @@ ret ...@@ -41,111 +60,137 @@ ret
const BYTE g_PS_PassthroughLum2D[] = const BYTE g_PS_PassthroughLum2D[] =
{ {
68, 88, 66, 67, 225, 120, 68, 88, 66, 67, 144, 18,
216, 91, 220, 177, 192, 153, 242, 89, 150, 125, 18, 219,
157, 197, 41, 213, 46, 45, 193, 196, 127, 207, 14, 165,
168, 141, 1, 0, 0, 0, 198, 119, 1, 0, 0, 0,
128, 2, 0, 0, 5, 0, 28, 3, 0, 0, 6, 0,
0, 0, 52, 0, 0, 0,
220, 0, 0, 0, 52, 1,
0, 0, 104, 1, 0, 0,
4, 2, 0, 0, 82, 68,
69, 70, 160, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 2, 0, 0, 0,
28, 0, 0, 0, 0, 4,
255, 255, 0, 1, 0, 0,
109, 0, 0, 0, 92, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 1, 0, 0, 0,
100, 0, 0, 0, 2, 0,
0, 0, 5, 0, 0, 0,
4, 0, 0, 0, 255, 255,
255, 255, 0, 0, 0, 0,
1, 0, 0, 0, 13, 0,
0, 0, 83, 97, 109, 112,
108, 101, 114, 0, 84, 101,
120, 116, 117, 114, 101, 70,
0, 77, 105, 99, 114, 111,
115, 111, 102, 116, 32, 40,
82, 41, 32, 72, 76, 83,
76, 32, 83, 104, 97, 100,
101, 114, 32, 67, 111, 109,
112, 105, 108, 101, 114, 32,
54, 46, 51, 46, 57, 54,
48, 48, 46, 49, 54, 51,
56, 52, 0, 171, 73, 83,
71, 78, 80, 0, 0, 0,
2, 0, 0, 0, 8, 0,
0, 0, 56, 0, 0, 0, 0, 0, 56, 0, 0, 0,
0, 0, 0, 0, 1, 0, 208, 0, 0, 0, 108, 1,
0, 0, 3, 0, 0, 0, 0, 0, 232, 1, 0, 0,
0, 0, 0, 0, 15, 0, 144, 2, 0, 0, 232, 2,
0, 0, 68, 0, 0, 0, 0, 0, 65, 111, 110, 57,
0, 0, 0, 0, 0, 0, 144, 0, 0, 0, 144, 0,
0, 0, 3, 0, 0, 0, 0, 0, 0, 2, 255, 255,
1, 0, 0, 0, 3, 3, 104, 0, 0, 0, 40, 0,
0, 0, 83, 86, 95, 80, 0, 0, 0, 0, 40, 0,
79, 83, 73, 84, 73, 79, 0, 0, 40, 0, 0, 0,
78, 0, 84, 69, 88, 67, 40, 0, 1, 0, 36, 0,
79, 79, 82, 68, 0, 171, 0, 0, 40, 0, 0, 0,
171, 171, 79, 83, 71, 78, 0, 0, 1, 2, 255, 255,
44, 0, 0, 0, 1, 0, 81, 0, 0, 5, 0, 0,
0, 0, 8, 0, 0, 0, 15, 160, 0, 0, 128, 63,
32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 0, 0, 31, 0, 0, 2, 0, 0,
0, 0, 15, 0, 0, 0, 0, 128, 0, 0, 3, 176,
83, 86, 95, 84, 65, 82, 31, 0, 0, 2, 0, 0,
71, 69, 84, 0, 171, 171, 0, 144, 0, 8, 15, 160,
83, 72, 68, 82, 148, 0, 66, 0, 0, 3, 0, 0,
0, 0, 64, 0, 0, 0, 15, 128, 0, 0, 228, 176,
37, 0, 0, 0, 90, 0, 0, 8, 228, 160, 4, 0,
0, 3, 0, 96, 16, 0, 0, 4, 0, 0, 15, 128,
0, 0, 0, 0, 88, 24, 0, 0, 0, 128, 0, 0,
0, 4, 0, 112, 16, 0, 64, 160, 0, 0, 21, 160,
0, 0, 0, 0, 85, 85, 1, 0, 0, 2, 0, 8,
0, 0, 98, 16, 0, 3, 15, 128, 0, 0, 228, 128,
50, 16, 16, 0, 1, 0, 255, 255, 0, 0, 83, 72,
0, 0, 101, 0, 0, 3, 68, 82, 148, 0, 0, 0,
242, 32, 16, 0, 0, 0, 64, 0, 0, 0, 37, 0,
0, 0, 104, 0, 0, 2, 0, 0, 90, 0, 0, 3,
1, 0, 0, 0, 69, 0, 0, 96, 16, 0, 0, 0,
0, 9, 242, 0, 16, 0, 0, 0, 88, 24, 0, 4,
0, 0, 0, 0, 70, 16, 0, 112, 16, 0, 0, 0,
0, 0, 85, 85, 0, 0,
98, 16, 0, 3, 50, 16,
16, 0, 1, 0, 0, 0, 16, 0, 1, 0, 0, 0,
70, 126, 16, 0, 0, 0, 101, 0, 0, 3, 242, 32,
0, 0, 0, 96, 16, 0,
0, 0, 0, 0, 54, 0,
0, 5, 114, 32, 16, 0,
0, 0, 0, 0, 6, 0,
16, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0,
54, 0, 0, 5, 130, 32, 104, 0, 0, 2, 1, 0,
0, 0, 69, 0, 0, 9,
242, 0, 16, 0, 0, 0,
0, 0, 70, 16, 16, 0,
1, 0, 0, 0, 70, 126,
16, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0,
1, 64, 0, 0, 0, 0, 0, 96, 16, 0, 0, 0,
128, 63, 62, 0, 0, 1, 0, 0, 54, 0, 0, 5,
83, 84, 65, 84, 116, 0, 114, 32, 16, 0, 0, 0,
0, 0, 4, 0, 0, 0, 0, 0, 6, 0, 16, 0,
1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, 0,
0, 0, 2, 0, 0, 0, 0, 5, 130, 32, 16, 0,
0, 0, 0, 0, 1, 64,
0, 0, 0, 0, 128, 63,
62, 0, 0, 1, 83, 84,
65, 84, 116, 0, 0, 0,
4, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 82, 68, 69, 70,
160, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 28, 0,
0, 0, 0, 4, 255, 255,
0, 1, 0, 0, 109, 0,
0, 0, 92, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
1, 0, 0, 0, 100, 0,
0, 0, 2, 0, 0, 0,
5, 0, 0, 0, 4, 0,
0, 0, 255, 255, 255, 255,
0, 0, 0, 0, 1, 0,
0, 0, 13, 0, 0, 0,
83, 97, 109, 112, 108, 101,
114, 0, 84, 101, 120, 116,
117, 114, 101, 70, 0, 77,
105, 99, 114, 111, 115, 111,
102, 116, 32, 40, 82, 41,
32, 72, 76, 83, 76, 32,
83, 104, 97, 100, 101, 114,
32, 67, 111, 109, 112, 105,
108, 101, 114, 32, 54, 46,
51, 46, 57, 54, 48, 48,
46, 49, 54, 51, 56, 52,
0, 171, 73, 83, 71, 78,
80, 0, 0, 0, 2, 0,
0, 0, 8, 0, 0, 0,
56, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 15, 0, 0, 0,
68, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 1, 0,
0, 0, 3, 3, 0, 0,
83, 86, 95, 80, 79, 83,
73, 84, 73, 79, 78, 0,
84, 69, 88, 67, 79, 79,
82, 68, 0, 171, 171, 171,
79, 83, 71, 78, 44, 0,
0, 0, 1, 0, 0, 0,
8, 0, 0, 0, 32, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0 15, 0, 0, 0, 83, 86,
95, 84, 65, 82, 71, 69,
84, 0, 171, 171
}; };
...@@ -26,6 +26,24 @@ ...@@ -26,6 +26,24 @@
// -------------------- ----- ------ -------- -------- ------- ------ // -------------------- ----- ------ -------- -------- ------- ------
// SV_TARGET 0 xyzw 0 TARGET float xyzw // SV_TARGET 0 xyzw 0 TARGET float xyzw
// //
//
// Sampler/Resource to DX9 shader sampler mappings:
//
// Target Sampler Source Sampler Source Resource
// -------------- --------------- ----------------
// s0 s0 t0
//
//
// Level9 shader bytecode:
//
ps_2_x
dcl t0.xy
dcl_2d s0
texld r0, t0, s0
mov r0, r0.xxxw
mov oC0, r0
// approximately 3 instruction slots used (1 texture, 2 arithmetic)
ps_4_0 ps_4_0
dcl_sampler s0, mode_default dcl_sampler s0, mode_default
dcl_resource_texture2d (float,float,float,float) t0 dcl_resource_texture2d (float,float,float,float) t0
...@@ -40,15 +58,79 @@ ret ...@@ -40,15 +58,79 @@ ret
const BYTE g_PS_PassthroughLumAlpha2D[] = const BYTE g_PS_PassthroughLumAlpha2D[] =
{ {
68, 88, 66, 67, 5, 22, 68, 88, 66, 67, 246, 240,
73, 236, 78, 181, 30, 23, 158, 208, 214, 197, 166, 221,
193, 15, 96, 129, 149, 136, 45, 58, 235, 164, 12, 157,
254, 138, 1, 0, 0, 0, 62, 31, 1, 0, 0, 0,
108, 2, 0, 0, 5, 0, 232, 2, 0, 0, 6, 0,
0, 0, 52, 0, 0, 0, 0, 0, 56, 0, 0, 0,
220, 0, 0, 0, 52, 1, 176, 0, 0, 0, 56, 1,
0, 0, 104, 1, 0, 0, 0, 0, 180, 1, 0, 0,
240, 1, 0, 0, 82, 68, 92, 2, 0, 0, 180, 2,
0, 0, 65, 111, 110, 57,
112, 0, 0, 0, 112, 0,
0, 0, 0, 2, 255, 255,
72, 0, 0, 0, 40, 0,
0, 0, 0, 0, 40, 0,
0, 0, 40, 0, 0, 0,
40, 0, 1, 0, 36, 0,
0, 0, 40, 0, 0, 0,
0, 0, 1, 2, 255, 255,
31, 0, 0, 2, 0, 0,
0, 128, 0, 0, 3, 176,
31, 0, 0, 2, 0, 0,
0, 144, 0, 8, 15, 160,
66, 0, 0, 3, 0, 0,
15, 128, 0, 0, 228, 176,
0, 8, 228, 160, 1, 0,
0, 2, 0, 0, 15, 128,
0, 0, 192, 128, 1, 0,
0, 2, 0, 8, 15, 128,
0, 0, 228, 128, 255, 255,
0, 0, 83, 72, 68, 82,
128, 0, 0, 0, 64, 0,
0, 0, 32, 0, 0, 0,
90, 0, 0, 3, 0, 96,
16, 0, 0, 0, 0, 0,
88, 24, 0, 4, 0, 112,
16, 0, 0, 0, 0, 0,
85, 85, 0, 0, 98, 16,
0, 3, 50, 16, 16, 0,
1, 0, 0, 0, 101, 0,
0, 3, 242, 32, 16, 0,
0, 0, 0, 0, 104, 0,
0, 2, 1, 0, 0, 0,
69, 0, 0, 9, 242, 0,
16, 0, 0, 0, 0, 0,
70, 16, 16, 0, 1, 0,
0, 0, 70, 126, 16, 0,
0, 0, 0, 0, 0, 96,
16, 0, 0, 0, 0, 0,
54, 0, 0, 5, 242, 32,
16, 0, 0, 0, 0, 0,
6, 12, 16, 0, 0, 0,
0, 0, 62, 0, 0, 1,
83, 84, 65, 84, 116, 0,
0, 0, 3, 0, 0, 0,
1, 0, 0, 0, 0, 0,
0, 0, 2, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 82, 68,
69, 70, 160, 0, 0, 0, 69, 70, 160, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0,
...@@ -99,49 +181,5 @@ const BYTE g_PS_PassthroughLumAlpha2D[] = ...@@ -99,49 +181,5 @@ const BYTE g_PS_PassthroughLumAlpha2D[] =
3, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0,
0, 0, 15, 0, 0, 0, 0, 0, 15, 0, 0, 0,
83, 86, 95, 84, 65, 82, 83, 86, 95, 84, 65, 82,
71, 69, 84, 0, 171, 171, 71, 69, 84, 0, 171, 171
83, 72, 68, 82, 128, 0,
0, 0, 64, 0, 0, 0,
32, 0, 0, 0, 90, 0,
0, 3, 0, 96, 16, 0,
0, 0, 0, 0, 88, 24,
0, 4, 0, 112, 16, 0,
0, 0, 0, 0, 85, 85,
0, 0, 98, 16, 0, 3,
50, 16, 16, 0, 1, 0,
0, 0, 101, 0, 0, 3,
242, 32, 16, 0, 0, 0,
0, 0, 104, 0, 0, 2,
1, 0, 0, 0, 69, 0,
0, 9, 242, 0, 16, 0,
0, 0, 0, 0, 70, 16,
16, 0, 1, 0, 0, 0,
70, 126, 16, 0, 0, 0,
0, 0, 0, 96, 16, 0,
0, 0, 0, 0, 54, 0,
0, 5, 242, 32, 16, 0,
0, 0, 0, 0, 6, 12,
16, 0, 0, 0, 0, 0,
62, 0, 0, 1, 83, 84,
65, 84, 116, 0, 0, 0,
3, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0
}; };
...@@ -26,6 +26,25 @@ ...@@ -26,6 +26,25 @@
// -------------------- ----- ------ -------- -------- ------- ------ // -------------------- ----- ------ -------- -------- ------- ------
// SV_TARGET 0 xyzw 0 TARGET float xyzw // SV_TARGET 0 xyzw 0 TARGET float xyzw
// //
//
// Sampler/Resource to DX9 shader sampler mappings:
//
// Target Sampler Source Sampler Source Resource
// -------------- --------------- ----------------
// s0 s0 t0
//
//
// Level9 shader bytecode:
//
ps_2_x
def c0, 1, 0, 0, 0
dcl t0.xy
dcl_2d s0
texld r0, t0, s0
mad r0, r0.x, c0.xyyy, c0.yyyx
mov oC0, r0
// approximately 3 instruction slots used (1 texture, 2 arithmetic)
ps_4_0 ps_4_0
dcl_sampler s0, mode_default dcl_sampler s0, mode_default
dcl_resource_texture2d (float,float,float,float) t0 dcl_resource_texture2d (float,float,float,float) t0
...@@ -41,113 +60,139 @@ ret ...@@ -41,113 +60,139 @@ ret
const BYTE g_PS_PassthroughR2D[] = const BYTE g_PS_PassthroughR2D[] =
{ {
68, 88, 66, 67, 176, 145, 68, 88, 66, 67, 212, 251,
90, 98, 155, 129, 175, 151, 117, 250, 99, 185, 28, 44,
94, 218, 2, 240, 125, 79, 178, 14, 83, 133, 173, 0,
115, 199, 1, 0, 0, 0, 182, 196, 1, 0, 0, 0,
140, 2, 0, 0, 5, 0, 40, 3, 0, 0, 6, 0,
0, 0, 52, 0, 0, 0, 0, 0, 56, 0, 0, 0,
220, 0, 0, 0, 52, 1, 208, 0, 0, 0, 120, 1,
0, 0, 104, 1, 0, 0, 0, 0, 244, 1, 0, 0,
16, 2, 0, 0, 82, 68, 156, 2, 0, 0, 244, 2,
69, 70, 160, 0, 0, 0, 0, 0, 65, 111, 110, 57,
144, 0, 0, 0, 144, 0,
0, 0, 0, 2, 255, 255,
104, 0, 0, 0, 40, 0,
0, 0, 0, 0, 40, 0,
0, 0, 40, 0, 0, 0,
40, 0, 1, 0, 36, 0,
0, 0, 40, 0, 0, 0,
0, 0, 1, 2, 255, 255,
81, 0, 0, 5, 0, 0,
15, 160, 0, 0, 128, 63,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
31, 0, 0, 2, 0, 0,
0, 128, 0, 0, 3, 176,
31, 0, 0, 2, 0, 0,
0, 144, 0, 8, 15, 160,
66, 0, 0, 3, 0, 0,
15, 128, 0, 0, 228, 176,
0, 8, 228, 160, 4, 0,
0, 4, 0, 0, 15, 128,
0, 0, 0, 128, 0, 0,
84, 160, 0, 0, 21, 160,
1, 0, 0, 2, 0, 8,
15, 128, 0, 0, 228, 128,
255, 255, 0, 0, 83, 72,
68, 82, 160, 0, 0, 0,
64, 0, 0, 0, 40, 0,
0, 0, 90, 0, 0, 3,
0, 96, 16, 0, 0, 0,
0, 0, 88, 24, 0, 4,
0, 112, 16, 0, 0, 0,
0, 0, 85, 85, 0, 0,
98, 16, 0, 3, 50, 16,
16, 0, 1, 0, 0, 0,
101, 0, 0, 3, 242, 32,
16, 0, 0, 0, 0, 0,
104, 0, 0, 2, 1, 0,
0, 0, 69, 0, 0, 9,
242, 0, 16, 0, 0, 0,
0, 0, 70, 16, 16, 0,
1, 0, 0, 0, 70, 126,
16, 0, 0, 0, 0, 0,
0, 96, 16, 0, 0, 0,
0, 0, 54, 0, 0, 5,
18, 32, 16, 0, 0, 0,
0, 0, 10, 0, 16, 0,
0, 0, 0, 0, 54, 0,
0, 8, 226, 32, 16, 0,
0, 0, 0, 0, 2, 64,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2, 0, 0, 0,
28, 0, 0, 0, 0, 4,
255, 255, 0, 1, 0, 0,
109, 0, 0, 0, 92, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 128, 63,
62, 0, 0, 1, 83, 84,
65, 84, 116, 0, 0, 0,
4, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0,
0, 0, 1, 0, 0, 0,
100, 0, 0, 0, 2, 0,
0, 0, 5, 0, 0, 0,
4, 0, 0, 0, 255, 255,
255, 255, 0, 0, 0, 0,
1, 0, 0, 0, 13, 0,
0, 0, 83, 97, 109, 112,
108, 101, 114, 0, 84, 101,
120, 116, 117, 114, 101, 70,
0, 77, 105, 99, 114, 111,
115, 111, 102, 116, 32, 40,
82, 41, 32, 72, 76, 83,
76, 32, 83, 104, 97, 100,
101, 114, 32, 67, 111, 109,
112, 105, 108, 101, 114, 32,
54, 46, 51, 46, 57, 54,
48, 48, 46, 49, 54, 51,
56, 52, 0, 171, 73, 83,
71, 78, 80, 0, 0, 0,
2, 0, 0, 0, 8, 0,
0, 0, 56, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 15, 0,
0, 0, 68, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 3, 0, 0, 0,
1, 0, 0, 0, 3, 3,
0, 0, 83, 86, 95, 80,
79, 83, 73, 84, 73, 79,
78, 0, 84, 69, 88, 67,
79, 79, 82, 68, 0, 171,
171, 171, 79, 83, 71, 78,
44, 0, 0, 0, 1, 0,
0, 0, 8, 0, 0, 0,
32, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 15, 0, 0, 0,
83, 86, 95, 84, 65, 82,
71, 69, 84, 0, 171, 171,
83, 72, 68, 82, 160, 0,
0, 0, 64, 0, 0, 0,
40, 0, 0, 0, 90, 0,
0, 3, 0, 96, 16, 0,
0, 0, 0, 0, 88, 24,
0, 4, 0, 112, 16, 0,
0, 0, 0, 0, 85, 85,
0, 0, 98, 16, 0, 3,
50, 16, 16, 0, 1, 0,
0, 0, 101, 0, 0, 3,
242, 32, 16, 0, 0, 0,
0, 0, 104, 0, 0, 2,
1, 0, 0, 0, 69, 0,
0, 9, 242, 0, 16, 0,
0, 0, 0, 0, 70, 16,
16, 0, 1, 0, 0, 0,
70, 126, 16, 0, 0, 0,
0, 0, 0, 96, 16, 0,
0, 0, 0, 0, 54, 0,
0, 5, 18, 32, 16, 0,
0, 0, 0, 0, 10, 0,
16, 0, 0, 0, 0, 0,
54, 0, 0, 8, 226, 32,
16, 0, 0, 0, 0, 0,
2, 64, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
128, 63, 62, 0, 0, 1,
83, 84, 65, 84, 116, 0,
0, 0, 4, 0, 0, 0,
1, 0, 0, 0, 0, 0,
0, 0, 2, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 82, 68, 69, 70,
160, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 28, 0,
0, 0, 0, 4, 255, 255,
0, 1, 0, 0, 109, 0,
0, 0, 92, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
1, 0, 0, 0, 100, 0,
0, 0, 2, 0, 0, 0,
5, 0, 0, 0, 4, 0,
0, 0, 255, 255, 255, 255,
0, 0, 0, 0, 1, 0,
0, 0, 13, 0, 0, 0,
83, 97, 109, 112, 108, 101,
114, 0, 84, 101, 120, 116,
117, 114, 101, 70, 0, 77,
105, 99, 114, 111, 115, 111,
102, 116, 32, 40, 82, 41,
32, 72, 76, 83, 76, 32,
83, 104, 97, 100, 101, 114,
32, 67, 111, 109, 112, 105,
108, 101, 114, 32, 54, 46,
51, 46, 57, 54, 48, 48,
46, 49, 54, 51, 56, 52,
0, 171, 73, 83, 71, 78,
80, 0, 0, 0, 2, 0,
0, 0, 8, 0, 0, 0,
56, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 15, 0, 0, 0,
68, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 1, 0,
0, 0, 3, 3, 0, 0,
83, 86, 95, 80, 79, 83,
73, 84, 73, 79, 78, 0,
84, 69, 88, 67, 79, 79,
82, 68, 0, 171, 171, 171,
79, 83, 71, 78, 44, 0,
0, 0, 1, 0, 0, 0,
8, 0, 0, 0, 32, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0 15, 0, 0, 0, 83, 86,
95, 84, 65, 82, 71, 69,
84, 0, 171, 171
}; };
...@@ -26,6 +26,25 @@ ...@@ -26,6 +26,25 @@
// -------------------- ----- ------ -------- -------- ------- ------ // -------------------- ----- ------ -------- -------- ------- ------
// SV_TARGET 0 xyzw 0 TARGET float xyzw // SV_TARGET 0 xyzw 0 TARGET float xyzw
// //
//
// Sampler/Resource to DX9 shader sampler mappings:
//
// Target Sampler Source Sampler Source Resource
// -------------- --------------- ----------------
// s0 s0 t0
//
//
// Level9 shader bytecode:
//
ps_2_x
def c0, 1, 0, 0, 0
dcl t0.xy
dcl_2d s0
texld r0, t0, s0
mad r0, r0.xyxx, c0.xxyy, c0.yyyx
mov oC0, r0
// approximately 3 instruction slots used (1 texture, 2 arithmetic)
ps_4_0 ps_4_0
dcl_sampler s0, mode_default dcl_sampler s0, mode_default
dcl_resource_texture2d (float,float,float,float) t0 dcl_resource_texture2d (float,float,float,float) t0
...@@ -41,113 +60,139 @@ ret ...@@ -41,113 +60,139 @@ ret
const BYTE g_PS_PassthroughRG2D[] = const BYTE g_PS_PassthroughRG2D[] =
{ {
68, 88, 66, 67, 231, 234, 68, 88, 66, 67, 217, 171,
158, 180, 205, 19, 229, 140, 153, 248, 26, 15, 102, 119,
166, 144, 96, 164, 146, 223, 86, 174, 121, 245, 223, 83,
67, 146, 1, 0, 0, 0, 2, 181, 1, 0, 0, 0,
140, 2, 0, 0, 5, 0, 40, 3, 0, 0, 6, 0,
0, 0, 52, 0, 0, 0, 0, 0, 56, 0, 0, 0,
220, 0, 0, 0, 52, 1, 208, 0, 0, 0, 120, 1,
0, 0, 104, 1, 0, 0, 0, 0, 244, 1, 0, 0,
16, 2, 0, 0, 82, 68, 156, 2, 0, 0, 244, 2,
69, 70, 160, 0, 0, 0, 0, 0, 65, 111, 110, 57,
144, 0, 0, 0, 144, 0,
0, 0, 0, 2, 255, 255,
104, 0, 0, 0, 40, 0,
0, 0, 0, 0, 40, 0,
0, 0, 40, 0, 0, 0,
40, 0, 1, 0, 36, 0,
0, 0, 40, 0, 0, 0,
0, 0, 1, 2, 255, 255,
81, 0, 0, 5, 0, 0,
15, 160, 0, 0, 128, 63,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
31, 0, 0, 2, 0, 0,
0, 128, 0, 0, 3, 176,
31, 0, 0, 2, 0, 0,
0, 144, 0, 8, 15, 160,
66, 0, 0, 3, 0, 0,
15, 128, 0, 0, 228, 176,
0, 8, 228, 160, 4, 0,
0, 4, 0, 0, 15, 128,
0, 0, 4, 128, 0, 0,
80, 160, 0, 0, 21, 160,
1, 0, 0, 2, 0, 8,
15, 128, 0, 0, 228, 128,
255, 255, 0, 0, 83, 72,
68, 82, 160, 0, 0, 0,
64, 0, 0, 0, 40, 0,
0, 0, 90, 0, 0, 3,
0, 96, 16, 0, 0, 0,
0, 0, 88, 24, 0, 4,
0, 112, 16, 0, 0, 0,
0, 0, 85, 85, 0, 0,
98, 16, 0, 3, 50, 16,
16, 0, 1, 0, 0, 0,
101, 0, 0, 3, 242, 32,
16, 0, 0, 0, 0, 0,
104, 0, 0, 2, 1, 0,
0, 0, 69, 0, 0, 9,
242, 0, 16, 0, 0, 0,
0, 0, 70, 16, 16, 0,
1, 0, 0, 0, 70, 126,
16, 0, 0, 0, 0, 0,
0, 96, 16, 0, 0, 0,
0, 0, 54, 0, 0, 5,
50, 32, 16, 0, 0, 0,
0, 0, 70, 0, 16, 0,
0, 0, 0, 0, 54, 0,
0, 8, 194, 32, 16, 0,
0, 0, 0, 0, 2, 64,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2, 0, 0, 0,
28, 0, 0, 0, 0, 4,
255, 255, 0, 1, 0, 0,
109, 0, 0, 0, 92, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 128, 63,
62, 0, 0, 1, 83, 84,
65, 84, 116, 0, 0, 0,
4, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0,
0, 0, 1, 0, 0, 0,
100, 0, 0, 0, 2, 0,
0, 0, 5, 0, 0, 0,
4, 0, 0, 0, 255, 255,
255, 255, 0, 0, 0, 0,
1, 0, 0, 0, 13, 0,
0, 0, 83, 97, 109, 112,
108, 101, 114, 0, 84, 101,
120, 116, 117, 114, 101, 70,
0, 77, 105, 99, 114, 111,
115, 111, 102, 116, 32, 40,
82, 41, 32, 72, 76, 83,
76, 32, 83, 104, 97, 100,
101, 114, 32, 67, 111, 109,
112, 105, 108, 101, 114, 32,
54, 46, 51, 46, 57, 54,
48, 48, 46, 49, 54, 51,
56, 52, 0, 171, 73, 83,
71, 78, 80, 0, 0, 0,
2, 0, 0, 0, 8, 0,
0, 0, 56, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 15, 0,
0, 0, 68, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 3, 0, 0, 0,
1, 0, 0, 0, 3, 3,
0, 0, 83, 86, 95, 80,
79, 83, 73, 84, 73, 79,
78, 0, 84, 69, 88, 67,
79, 79, 82, 68, 0, 171,
171, 171, 79, 83, 71, 78,
44, 0, 0, 0, 1, 0,
0, 0, 8, 0, 0, 0,
32, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 15, 0, 0, 0,
83, 86, 95, 84, 65, 82,
71, 69, 84, 0, 171, 171,
83, 72, 68, 82, 160, 0,
0, 0, 64, 0, 0, 0,
40, 0, 0, 0, 90, 0,
0, 3, 0, 96, 16, 0,
0, 0, 0, 0, 88, 24,
0, 4, 0, 112, 16, 0,
0, 0, 0, 0, 85, 85,
0, 0, 98, 16, 0, 3,
50, 16, 16, 0, 1, 0,
0, 0, 101, 0, 0, 3,
242, 32, 16, 0, 0, 0,
0, 0, 104, 0, 0, 2,
1, 0, 0, 0, 69, 0,
0, 9, 242, 0, 16, 0,
0, 0, 0, 0, 70, 16,
16, 0, 1, 0, 0, 0,
70, 126, 16, 0, 0, 0,
0, 0, 0, 96, 16, 0,
0, 0, 0, 0, 54, 0,
0, 5, 50, 32, 16, 0,
0, 0, 0, 0, 70, 0,
16, 0, 0, 0, 0, 0,
54, 0, 0, 8, 194, 32,
16, 0, 0, 0, 0, 0,
2, 64, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
128, 63, 62, 0, 0, 1,
83, 84, 65, 84, 116, 0,
0, 0, 4, 0, 0, 0,
1, 0, 0, 0, 0, 0,
0, 0, 2, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 82, 68, 69, 70,
160, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 28, 0,
0, 0, 0, 4, 255, 255,
0, 1, 0, 0, 109, 0,
0, 0, 92, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
1, 0, 0, 0, 100, 0,
0, 0, 2, 0, 0, 0,
5, 0, 0, 0, 4, 0,
0, 0, 255, 255, 255, 255,
0, 0, 0, 0, 1, 0,
0, 0, 13, 0, 0, 0,
83, 97, 109, 112, 108, 101,
114, 0, 84, 101, 120, 116,
117, 114, 101, 70, 0, 77,
105, 99, 114, 111, 115, 111,
102, 116, 32, 40, 82, 41,
32, 72, 76, 83, 76, 32,
83, 104, 97, 100, 101, 114,
32, 67, 111, 109, 112, 105,
108, 101, 114, 32, 54, 46,
51, 46, 57, 54, 48, 48,
46, 49, 54, 51, 56, 52,
0, 171, 73, 83, 71, 78,
80, 0, 0, 0, 2, 0,
0, 0, 8, 0, 0, 0,
56, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 15, 0, 0, 0,
68, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 1, 0,
0, 0, 3, 3, 0, 0,
83, 86, 95, 80, 79, 83,
73, 84, 73, 79, 78, 0,
84, 69, 88, 67, 79, 79,
82, 68, 0, 171, 171, 171,
79, 83, 71, 78, 44, 0,
0, 0, 1, 0, 0, 0,
8, 0, 0, 0, 32, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0 15, 0, 0, 0, 83, 86,
95, 84, 65, 82, 71, 69,
84, 0, 171, 171
}; };
...@@ -26,6 +26,25 @@ ...@@ -26,6 +26,25 @@
// -------------------- ----- ------ -------- -------- ------- ------ // -------------------- ----- ------ -------- -------- ------- ------
// SV_TARGET 0 xyzw 0 TARGET float xyzw // SV_TARGET 0 xyzw 0 TARGET float xyzw
// //
//
// Sampler/Resource to DX9 shader sampler mappings:
//
// Target Sampler Source Sampler Source Resource
// -------------- --------------- ----------------
// s0 s0 t0
//
//
// Level9 shader bytecode:
//
ps_2_x
def c0, 1, 0, 0, 0
dcl t0.xy
dcl_2d s0
texld r0, t0, s0
mad r0, r0.xyzx, c0.xxxy, c0.yyyx
mov oC0, r0
// approximately 3 instruction slots used (1 texture, 2 arithmetic)
ps_4_0 ps_4_0
dcl_sampler s0, mode_default dcl_sampler s0, mode_default
dcl_resource_texture2d (float,float,float,float) t0 dcl_resource_texture2d (float,float,float,float) t0
...@@ -41,111 +60,137 @@ ret ...@@ -41,111 +60,137 @@ ret
const BYTE g_PS_PassthroughRGB2D[] = const BYTE g_PS_PassthroughRGB2D[] =
{ {
68, 88, 66, 67, 230, 78, 68, 88, 66, 67, 51, 90,
183, 28, 143, 3, 213, 214, 49, 167, 211, 79, 20, 215,
94, 194, 104, 75, 78, 218, 57, 227, 70, 56, 132, 117,
227, 118, 1, 0, 0, 0, 66, 156, 1, 0, 0, 0,
128, 2, 0, 0, 5, 0, 28, 3, 0, 0, 6, 0,
0, 0, 52, 0, 0, 0,
220, 0, 0, 0, 52, 1,
0, 0, 104, 1, 0, 0,
4, 2, 0, 0, 82, 68,
69, 70, 160, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 2, 0, 0, 0,
28, 0, 0, 0, 0, 4,
255, 255, 0, 1, 0, 0,
109, 0, 0, 0, 92, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 1, 0, 0, 0,
100, 0, 0, 0, 2, 0,
0, 0, 5, 0, 0, 0,
4, 0, 0, 0, 255, 255,
255, 255, 0, 0, 0, 0,
1, 0, 0, 0, 13, 0,
0, 0, 83, 97, 109, 112,
108, 101, 114, 0, 84, 101,
120, 116, 117, 114, 101, 70,
0, 77, 105, 99, 114, 111,
115, 111, 102, 116, 32, 40,
82, 41, 32, 72, 76, 83,
76, 32, 83, 104, 97, 100,
101, 114, 32, 67, 111, 109,
112, 105, 108, 101, 114, 32,
54, 46, 51, 46, 57, 54,
48, 48, 46, 49, 54, 51,
56, 52, 0, 171, 73, 83,
71, 78, 80, 0, 0, 0,
2, 0, 0, 0, 8, 0,
0, 0, 56, 0, 0, 0, 0, 0, 56, 0, 0, 0,
0, 0, 0, 0, 1, 0, 208, 0, 0, 0, 108, 1,
0, 0, 3, 0, 0, 0, 0, 0, 232, 1, 0, 0,
0, 0, 0, 0, 15, 0, 144, 2, 0, 0, 232, 2,
0, 0, 68, 0, 0, 0, 0, 0, 65, 111, 110, 57,
0, 0, 0, 0, 0, 0, 144, 0, 0, 0, 144, 0,
0, 0, 3, 0, 0, 0, 0, 0, 0, 2, 255, 255,
1, 0, 0, 0, 3, 3, 104, 0, 0, 0, 40, 0,
0, 0, 83, 86, 95, 80, 0, 0, 0, 0, 40, 0,
79, 83, 73, 84, 73, 79, 0, 0, 40, 0, 0, 0,
78, 0, 84, 69, 88, 67, 40, 0, 1, 0, 36, 0,
79, 79, 82, 68, 0, 171, 0, 0, 40, 0, 0, 0,
171, 171, 79, 83, 71, 78, 0, 0, 1, 2, 255, 255,
44, 0, 0, 0, 1, 0, 81, 0, 0, 5, 0, 0,
0, 0, 8, 0, 0, 0, 15, 160, 0, 0, 128, 63,
32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 0, 0, 31, 0, 0, 2, 0, 0,
0, 0, 15, 0, 0, 0, 0, 128, 0, 0, 3, 176,
83, 86, 95, 84, 65, 82, 31, 0, 0, 2, 0, 0,
71, 69, 84, 0, 171, 171, 0, 144, 0, 8, 15, 160,
83, 72, 68, 82, 148, 0, 66, 0, 0, 3, 0, 0,
0, 0, 64, 0, 0, 0, 15, 128, 0, 0, 228, 176,
37, 0, 0, 0, 90, 0, 0, 8, 228, 160, 4, 0,
0, 3, 0, 96, 16, 0, 0, 4, 0, 0, 15, 128,
0, 0, 0, 0, 88, 24, 0, 0, 36, 128, 0, 0,
0, 4, 0, 112, 16, 0, 64, 160, 0, 0, 21, 160,
0, 0, 0, 0, 85, 85, 1, 0, 0, 2, 0, 8,
0, 0, 98, 16, 0, 3, 15, 128, 0, 0, 228, 128,
50, 16, 16, 0, 1, 0, 255, 255, 0, 0, 83, 72,
0, 0, 101, 0, 0, 3, 68, 82, 148, 0, 0, 0,
242, 32, 16, 0, 0, 0, 64, 0, 0, 0, 37, 0,
0, 0, 104, 0, 0, 2, 0, 0, 90, 0, 0, 3,
1, 0, 0, 0, 69, 0, 0, 96, 16, 0, 0, 0,
0, 9, 242, 0, 16, 0, 0, 0, 88, 24, 0, 4,
0, 0, 0, 0, 70, 16, 0, 112, 16, 0, 0, 0,
0, 0, 85, 85, 0, 0,
98, 16, 0, 3, 50, 16,
16, 0, 1, 0, 0, 0, 16, 0, 1, 0, 0, 0,
70, 126, 16, 0, 0, 0, 101, 0, 0, 3, 242, 32,
0, 0, 0, 96, 16, 0,
0, 0, 0, 0, 54, 0,
0, 5, 114, 32, 16, 0,
0, 0, 0, 0, 70, 2,
16, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0,
54, 0, 0, 5, 130, 32, 104, 0, 0, 2, 1, 0,
0, 0, 69, 0, 0, 9,
242, 0, 16, 0, 0, 0,
0, 0, 70, 16, 16, 0,
1, 0, 0, 0, 70, 126,
16, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0,
1, 64, 0, 0, 0, 0, 0, 96, 16, 0, 0, 0,
128, 63, 62, 0, 0, 1, 0, 0, 54, 0, 0, 5,
83, 84, 65, 84, 116, 0, 114, 32, 16, 0, 0, 0,
0, 0, 4, 0, 0, 0, 0, 0, 70, 2, 16, 0,
1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, 0,
0, 0, 2, 0, 0, 0, 0, 5, 130, 32, 16, 0,
0, 0, 0, 0, 1, 64,
0, 0, 0, 0, 128, 63,
62, 0, 0, 1, 83, 84,
65, 84, 116, 0, 0, 0,
4, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 82, 68, 69, 70,
160, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 28, 0,
0, 0, 0, 4, 255, 255,
0, 1, 0, 0, 109, 0,
0, 0, 92, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
1, 0, 0, 0, 100, 0,
0, 0, 2, 0, 0, 0,
5, 0, 0, 0, 4, 0,
0, 0, 255, 255, 255, 255,
0, 0, 0, 0, 1, 0,
0, 0, 13, 0, 0, 0,
83, 97, 109, 112, 108, 101,
114, 0, 84, 101, 120, 116,
117, 114, 101, 70, 0, 77,
105, 99, 114, 111, 115, 111,
102, 116, 32, 40, 82, 41,
32, 72, 76, 83, 76, 32,
83, 104, 97, 100, 101, 114,
32, 67, 111, 109, 112, 105,
108, 101, 114, 32, 54, 46,
51, 46, 57, 54, 48, 48,
46, 49, 54, 51, 56, 52,
0, 171, 73, 83, 71, 78,
80, 0, 0, 0, 2, 0,
0, 0, 8, 0, 0, 0,
56, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 15, 0, 0, 0,
68, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 1, 0,
0, 0, 3, 3, 0, 0,
83, 86, 95, 80, 79, 83,
73, 84, 73, 79, 78, 0,
84, 69, 88, 67, 79, 79,
82, 68, 0, 171, 171, 171,
79, 83, 71, 78, 44, 0,
0, 0, 1, 0, 0, 0,
8, 0, 0, 0, 32, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0 15, 0, 0, 0, 83, 86,
95, 84, 65, 82, 71, 69,
84, 0, 171, 171
}; };
...@@ -26,6 +26,23 @@ ...@@ -26,6 +26,23 @@
// -------------------- ----- ------ -------- -------- ------- ------ // -------------------- ----- ------ -------- -------- ------- ------
// SV_TARGET 0 xyzw 0 TARGET float xyzw // SV_TARGET 0 xyzw 0 TARGET float xyzw
// //
//
// Sampler/Resource to DX9 shader sampler mappings:
//
// Target Sampler Source Sampler Source Resource
// -------------- --------------- ----------------
// s0 s0 t0
//
//
// Level9 shader bytecode:
//
ps_2_x
dcl t0.xy
dcl_2d s0
texld r0, t0, s0
mov oC0, r0
// approximately 2 instruction slots used (1 texture, 1 arithmetic)
ps_4_0 ps_4_0
dcl_sampler s0, mode_default dcl_sampler s0, mode_default
dcl_resource_texture2d (float,float,float,float) t0 dcl_resource_texture2d (float,float,float,float) t0
...@@ -38,103 +55,122 @@ ret ...@@ -38,103 +55,122 @@ ret
const BYTE g_PS_PassthroughRGBA2D[] = const BYTE g_PS_PassthroughRGBA2D[] =
{ {
68, 88, 66, 67, 243, 181, 68, 88, 66, 67, 240, 186,
21, 67, 189, 2, 51, 221, 163, 221, 151, 45, 139, 68,
82, 133, 105, 124, 215, 100, 172, 121, 30, 230, 203, 102,
21, 146, 1, 0, 0, 0, 92, 33, 1, 0, 0, 0,
80, 2, 0, 0, 5, 0, 192, 2, 0, 0, 6, 0,
0, 0, 52, 0, 0, 0, 0, 0, 56, 0, 0, 0,
220, 0, 0, 0, 52, 1, 164, 0, 0, 0, 16, 1,
0, 0, 104, 1, 0, 0, 0, 0, 140, 1, 0, 0,
212, 1, 0, 0, 82, 68, 52, 2, 0, 0, 140, 2,
69, 70, 160, 0, 0, 0, 0, 0, 65, 111, 110, 57,
0, 0, 0, 0, 0, 0, 100, 0, 0, 0, 100, 0,
0, 0, 2, 0, 0, 0, 0, 0, 0, 2, 255, 255,
28, 0, 0, 0, 0, 4, 60, 0, 0, 0, 40, 0,
255, 255, 0, 1, 0, 0, 0, 0, 0, 0, 40, 0,
109, 0, 0, 0, 92, 0, 0, 0, 40, 0, 0, 0,
0, 0, 3, 0, 0, 0, 40, 0, 1, 0, 36, 0,
0, 0, 40, 0, 0, 0,
0, 0, 1, 2, 255, 255,
31, 0, 0, 2, 0, 0,
0, 128, 0, 0, 3, 176,
31, 0, 0, 2, 0, 0,
0, 144, 0, 8, 15, 160,
66, 0, 0, 3, 0, 0,
15, 128, 0, 0, 228, 176,
0, 8, 228, 160, 1, 0,
0, 2, 0, 8, 15, 128,
0, 0, 228, 128, 255, 255,
0, 0, 83, 72, 68, 82,
100, 0, 0, 0, 64, 0,
0, 0, 25, 0, 0, 0,
90, 0, 0, 3, 0, 96,
16, 0, 0, 0, 0, 0,
88, 24, 0, 4, 0, 112,
16, 0, 0, 0, 0, 0,
85, 85, 0, 0, 98, 16,
0, 3, 50, 16, 16, 0,
1, 0, 0, 0, 101, 0,
0, 3, 242, 32, 16, 0,
0, 0, 0, 0, 69, 0,
0, 9, 242, 32, 16, 0,
0, 0, 0, 0, 70, 16,
16, 0, 1, 0, 0, 0,
70, 126, 16, 0, 0, 0,
0, 0, 0, 96, 16, 0,
0, 0, 0, 0, 62, 0,
0, 1, 83, 84, 65, 84,
116, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0,
100, 0, 0, 0, 2, 0,
0, 0, 5, 0, 0, 0,
4, 0, 0, 0, 255, 255,
255, 255, 0, 0, 0, 0,
1, 0, 0, 0, 13, 0,
0, 0, 83, 97, 109, 112,
108, 101, 114, 0, 84, 101,
120, 116, 117, 114, 101, 70,
0, 77, 105, 99, 114, 111,
115, 111, 102, 116, 32, 40,
82, 41, 32, 72, 76, 83,
76, 32, 83, 104, 97, 100,
101, 114, 32, 67, 111, 109,
112, 105, 108, 101, 114, 32,
54, 46, 51, 46, 57, 54,
48, 48, 46, 49, 54, 51,
56, 52, 0, 171, 73, 83,
71, 78, 80, 0, 0, 0,
2, 0, 0, 0, 8, 0,
0, 0, 56, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 15, 0,
0, 0, 68, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3, 0, 0, 0,
1, 0, 0, 0, 3, 3,
0, 0, 83, 86, 95, 80,
79, 83, 73, 84, 73, 79,
78, 0, 84, 69, 88, 67,
79, 79, 82, 68, 0, 171,
171, 171, 79, 83, 71, 78,
44, 0, 0, 0, 1, 0,
0, 0, 8, 0, 0, 0,
32, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 0, 0,
0, 0, 15, 0, 0, 0,
83, 86, 95, 84, 65, 82,
71, 69, 84, 0, 171, 171,
83, 72, 68, 82, 100, 0,
0, 0, 64, 0, 0, 0,
25, 0, 0, 0, 90, 0,
0, 3, 0, 96, 16, 0,
0, 0, 0, 0, 88, 24,
0, 4, 0, 112, 16, 0,
0, 0, 0, 0, 85, 85,
0, 0, 98, 16, 0, 3,
50, 16, 16, 0, 1, 0,
0, 0, 101, 0, 0, 3,
242, 32, 16, 0, 0, 0,
0, 0, 69, 0, 0, 9,
242, 32, 16, 0, 0, 0,
0, 0, 70, 16, 16, 0,
1, 0, 0, 0, 70, 126,
16, 0, 0, 0, 0, 0,
0, 96, 16, 0, 0, 0,
0, 0, 62, 0, 0, 1,
83, 84, 65, 84, 116, 0,
0, 0, 2, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
82, 68, 69, 70, 160, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2, 0,
0, 0, 28, 0, 0, 0,
0, 4, 255, 255, 0, 1,
0, 0, 109, 0, 0, 0,
92, 0, 0, 0, 3, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 1, 0,
0, 0, 100, 0, 0, 0,
2, 0, 0, 0, 5, 0,
0, 0, 4, 0, 0, 0,
255, 255, 255, 255, 0, 0,
0, 0, 1, 0, 0, 0,
13, 0, 0, 0, 83, 97,
109, 112, 108, 101, 114, 0,
84, 101, 120, 116, 117, 114,
101, 70, 0, 77, 105, 99,
114, 111, 115, 111, 102, 116,
32, 40, 82, 41, 32, 72,
76, 83, 76, 32, 83, 104,
97, 100, 101, 114, 32, 67,
111, 109, 112, 105, 108, 101,
114, 32, 54, 46, 51, 46,
57, 54, 48, 48, 46, 49,
54, 51, 56, 52, 0, 171,
73, 83, 71, 78, 80, 0,
0, 0, 2, 0, 0, 0,
8, 0, 0, 0, 56, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 3, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0 15, 0, 0, 0, 68, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3, 0,
0, 0, 1, 0, 0, 0,
3, 3, 0, 0, 83, 86,
95, 80, 79, 83, 73, 84,
73, 79, 78, 0, 84, 69,
88, 67, 79, 79, 82, 68,
0, 171, 171, 171, 79, 83,
71, 78, 44, 0, 0, 0,
1, 0, 0, 0, 8, 0,
0, 0, 32, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 15, 0,
0, 0, 83, 86, 95, 84,
65, 82, 71, 69, 84, 0,
171, 171
}; };
...@@ -8,7 +8,8 @@ ...@@ -8,7 +8,8 @@
ANGLE_TYPED_TEST_CASE(RendererTest, ES2_D3D9, ES2_D3D11, ES2_D3D11_WARP, ES3_D3D11, ES3_D3D11_WARP, ANGLE_TYPED_TEST_CASE(RendererTest, ES2_D3D9, ES2_D3D11, ES2_D3D11_WARP, ES3_D3D11, ES3_D3D11_WARP,
ES2_D3D11_FL11_0, ES2_D3D11_FL11_0_WARP, ES3_D3D11_FL11_0, ES3_D3D11_FL11_0_WARP, ES2_D3D11_FL11_0, ES2_D3D11_FL11_0_WARP, ES3_D3D11_FL11_0, ES3_D3D11_FL11_0_WARP,
ES2_D3D11_FL10_1, ES2_D3D11_FL10_1_WARP, ES3_D3D11_FL10_1, ES3_D3D11_FL10_1_WARP, ES2_D3D11_FL10_1, ES2_D3D11_FL10_1_WARP, ES3_D3D11_FL10_1, ES3_D3D11_FL10_1_WARP,
ES2_D3D11_FL10_0, ES2_D3D11_FL10_0_WARP, ES3_D3D11_FL10_0, ES3_D3D11_FL10_0_WARP); ES2_D3D11_FL10_0, ES2_D3D11_FL10_0_WARP, ES3_D3D11_FL10_0, ES3_D3D11_FL10_0_WARP,
ES2_D3D11_FL9_3, ES2_D3D11_FL9_3_WARP);
template<typename T> template<typename T>
class RendererTest : public ANGLETest class RendererTest : public ANGLETest
...@@ -82,6 +83,11 @@ TYPED_TEST(RendererTest, RequestedRendererCreated) ...@@ -82,6 +83,11 @@ TYPED_TEST(RendererTest, RequestedRendererCreated)
} }
} }
if (platform.majorVersion == 9 && platform.minorVersion == 3)
{
acceptableShaderModels.push_back("ps_4_0_level_9_3");
}
bool found = false; bool found = false;
for (size_t i = 0; i < acceptableShaderModels.size(); i++) for (size_t i = 0; i < acceptableShaderModels.size(); i++)
{ {
......
...@@ -31,11 +31,13 @@ DEFINE_ANGLE_TEST_PLATFORM(D3D11, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGL ...@@ -31,11 +31,13 @@ DEFINE_ANGLE_TEST_PLATFORM(D3D11, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGL
DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL11_0, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 11, 0, EGL_FALSE); DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL11_0, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 11, 0, EGL_FALSE);
DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL10_1, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 10, 1, EGL_FALSE); DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL10_1, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 10, 1, EGL_FALSE);
DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL10_0, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 10, 0, EGL_FALSE); DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL10_0, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 10, 0, EGL_FALSE);
DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL9_3, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 9, 3, EGL_FALSE);
DEFINE_ANGLE_TEST_PLATFORM(D3D11_WARP, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, EGL_DONT_CARE, EGL_DONT_CARE, EGL_TRUE); DEFINE_ANGLE_TEST_PLATFORM(D3D11_WARP, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, EGL_DONT_CARE, EGL_DONT_CARE, EGL_TRUE);
DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL11_0_WARP, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 11, 0, EGL_TRUE); DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL11_0_WARP, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 11, 0, EGL_TRUE);
DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL10_1_WARP, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 10, 1, EGL_TRUE); DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL10_1_WARP, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 10, 1, EGL_TRUE);
DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL10_0_WARP, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 10, 0, EGL_TRUE); DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL10_0_WARP, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 10, 0, EGL_TRUE);
DEFINE_ANGLE_TEST_PLATFORM(D3D11_FL9_3_WARP, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 9, 3, EGL_TRUE);
#undef DEFINE_ANGLE_TEST_PLATFORM #undef DEFINE_ANGLE_TEST_PLATFORM
...@@ -61,11 +63,13 @@ typedef TestFixture<2, D3D11> ES2_D3D11; ...@@ -61,11 +63,13 @@ typedef TestFixture<2, D3D11> ES2_D3D11;
typedef TestFixture<2, D3D11_FL11_0> ES2_D3D11_FL11_0; typedef TestFixture<2, D3D11_FL11_0> ES2_D3D11_FL11_0;
typedef TestFixture<2, D3D11_FL10_1> ES2_D3D11_FL10_1; typedef TestFixture<2, D3D11_FL10_1> ES2_D3D11_FL10_1;
typedef TestFixture<2, D3D11_FL10_0> ES2_D3D11_FL10_0; typedef TestFixture<2, D3D11_FL10_0> ES2_D3D11_FL10_0;
typedef TestFixture<2, D3D11_FL9_3> ES2_D3D11_FL9_3;
typedef TestFixture<2, D3D11_WARP> ES2_D3D11_WARP; typedef TestFixture<2, D3D11_WARP> ES2_D3D11_WARP;
typedef TestFixture<2, D3D11_FL11_0_WARP> ES2_D3D11_FL11_0_WARP; typedef TestFixture<2, D3D11_FL11_0_WARP> ES2_D3D11_FL11_0_WARP;
typedef TestFixture<2, D3D11_FL10_1_WARP> ES2_D3D11_FL10_1_WARP; typedef TestFixture<2, D3D11_FL10_1_WARP> ES2_D3D11_FL10_1_WARP;
typedef TestFixture<2, D3D11_FL10_0_WARP> ES2_D3D11_FL10_0_WARP; typedef TestFixture<2, D3D11_FL10_0_WARP> ES2_D3D11_FL10_0_WARP;
typedef TestFixture<2, D3D11_FL9_3_WARP> ES2_D3D11_FL9_3_WARP;
typedef TestFixture<3, D3D11> ES3_D3D11; typedef TestFixture<3, D3D11> ES3_D3D11;
typedef TestFixture<3, D3D11_FL11_0> ES3_D3D11_FL11_0; typedef TestFixture<3, D3D11_FL11_0> ES3_D3D11_FL11_0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment