Show More
Commit Description:
Add missing component and message.
Commit Description:
Add missing component and message.
References:
File last commit:
Show/Diff file:
Action:
FNA/lib/FNA3D/src/FNA3D_Driver_D3D11_shaders.h
342 lines | 10.6 KiB | text/x-c | CLexer
342 lines | 10.6 KiB | text/x-c | CLexer
r690 | /* FNA3D - 3D Graphics Library for FNA | |||
* | ||||
* Copyright (c) 2020-2022 Ethan Lee | ||||
* | ||||
* This software is provided 'as-is', without any express or implied warranty. | ||||
* In no event will the authors be held liable for any damages arising from | ||||
* the use of this software. | ||||
* | ||||
* Permission is granted to anyone to use this software for any purpose, | ||||
* including commercial applications, and to alter it and redistribute it | ||||
* freely, subject to the following restrictions: | ||||
* | ||||
* 1. The origin of this software must not be misrepresented; you must not | ||||
* claim that you wrote the original software. If you use this software in a | ||||
* product, an acknowledgment in the product documentation would be | ||||
* appreciated but is not required. | ||||
* | ||||
* 2. Altered source versions must be plainly marked as such, and must not be | ||||
* misrepresented as being the original software. | ||||
* | ||||
* 3. This notice may not be removed or altered from any source distribution. | ||||
* | ||||
* Ethan "flibitijibibo" Lee <flibitijibibo@flibitijibibo.com> | ||||
* | ||||
*/ | ||||
/* | ||||
* Shader Source | ||||
*/ | ||||
#if 0 | ||||
void main( | ||||
inout float4 position : SV_POSITION, | ||||
inout float2 texcoord : TEXCOORD0 | ||||
) { | ||||
position.y *= -1; | ||||
position.zw = float2(0.0f, 1.0f); | ||||
} | ||||
Texture2D Texture : register(t0); | ||||
sampler TextureSampler : register(s0); | ||||
float4 main( | ||||
float4 position : SV_POSITION, | ||||
float2 texcoord : TEXCOORD0 | ||||
) : SV_TARGET { | ||||
return Texture.Sample(TextureSampler, texcoord); | ||||
} | ||||
#endif | ||||
/* | ||||
* Compiled Vertex Shader | ||||
*/ | ||||
#if 0 | ||||
// | ||||
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111 | ||||
// | ||||
// | ||||
// fxc /T vs_4_0 vertex.fx /Fh vertex.h | ||||
// | ||||
// | ||||
// | ||||
// Input signature: | ||||
// | ||||
// Name Index Mask Register SysValue Format Used | ||||
// -------------------- ----- ------ -------- -------- ------ ------ | ||||
// SV_POSITION 0 xyzw 0 NONE float xy | ||||
// TEXCOORD 0 xy 1 NONE float xy | ||||
// | ||||
// | ||||
// Output signature: | ||||
// | ||||
// Name Index Mask Register SysValue Format Used | ||||
// -------------------- ----- ------ -------- -------- ------ ------ | ||||
// SV_POSITION 0 xyzw 0 POS float xyzw | ||||
// TEXCOORD 0 xy 1 NONE float xy | ||||
// | ||||
vs_4_0 | ||||
dcl_input v0.xy | ||||
dcl_input v1.xy | ||||
dcl_output_siv o0.xyzw, position | ||||
dcl_output o1.xy | ||||
mul o0.xy, v0.xyxx, l(1.000000, -1.000000, 0.000000, 0.000000) | ||||
mov o0.zw, l(0,0,0,1.000000) | ||||
mov o1.xy, v1.xyxx | ||||
ret | ||||
// Approximately 4 instruction slots used | ||||
#endif | ||||
static const uint8_t FAUX_BLIT_VERTEX_SHADER[] = | ||||
{ | ||||
68, 88, 66, 67, 66, 43, | ||||
199, 206, 109, 8, 43, 130, | ||||
109, 130, 80, 112, 243, 115, | ||||
14, 92, 1, 0, 0, 0, | ||||
92, 2, 0, 0, 5, 0, | ||||
0, 0, 52, 0, 0, 0, | ||||
140, 0, 0, 0, 228, 0, | ||||
0, 0, 60, 1, 0, 0, | ||||
224, 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, 57, 46, 50, | ||||
57, 46, 57, 53, 50, 46, | ||||
51, 49, 49, 49, 0, 171, | ||||
171, 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, | ||||
3, 0, 0, 0, 0, 0, | ||||
0, 0, 15, 3, 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, 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, 83, 72, | ||||
68, 82, 156, 0, 0, 0, | ||||
64, 0, 1, 0, 39, 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, 0, 0, | ||||
56, 0, 0, 10, 50, 32, | ||||
16, 0, 0, 0, 0, 0, | ||||
70, 16, 16, 0, 0, 0, | ||||
0, 0, 2, 64, 0, 0, | ||||
0, 0, 128, 63, 0, 0, | ||||
128, 191, 0, 0, 0, 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, 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, 4, 0, 0, 0, | ||||
1, 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, | ||||
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 | ||||
}; | ||||
/* | ||||
* Compiled Pixel Shader | ||||
*/ | ||||
#if 0 | ||||
// | ||||
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111 | ||||
// | ||||
// | ||||
// fxc /T ps_4_0 pixel.fx /Fh pixel.h | ||||
// | ||||
// | ||||
// Resource Bindings: | ||||
// | ||||
// Name Type Format Dim Slot Elements | ||||
// ------------------------------ ---------- ------- ----------- ---- -------- | ||||
// TextureSampler sampler NA NA 0 1 | ||||
// Texture texture float4 2d 0 1 | ||||
// | ||||
// | ||||
// | ||||
// Input signature: | ||||
// | ||||
// Name Index Mask Register SysValue Format Used | ||||
// -------------------- ----- ------ -------- -------- ------ ------ | ||||
// SV_POSITION 0 xyzw 0 POS float | ||||
// TEXCOORD 0 xy 1 NONE float xy | ||||
// | ||||
// | ||||
// Output signature: | ||||
// | ||||
// Name Index Mask Register SysValue Format Used | ||||
// -------------------- ----- ------ -------- -------- ------ ------ | ||||
// SV_TARGET 0 xyzw 0 TARGET float xyzw | ||||
// | ||||
ps_4_0 | ||||
dcl_sampler s0, mode_default | ||||
dcl_resource_texture2d (float,float,float,float) t0 | ||||
dcl_input_ps linear v1.xy | ||||
dcl_output o0.xyzw | ||||
sample o0.xyzw, v1.xyxx, t0.xyzw, s0 | ||||
ret | ||||
// Approximately 2 instruction slots used | ||||
#endif | ||||
static const uint8_t FAUX_BLIT_PIXEL_SHADER[] = | ||||
{ | ||||
68, 88, 66, 67, 22, 207, | ||||
143, 212, 239, 10, 84, 153, | ||||
80, 214, 26, 89, 62, 50, | ||||
215, 238, 1, 0, 0, 0, | ||||
84, 2, 0, 0, 5, 0, | ||||
0, 0, 52, 0, 0, 0, | ||||
224, 0, 0, 0, 56, 1, | ||||
0, 0, 108, 1, 0, 0, | ||||
216, 1, 0, 0, 82, 68, | ||||
69, 70, 164, 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, | ||||
115, 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, | ||||
107, 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, 84, 101, 120, 116, | ||||
117, 114, 101, 83, 97, 109, | ||||
112, 108, 101, 114, 0, 84, | ||||
101, 120, 116, 117, 114, 101, | ||||
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, | ||||
57, 46, 50, 57, 46, 57, | ||||
53, 50, 46, 51, 49, 49, | ||||
49, 0, 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, | ||||
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, | ||||
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, 0, 0, | ||||
0, 0, 0, 0, 0, 0, | ||||
0, 0, 0, 0, 0, 0, | ||||
0, 0, 0, 0, 0, 0, | ||||
0, 0, 0, 0, 0, 0, | ||||
0, 0, 0, 0, 0, 0, | ||||
0, 0, 0, 0, 0, 0, | ||||
0, 0 | ||||
}; | ||||