diff --git a/ANX.Framework.Windows.GL3/EffectGL3.cs b/ANX.Framework.Windows.GL3/EffectGL3.cs index dc4c4e34..a1e8118a 100644 --- a/ANX.Framework.Windows.GL3/EffectGL3.cs +++ b/ANX.Framework.Windows.GL3/EffectGL3.cs @@ -94,6 +94,15 @@ namespace ANX.Framework.Windows.GL3 { List parameters = new List(); + int uniformCount; + GL.GetProgram(programHandle, ProgramParameter.ActiveUniforms, out uniformCount); + + string[] uniformNames = new string[uniformCount]; + int[] uniformIndices = new int[uniformCount]; + + //TODO: this command doesn't work ?!?! -> GL.GetUniformIndices(programHandle, uniformCount, uniformNames, uniformIndices); + + // TODO: dummy, fill with actual data. parameters.Add(new EffectParameter()); diff --git a/ANX.Framework.Windows.GL3/ShaderByteCode.cs b/ANX.Framework.Windows.GL3/ShaderByteCode.cs index 26af0140..0ddb806e 100644 --- a/ANX.Framework.Windows.GL3/ShaderByteCode.cs +++ b/ANX.Framework.Windows.GL3/ShaderByteCode.cs @@ -209,53 +209,65 @@ namespace ANX.Framework.Windows.GL3 101, 110, 116, 046, 013, 010, 013, 010, 117, 110, 105, 102, 111, 114, 109, 032, 109, 097, 116, 052, 032, 077, 097, 116, 114, 105, 120, 084, 114, 097, 110, 115, 102, 111, 114, 109, 059, 013, 010, 013, 010, 047, 047, 084, 079, 068, 079, 058, 032, 114, 101, 119, 114, 105, 116, 101, 032, 116, 111, 032, - 071, 076, 083, 076, 032, 102, 114, 111, 109, 032, 104, 101, 114, 101, 032, 111, 110, 013, 010, 084, - 101, 120, 116, 117, 114, 101, 050, 068, 060, 102, 108, 111, 097, 116, 052, 062, 032, 084, 101, 120, - 116, 117, 114, 101, 032, 058, 032, 114, 101, 103, 105, 115, 116, 101, 114, 040, 116, 048, 041, 059, - 013, 010, 032, 032, 032, 115, 097, 109, 112, 108, 101, 114, 032, 084, 101, 120, 116, 117, 114, 101, - 083, 097, 109, 112, 108, 101, 114, 032, 058, 032, 114, 101, 103, 105, 115, 116, 101, 114, 040, 115, - 048, 041, 059, 013, 010, 013, 010, 115, 116, 114, 117, 099, 116, 032, 086, 101, 114, 116, 101, 120, + 071, 076, 083, 076, 032, 102, 114, 111, 109, 032, 104, 101, 114, 101, 032, 111, 110, 013, 010, 013, + 010, 047, 047, 013, 010, 047, 047, 032, 086, 101, 114, 116, 101, 120, 032, 083, 104, 097, 100, 101, + 114, 013, 010, 047, 047, 013, 010, 013, 010, 118, 111, 105, 100, 032, 109, 097, 105, 110, 040, 118, + 111, 105, 100, 041, 013, 010, 123, 013, 010, 009, 103, 108, 095, 080, 111, 115, 105, 116, 105, 111, + 110, 032, 061, 032, 103, 108, 095, 077, 111, 100, 101, 108, 086, 105, 101, 119, 080, 114, 111, 106, + 101, 099, 116, 105, 111, 110, 077, 097, 116, 114, 105, 120, 032, 042, 032, 103, 108, 095, 086, 101, + 114, 116, 101, 120, 059, 013, 010, 125, 013, 010, 013, 010, 035, 035, 033, 102, 114, 097, 103, 109, + 101, 110, 116, 033, 035, 035, 013, 010, 013, 010, 047, 047, 013, 010, 047, 047, 032, 070, 114, 097, + 103, 109, 101, 110, 116, 032, 083, 104, 097, 100, 101, 114, 013, 010, 047, 047, 013, 010, 013, 010, + 118, 111, 105, 100, 032, 109, 097, 105, 110, 040, 118, 111, 105, 100, 041, 013, 010, 123, 013, 010, + 009, 103, 108, 095, 070, 114, 097, 103, 067, 111, 108, 111, 114, 032, 061, 032, 118, 101, 099, 052, + 040, 049, 046, 048, 044, 032, 049, 046, 048, 044, 032, 049, 046, 048, 044, 032, 049, 046, 048, 041, + 059, 013, 010, 125, 013, 010, 013, 010, 047, 042, 013, 010, 084, 101, 120, 116, 117, 114, 101, 050, + 068, 060, 102, 108, 111, 097, 116, 052, 062, 032, 084, 101, 120, 116, 117, 114, 101, 032, 058, 032, + 114, 101, 103, 105, 115, 116, 101, 114, 040, 116, 048, 041, 059, 013, 010, 032, 032, 032, 115, 097, + 109, 112, 108, 101, 114, 032, 084, 101, 120, 116, 117, 114, 101, 083, 097, 109, 112, 108, 101, 114, + 032, 058, 032, 114, 101, 103, 105, 115, 116, 101, 114, 040, 115, 048, 041, 059, 013, 010, 013, 010, + 115, 116, 114, 117, 099, 116, 032, 086, 101, 114, 116, 101, 120, 083, 104, 097, 100, 101, 114, 073, + 110, 112, 117, 116, 013, 010, 123, 013, 010, 009, 102, 108, 111, 097, 116, 052, 032, 112, 111, 115, + 032, 058, 032, 080, 079, 083, 073, 084, 073, 079, 078, 059, 013, 010, 009, 102, 108, 111, 097, 116, + 052, 032, 099, 111, 108, 032, 058, 032, 067, 079, 076, 079, 082, 059, 013, 010, 009, 102, 108, 111, + 097, 116, 050, 032, 116, 101, 120, 032, 058, 032, 084, 069, 088, 067, 079, 079, 082, 068, 048, 059, + 013, 010, 125, 059, 013, 010, 013, 010, 115, 116, 114, 117, 099, 116, 032, 080, 105, 120, 101, 108, 083, 104, 097, 100, 101, 114, 073, 110, 112, 117, 116, 013, 010, 123, 013, 010, 009, 102, 108, 111, - 097, 116, 052, 032, 112, 111, 115, 032, 058, 032, 080, 079, 083, 073, 084, 073, 079, 078, 059, 013, - 010, 009, 102, 108, 111, 097, 116, 052, 032, 099, 111, 108, 032, 058, 032, 067, 079, 076, 079, 082, - 059, 013, 010, 009, 102, 108, 111, 097, 116, 050, 032, 116, 101, 120, 032, 058, 032, 084, 069, 088, - 067, 079, 079, 082, 068, 048, 059, 013, 010, 125, 059, 013, 010, 013, 010, 115, 116, 114, 117, 099, - 116, 032, 080, 105, 120, 101, 108, 083, 104, 097, 100, 101, 114, 073, 110, 112, 117, 116, 013, 010, - 123, 013, 010, 009, 102, 108, 111, 097, 116, 052, 032, 112, 111, 115, 032, 058, 032, 083, 086, 095, - 080, 079, 083, 073, 084, 073, 079, 078, 059, 013, 010, 009, 102, 108, 111, 097, 116, 052, 032, 099, - 111, 108, 032, 058, 032, 067, 079, 076, 079, 082, 059, 013, 010, 009, 102, 108, 111, 097, 116, 050, - 032, 116, 101, 120, 032, 058, 032, 084, 069, 088, 067, 079, 079, 082, 068, 048, 059, 013, 010, 125, - 059, 013, 010, 013, 010, 080, 105, 120, 101, 108, 083, 104, 097, 100, 101, 114, 073, 110, 112, 117, - 116, 032, 083, 112, 114, 105, 116, 101, 086, 101, 114, 116, 101, 120, 083, 104, 097, 100, 101, 114, - 040, 032, 086, 101, 114, 116, 101, 120, 083, 104, 097, 100, 101, 114, 073, 110, 112, 117, 116, 032, - 105, 110, 112, 117, 116, 032, 041, 013, 010, 123, 013, 010, 009, 080, 105, 120, 101, 108, 083, 104, - 097, 100, 101, 114, 073, 110, 112, 117, 116, 032, 111, 117, 116, 112, 117, 116, 032, 061, 032, 040, - 080, 105, 120, 101, 108, 083, 104, 097, 100, 101, 114, 073, 110, 112, 117, 116, 041, 048, 059, 013, - 010, 009, 013, 010, 009, 111, 117, 116, 112, 117, 116, 046, 112, 111, 115, 032, 061, 032, 109, 117, - 108, 040, 105, 110, 112, 117, 116, 046, 112, 111, 115, 044, 032, 077, 097, 116, 114, 105, 120, 084, - 114, 097, 110, 115, 102, 111, 114, 109, 041, 059, 013, 010, 009, 111, 117, 116, 112, 117, 116, 046, - 099, 111, 108, 032, 061, 032, 105, 110, 112, 117, 116, 046, 099, 111, 108, 059, 013, 010, 009, 111, - 117, 116, 112, 117, 116, 046, 116, 101, 120, 032, 061, 032, 105, 110, 112, 117, 116, 046, 116, 101, - 120, 059, 013, 010, 013, 010, 009, 114, 101, 116, 117, 114, 110, 032, 111, 117, 116, 112, 117, 116, - 059, 013, 010, 125, 013, 010, 013, 010, 102, 108, 111, 097, 116, 052, 032, 083, 112, 114, 105, 116, - 101, 080, 105, 120, 101, 108, 083, 104, 097, 100, 101, 114, 040, 032, 080, 105, 120, 101, 108, 083, - 104, 097, 100, 101, 114, 073, 110, 112, 117, 116, 032, 105, 110, 112, 117, 116, 032, 041, 032, 058, - 032, 083, 086, 095, 084, 097, 114, 103, 101, 116, 013, 010, 123, 013, 010, 009, 114, 101, 116, 117, - 114, 110, 032, 084, 101, 120, 116, 117, 114, 101, 046, 083, 097, 109, 112, 108, 101, 040, 084, 101, - 120, 116, 117, 114, 101, 083, 097, 109, 112, 108, 101, 114, 044, 032, 105, 110, 112, 117, 116, 046, - 116, 101, 120, 041, 032, 042, 032, 105, 110, 112, 117, 116, 046, 099, 111, 108, 059, 013, 010, 125, - 013, 010, 013, 010, 116, 101, 099, 104, 110, 105, 113, 117, 101, 049, 048, 032, 083, 112, 114, 105, - 116, 101, 084, 101, 099, 104, 110, 105, 113, 117, 101, 013, 010, 123, 013, 010, 009, 112, 097, 115, - 115, 032, 083, 112, 114, 105, 116, 101, 067, 111, 108, 111, 114, 080, 097, 115, 115, 013, 010, 009, - 123, 013, 010, 009, 009, 083, 101, 116, 071, 101, 111, 109, 101, 116, 114, 121, 083, 104, 097, 100, - 101, 114, 040, 032, 048, 032, 041, 059, 013, 010, 009, 009, 083, 101, 116, 086, 101, 114, 116, 101, - 120, 083, 104, 097, 100, 101, 114, 040, 032, 067, 111, 109, 112, 105, 108, 101, 083, 104, 097, 100, - 101, 114, 040, 032, 118, 115, 095, 052, 095, 048, 044, 032, 083, 112, 114, 105, 116, 101, 086, 101, - 114, 116, 101, 120, 083, 104, 097, 100, 101, 114, 040, 041, 032, 041, 032, 041, 059, 013, 010, 009, - 009, 083, 101, 116, 080, 105, 120, 101, 108, 083, 104, 097, 100, 101, 114, 040, 032, 067, 111, 109, - 112, 105, 108, 101, 083, 104, 097, 100, 101, 114, 040, 032, 112, 115, 095, 052, 095, 048, 044, 032, - 083, 112, 114, 105, 116, 101, 080, 105, 120, 101, 108, 083, 104, 097, 100, 101, 114, 040, 041, 032, - 041, 032, 041, 059, 013, 010, 009, 125, 013, 010, 125, 013, 010 + 097, 116, 052, 032, 112, 111, 115, 032, 058, 032, 083, 086, 095, 080, 079, 083, 073, 084, 073, 079, + 078, 059, 013, 010, 009, 102, 108, 111, 097, 116, 052, 032, 099, 111, 108, 032, 058, 032, 067, 079, + 076, 079, 082, 059, 013, 010, 009, 102, 108, 111, 097, 116, 050, 032, 116, 101, 120, 032, 058, 032, + 084, 069, 088, 067, 079, 079, 082, 068, 048, 059, 013, 010, 125, 059, 013, 010, 013, 010, 080, 105, + 120, 101, 108, 083, 104, 097, 100, 101, 114, 073, 110, 112, 117, 116, 032, 083, 112, 114, 105, 116, + 101, 086, 101, 114, 116, 101, 120, 083, 104, 097, 100, 101, 114, 040, 032, 086, 101, 114, 116, 101, + 120, 083, 104, 097, 100, 101, 114, 073, 110, 112, 117, 116, 032, 105, 110, 112, 117, 116, 032, 041, + 013, 010, 123, 013, 010, 009, 080, 105, 120, 101, 108, 083, 104, 097, 100, 101, 114, 073, 110, 112, + 117, 116, 032, 111, 117, 116, 112, 117, 116, 032, 061, 032, 040, 080, 105, 120, 101, 108, 083, 104, + 097, 100, 101, 114, 073, 110, 112, 117, 116, 041, 048, 059, 013, 010, 009, 013, 010, 009, 111, 117, + 116, 112, 117, 116, 046, 112, 111, 115, 032, 061, 032, 109, 117, 108, 040, 105, 110, 112, 117, 116, + 046, 112, 111, 115, 044, 032, 077, 097, 116, 114, 105, 120, 084, 114, 097, 110, 115, 102, 111, 114, + 109, 041, 059, 013, 010, 009, 111, 117, 116, 112, 117, 116, 046, 099, 111, 108, 032, 061, 032, 105, + 110, 112, 117, 116, 046, 099, 111, 108, 059, 013, 010, 009, 111, 117, 116, 112, 117, 116, 046, 116, + 101, 120, 032, 061, 032, 105, 110, 112, 117, 116, 046, 116, 101, 120, 059, 013, 010, 013, 010, 009, + 114, 101, 116, 117, 114, 110, 032, 111, 117, 116, 112, 117, 116, 059, 013, 010, 125, 013, 010, 013, + 010, 102, 108, 111, 097, 116, 052, 032, 083, 112, 114, 105, 116, 101, 080, 105, 120, 101, 108, 083, + 104, 097, 100, 101, 114, 040, 032, 080, 105, 120, 101, 108, 083, 104, 097, 100, 101, 114, 073, 110, + 112, 117, 116, 032, 105, 110, 112, 117, 116, 032, 041, 032, 058, 032, 083, 086, 095, 084, 097, 114, + 103, 101, 116, 013, 010, 123, 013, 010, 009, 114, 101, 116, 117, 114, 110, 032, 084, 101, 120, 116, + 117, 114, 101, 046, 083, 097, 109, 112, 108, 101, 040, 084, 101, 120, 116, 117, 114, 101, 083, 097, + 109, 112, 108, 101, 114, 044, 032, 105, 110, 112, 117, 116, 046, 116, 101, 120, 041, 032, 042, 032, + 105, 110, 112, 117, 116, 046, 099, 111, 108, 059, 013, 010, 125, 013, 010, 013, 010, 116, 101, 099, + 104, 110, 105, 113, 117, 101, 049, 048, 032, 083, 112, 114, 105, 116, 101, 084, 101, 099, 104, 110, + 105, 113, 117, 101, 013, 010, 123, 013, 010, 009, 112, 097, 115, 115, 032, 083, 112, 114, 105, 116, + 101, 067, 111, 108, 111, 114, 080, 097, 115, 115, 013, 010, 009, 123, 013, 010, 009, 009, 083, 101, + 116, 071, 101, 111, 109, 101, 116, 114, 121, 083, 104, 097, 100, 101, 114, 040, 032, 048, 032, 041, + 059, 013, 010, 009, 009, 083, 101, 116, 086, 101, 114, 116, 101, 120, 083, 104, 097, 100, 101, 114, + 040, 032, 067, 111, 109, 112, 105, 108, 101, 083, 104, 097, 100, 101, 114, 040, 032, 118, 115, 095, + 052, 095, 048, 044, 032, 083, 112, 114, 105, 116, 101, 086, 101, 114, 116, 101, 120, 083, 104, 097, + 100, 101, 114, 040, 041, 032, 041, 032, 041, 059, 013, 010, 009, 009, 083, 101, 116, 080, 105, 120, + 101, 108, 083, 104, 097, 100, 101, 114, 040, 032, 067, 111, 109, 112, 105, 108, 101, 083, 104, 097, + 100, 101, 114, 040, 032, 112, 115, 095, 052, 095, 048, 044, 032, 083, 112, 114, 105, 116, 101, 080, + 105, 120, 101, 108, 083, 104, 097, 100, 101, 114, 040, 041, 032, 041, 032, 041, 059, 013, 010, 009, + 125, 013, 010, 125, 013, 010, 042, 047 }; #endregion //SpriteBatchShader diff --git a/Samples/SimpleSprite/Game1.cs b/Samples/SimpleSprite/Game1.cs index 5ccb4450..2538e299 100644 --- a/Samples/SimpleSprite/Game1.cs +++ b/Samples/SimpleSprite/Game1.cs @@ -72,6 +72,7 @@ namespace WindowsGame1 Random r = new Random(); public Game1() + : base("OpenGL3") { graphics = new GraphicsDeviceManager(this); Content.RootDirectory = "SampleContent"; diff --git a/Samples/SimpleSprite/SimpleSprite.csproj b/Samples/SimpleSprite/SimpleSprite.csproj index f978179e..b5d3e59f 100644 --- a/Samples/SimpleSprite/SimpleSprite.csproj +++ b/Samples/SimpleSprite/SimpleSprite.csproj @@ -83,6 +83,10 @@ {5BE49183-2F6F-4527-AC90-D816911FCF90} ANX.Framework.Windows.DX10 + + {EB8258E0-6741-4DB9-B756-1EBDF67B1ED6} + ANX.Framework.Windows.GL3 + {6899F0C9-70B9-4EB0-9DD3-E598D4BE3E35} ANX.Framework diff --git a/shader/GL3/SpriteBatch_GLSL.fx b/shader/GL3/SpriteBatch_GLSL.fx index 3ab0b25d..48558105 100644 --- a/shader/GL3/SpriteBatch_GLSL.fx +++ b/shader/GL3/SpriteBatch_GLSL.fx @@ -43,7 +43,27 @@ uniform mat4 MatrixTransform; -//TODO: rewrite to GLSL from here on +// +// Vertex Shader +// + +void main(void) +{ + gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; +} + +##!fragment!## + +// +// Fragment Shader +// + +void main(void) +{ + gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0); +} + +/* Texture2D Texture : register(t0); sampler TextureSampler : register(s0); @@ -86,3 +106,4 @@ technique10 SpriteTechnique SetPixelShader( CompileShader( ps_4_0, SpritePixelShader() ) ); } } +*/ \ No newline at end of file