From d64eb04dd5fb28afcb05f14d73b02c5668acaecc Mon Sep 17 00:00:00 2001 From: BZLZHH Date: Fri, 4 Apr 2025 10:52:33 +0800 Subject: [PATCH] [Docs|Misc] (...): Add PlannedFunctions.md. Add more directories about these funcs. --- MG/Includes.h | 18 +++++ MG/MG_GL/GL/Buffer/GL_Buffer.cpp | 9 +++ MG/MG_GL/GL/Buffer/GL_Buffer.h | 14 ++++ MG/MG_GL/GL/Command/GL_Command.cpp | 9 +++ MG/MG_GL/GL/Command/GL_Command.h | 14 ++++ MG/MG_GL/GL/Program/GL_Program.cpp | 9 +++ MG/MG_GL/GL/Program/GL_Program.h | 14 ++++ MG/MG_GL/GL/Shader/GL_Shader.cpp | 9 +++ MG/MG_GL/GL/Shader/GL_Shader.h | 14 ++++ MG/MG_GL/GL/Texture/GL_Texture.cpp | 9 +++ MG/MG_GL/GL/Texture/GL_Texture.h | 14 ++++ MG/MG_GL/GL/VertexArray/GL_VertexArray.cpp | 9 +++ MG/MG_GL/GL/VertexArray/GL_VertexArray.h | 14 ++++ PlannedFunctions.md | 90 ++++++++++++++++++++++ 14 files changed, 246 insertions(+) create mode 100644 MG/MG_GL/GL/Buffer/GL_Buffer.cpp create mode 100644 MG/MG_GL/GL/Buffer/GL_Buffer.h create mode 100644 MG/MG_GL/GL/Command/GL_Command.cpp create mode 100644 MG/MG_GL/GL/Command/GL_Command.h create mode 100644 MG/MG_GL/GL/Program/GL_Program.cpp create mode 100644 MG/MG_GL/GL/Program/GL_Program.h create mode 100644 MG/MG_GL/GL/Shader/GL_Shader.cpp create mode 100644 MG/MG_GL/GL/Shader/GL_Shader.h create mode 100644 MG/MG_GL/GL/Texture/GL_Texture.cpp create mode 100644 MG/MG_GL/GL/Texture/GL_Texture.h create mode 100644 MG/MG_GL/GL/VertexArray/GL_VertexArray.cpp create mode 100644 MG/MG_GL/GL/VertexArray/GL_VertexArray.h create mode 100644 PlannedFunctions.md diff --git a/MG/Includes.h b/MG/Includes.h index fb859620..19e538ad 100644 --- a/MG/Includes.h +++ b/MG/Includes.h @@ -14,6 +14,24 @@ #ifndef MOBILEGL_BACKENDINFO_H #include "MG_GL/GL/Getter/BackendInfo.h" #endif +#ifndef MOBILEGL_GL_BUFFER_H +#include "MG_GL/GL/Buffer/GL_Buffer.h" +#endif +#ifndef MOBILEGL_GL_COMMAND_H +#include "MG_GL/GL/Command/GL_Command.h" +#endif +#ifndef MOBILEGL_GL_PROGRAM_H +#include "MG_GL/GL/Program/GL_Program.h" +#endif +#ifndef MOBILEGL_GL_SHADER_H +#include "MG_GL/GL/Shader/GL_Shader.h" +#endif +#ifndef MOBILEGL_GL_TEXTURE_H +#include "MG_GL/GL/Texture/GL_Texture.h" +#endif +#ifndef MOBILEGL_GL_VERTEXARRAY_H +#include "MG_GL/GL/VertexArray/GL_VertexArray.h" +#endif #ifndef MOBILEGL_LOOKUP_H #include "MG_GL/GLX/LookUp/LookUp.h" #endif diff --git a/MG/MG_GL/GL/Buffer/GL_Buffer.cpp b/MG/MG_GL/GL/Buffer/GL_Buffer.cpp new file mode 100644 index 00000000..4a2214c6 --- /dev/null +++ b/MG/MG_GL/GL/Buffer/GL_Buffer.cpp @@ -0,0 +1,9 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#include "GL_Buffer.h" + +namespace MG_GL::GL { + +} \ No newline at end of file diff --git a/MG/MG_GL/GL/Buffer/GL_Buffer.h b/MG/MG_GL/GL/Buffer/GL_Buffer.h new file mode 100644 index 00000000..45e0b939 --- /dev/null +++ b/MG/MG_GL/GL/Buffer/GL_Buffer.h @@ -0,0 +1,14 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#ifndef MOBILEGL_GL_BUFFER_H +#define MOBILEGL_GL_BUFFER_H + +#include "../../../Includes.h" + +namespace MG_GL::GL { + +} + +#endif //MOBILEGL_GL_BUFFER_H diff --git a/MG/MG_GL/GL/Command/GL_Command.cpp b/MG/MG_GL/GL/Command/GL_Command.cpp new file mode 100644 index 00000000..f7e34eb2 --- /dev/null +++ b/MG/MG_GL/GL/Command/GL_Command.cpp @@ -0,0 +1,9 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#include "GL_Command.h" + +namespace MG_GL::GL { + +} \ No newline at end of file diff --git a/MG/MG_GL/GL/Command/GL_Command.h b/MG/MG_GL/GL/Command/GL_Command.h new file mode 100644 index 00000000..e48996f9 --- /dev/null +++ b/MG/MG_GL/GL/Command/GL_Command.h @@ -0,0 +1,14 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#ifndef MOBILEGL_GL_COMMAND_H +#define MOBILEGL_GL_COMMAND_H + +#include "../../../Includes.h" + +namespace MG_GL::GL { + +} + +#endif //MOBILEGL_GL_COMMAND_H diff --git a/MG/MG_GL/GL/Program/GL_Program.cpp b/MG/MG_GL/GL/Program/GL_Program.cpp new file mode 100644 index 00000000..6c3abd6f --- /dev/null +++ b/MG/MG_GL/GL/Program/GL_Program.cpp @@ -0,0 +1,9 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#include "GL_Program.h" + +namespace MG_GL::GL { + +} \ No newline at end of file diff --git a/MG/MG_GL/GL/Program/GL_Program.h b/MG/MG_GL/GL/Program/GL_Program.h new file mode 100644 index 00000000..66cced44 --- /dev/null +++ b/MG/MG_GL/GL/Program/GL_Program.h @@ -0,0 +1,14 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#ifndef MOBILEGL_GL_PROGRAM_H +#define MOBILEGL_GL_PROGRAM_H + +#include "../../../Includes.h" + +namespace MG_GL::GL { + +} + +#endif //MOBILEGL_GL_PROGRAM_H diff --git a/MG/MG_GL/GL/Shader/GL_Shader.cpp b/MG/MG_GL/GL/Shader/GL_Shader.cpp new file mode 100644 index 00000000..2c6fe3b1 --- /dev/null +++ b/MG/MG_GL/GL/Shader/GL_Shader.cpp @@ -0,0 +1,9 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#include "GL_Shader.h" + +namespace MG_GL::GL { + +} \ No newline at end of file diff --git a/MG/MG_GL/GL/Shader/GL_Shader.h b/MG/MG_GL/GL/Shader/GL_Shader.h new file mode 100644 index 00000000..b8dd124d --- /dev/null +++ b/MG/MG_GL/GL/Shader/GL_Shader.h @@ -0,0 +1,14 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#ifndef MOBILEGL_GL_SHADER_H +#define MOBILEGL_GL_SHADER_H + +#include "../../../Includes.h" + +namespace MG_GL::GL { + +} + +#endif //MOBILEGL_GL_SHADER_H diff --git a/MG/MG_GL/GL/Texture/GL_Texture.cpp b/MG/MG_GL/GL/Texture/GL_Texture.cpp new file mode 100644 index 00000000..4c08d6c7 --- /dev/null +++ b/MG/MG_GL/GL/Texture/GL_Texture.cpp @@ -0,0 +1,9 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#include "GL_Texture.h" + +namespace MG_GL::GL { + +} \ No newline at end of file diff --git a/MG/MG_GL/GL/Texture/GL_Texture.h b/MG/MG_GL/GL/Texture/GL_Texture.h new file mode 100644 index 00000000..3108c2a8 --- /dev/null +++ b/MG/MG_GL/GL/Texture/GL_Texture.h @@ -0,0 +1,14 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#ifndef MOBILEGL_GL_TEXTURE_H +#define MOBILEGL_GL_TEXTURE_H + +#include "../../../Includes.h" + +namespace MG_GL::GL { + +} + +#endif //MOBILEGL_GL_TEXTURE_H diff --git a/MG/MG_GL/GL/VertexArray/GL_VertexArray.cpp b/MG/MG_GL/GL/VertexArray/GL_VertexArray.cpp new file mode 100644 index 00000000..dcc5f5f6 --- /dev/null +++ b/MG/MG_GL/GL/VertexArray/GL_VertexArray.cpp @@ -0,0 +1,9 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#include "GL_VertexArray.h" + +namespace MG_GL::GL { + +} \ No newline at end of file diff --git a/MG/MG_GL/GL/VertexArray/GL_VertexArray.h b/MG/MG_GL/GL/VertexArray/GL_VertexArray.h new file mode 100644 index 00000000..ec0de6da --- /dev/null +++ b/MG/MG_GL/GL/VertexArray/GL_VertexArray.h @@ -0,0 +1,14 @@ +// +// Created by BZLZHH on 2025/3/15. +// + +#ifndef MOBILEGL_GL_VERTEXARRAY_H +#define MOBILEGL_GL_VERTEXARRAY_H + +#include "../../../Includes.h" + +namespace MG_GL::GL { + +} + +#endif //MOBILEGL_GL_VERTEXARRAY_H diff --git a/PlannedFunctions.md b/PlannedFunctions.md new file mode 100644 index 00000000..c571eade --- /dev/null +++ b/PlannedFunctions.md @@ -0,0 +1,90 @@ +### **1. Initialization & Query Functions** +[ ] `glGetAttribLocation` +[ ] `glGetBufferParameteriv` +[ ] `glGetError` +[ ] `glGetIntegerv` +[ ] `glGetProgramiv` +[ ] `glGetShaderiv` +[ ] `glGetString` +[ ] `glGetStringi` +[ ] `glGetTexLevelParameteriv` +[ ] `glGetUniformLocation` + +--- + +### **2. Texture Operations** +[ ] `glActiveTexture` +[ ] `glBindTexture` +[ ] `glDeleteTextures` +[ ] `glGenTextures` +[ ] `glTexImage2D` +[ ] `glTexParameterf` +[ ] `glTexParameteri` +[ ] `glTexSubImage2D` + +--- + +### **3. Framebuffer Operations** +[ ] `glBindFramebuffer` +[ ] `glCheckFramebufferStatus` +[ ] `glDeleteFramebuffers` +[ ] `glFramebufferTexture2D` +[ ] `glGenFramebuffers` + +--- + +### **4. Shader & Program Management** +[ ] `glAttachShader` +[ ] `glBindAttribLocation` +[ ] `glCompileShader` +[ ] `glCreateProgram` +[ ] `glCreateShader` +[ ] `glDeleteProgram` +[ ] `glDeleteShader` +[ ] `glLinkProgram` +[ ] `glShaderSource` +[ ] `glUseProgram` + +--- + +### **5. Buffer & Vertex Array Operations** +[ ] `glBindBuffer` +[ ] `glBindVertexArray` +[ ] `glBufferData` +[ ] `glEnableVertexAttribArray` +[ ] `glGenBuffers` +[ ] `glGenVertexArrays` +[ ] `glMapBuffer` +[ ] `glUnmapBuffer` +[ ] `glVertexAttribIPointer` +[ ] `glVertexAttribPointer` + +--- + +### **6. State Management** +[ ] `glBlendFunc` +[ ] `glBlendFuncSeparate` +[ ] `glClear` +[ ] `glClearColor` +[ ] `glClearDepth` +[ ] `glColorMask` +[ ] `glDepthFunc` +[ ] `glDepthMask` +[ ] `glDisable` +[ ] `glEnable` +[ ] `glPixelStorei` +[ ] `glViewport` + +--- + +### **7. Uniforms & Attributes** +[ ] `glUniform1fv` +[ ] `glUniform1i` +[ ] `glUniform1iv` +[ ] `glUniform4fv` +[ ] `glUniformMatrix4fv` + +--- + +### **8. Drawing Commands** +[ ] `glDrawElements` \ No newline at end of file