daily update on 20240213 by nitload youmu. 逐步弃用GLFW,正在使用wgl重写glfw底层,相关实现转移到C#实现,SSC彻底变成线性代数计算器。

This commit is contained in:
Nitload
2024-02-13 23:42:22 +08:00
parent 8391569482
commit a2241a5a58
307 changed files with 16701 additions and 10296 deletions
+11 -7
View File
@@ -51,7 +51,6 @@ namespace StgSharp
public override void Init(object[] args)
{
InternalIO.InternalWriteLog("\n\n\n", "Program start", LogType.Info);
Platform.InitGL(4, 6);
@@ -64,19 +63,22 @@ namespace StgSharp
(IntPtr id, uint width, uint height)
=>
{
GL.Viewport(0, 0, width, height);
gl.Viewport(0, 0, width, height);
};
this.LoadGLapi(null);
Console.WriteLine(gl);
shader = CreateShaderProgram();
var vertex = CreateShader(ShaderType.Vertex, 1);
var fragment = CreateShader(ShaderType.Fragment, 1);
vertex.Compile(ShaderType.Vertex, File.ReadAllText("Shader\\vertex.vert"));
vertex.Compile(File.ReadAllText("Shader\\vertex.vert"));
vertex.AttachTo(0, shader);
fragment.Compile(ShaderType.Fragment, File.ReadAllText("Shader\\fragment.frag"));
fragment.Compile(File.ReadAllText("Shader\\fragment.frag"));
fragment.AttachTo(0, shader);
Console.WriteLine(vertex);
shader.Link();
Triangle tri = new Triangle(
@@ -100,12 +102,12 @@ namespace StgSharp
-0.7f, -0.5f, 0.0f
);
vao = CreateVertexArray(1);
vbo = CreateVertexBuffer(2);
ebo = CreateElementBuffer(1);
texture = CreateTexture(2);
Console.WriteLine(texture);
float[] texCoord = {
0.0f, 0.0f,
@@ -128,9 +130,12 @@ namespace StgSharp
vao.BindNull();
/**/
Console.WriteLine(vao);
texture.Bind2D(0);
texture.Set2dWrapProperty(Wrap.Repeat, Wrap.Repeat);
texture.Set2dFilterProperty(Filter.Nearest, Filter.Nearest);
Console.WriteLine(texture);
texture.LoadTexture(0, "Shader\\Image1.png", null);
texture.Bind2D(1);
@@ -138,7 +143,6 @@ namespace StgSharp
texture.Set2dFilterProperty(Filter.Nearest, Filter.Nearest);
texture.LoadTexture(1, "Shader\\awesomeface.png", null);
//color = GetUniform<float, float, float>(shader, "color");
shader.Use();
@@ -149,7 +153,7 @@ namespace StgSharp
ourTexture2 = shader.GetUniform<int>("ourTexture2");
gl.SetValue(ourTexture2, 1);
/**/
Console.WriteLine(this);
}
public override void Main(params object[] args)