daily uodate on 20231208 by nitload youmu, preparation for multi thread rendering

This commit is contained in:
Nitload
2023-12-08 05:36:04 +08:00
parent ae804553ce
commit ab85c1a9fe
297 changed files with 157896 additions and 5170 deletions
@@ -0,0 +1,117 @@
using StgSharp.Graphics;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
namespace StgSharp
{
public static class Platform
{
/// <summary>
/// Init an instance of OpenGL program,
/// This method should be called before other
/// graphic methods, after LoadGL method.
/// </summary>
public static void InitGL(int majorVersion, int minorVersion)
{
if (InternalIO.glfw == null)
{
try
{
InternalIO.glfw = new glFramework_PInvoke();
InternalIO.glfw.Init();
InternalIO.InternalWriteLog("Successfully load GLFW APIs. StgSharp is now working on p/invoke mode", LogType.Info);
}
catch (Exception sig)
{
string log = $"Failed to load GLFW APIs by P/Invoke," +
$"StgSharp will switch to delegate mode. The detailed info is:\n" +
$"{sig.Message}\n";
if (InternalIO.SSClibPtr == default)
{
InternalIO.SSClibPtr =
InternalIO.InternalLoadWINlib(InternalIO.SSC_libname + ".dll");
}
InternalIO.glfw = new glFramework_Delegate();
InternalIO.SSClibPtr = InternalIO.InternalLoadWINlib(InternalIO.SSC_libname);
FieldInfo[] glfwApis = typeof(glFramework_Delegate).GetFields();
foreach (FieldInfo item in glfwApis)
{
if (item.FieldType.BaseType == typeof(Delegate))
{
try
{
IntPtr funcptr = InternalIO.InternalGetWINproc(
InternalIO.SSClibPtr, item.Name);
item.SetValue(null, ConvertAPI(funcptr, item.FieldType));
log += $"Successfully load GLFW API called {item.Name}";
}
catch (Exception ex)
{
log += $"Failed to load GLFW API called {item.Name}, the detailed info is\n" +
$"{ex.Message}";
continue;
}
}
}
InternalIO.InternalWriteLog(log, LogType.Warning);
}
}
InternalIO.InternalInitGL(4, 6);
}
/// <summary>
/// Write a log message to log file, and mark the level of this message.
/// </summary>
/// <param name="message">A string contains information of how current evironment runs.</param>
/// <param name="logType">The severity of current message.</param>
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void WriteLog(string message, LogType logType)
{
InternalIO.InternalWriteLog(message, logType);
}
internal static TDele ConvertAPI<TDele>(IntPtr funcPtr)
{
if (funcPtr == IntPtr.Zero)
{
throw new Exception("Failed to convert api, the function pointer is zero.");
}
try
{
return Marshal.GetDelegateForFunctionPointer<TDele>(funcPtr);
}
catch (Exception ex)
{
throw;
}
}
internal static Delegate ConvertAPI(IntPtr funcPtr, Type T)
{
if (funcPtr == IntPtr.Zero)
{
throw new Exception("Failed to convert api, the function pointer is zero.");
}
try
{
return Marshal.GetDelegateForFunctionPointer(funcPtr, T);
}
catch (Exception ex)
{
throw;
}
}
}
}
+123 -72
View File
@@ -12,26 +12,56 @@ using System.Text;
namespace StgSharp
{
internal static class Program
public class StgSharpDemoForm : Form
{
internal unsafe static void DebugMain(string[] args)
Uniform<float, float, float> color;
ElementBuffer ebo;
Uniform<int> ourTexture;
Uniform<int> ourTexture2;
Shader shader;
Texture texture;
VertexArray vao;
VertexBuffer vbo;
public static unsafe void ProcessInput(IntPtr windowPtr)
{
if (InternalIO.glfw.GetKey(windowPtr, (int)Operation.Key.ESCAPE)
== KeyStatus.PRESS)
{
InternalIO.glfw.SetWindowShouldClose(windowPtr, 1);
}
}
public override void Deinit(object[] args)
{
/**/
vao.Dispose();
vbo.Dispose();
ebo.Dispose();
/**/
InternalIO.glfw.Terminate();
}
public unsafe void FormSizeCallback(IntPtr window, int width, int height)
{
GL.Viewport(0, 0, width, height);
}
public override void Init(object[] args)
{
InternalIO.InternalWriteLog("\n\n\n", "Program start", LogType.Info);
Graphic.InitGL(4, 6);
Platform.InitGL(4, 6);
//GL.glfw->WindowHint(GLFW.GLFW_DECORATED, GLFW.GL_FALSE);
//Form f = Graphic.CreateWindow(800, 600, "Test STG#!", IntPtr.Zero, null);
Form f = new Form(800, 600, "Hello,STG#!", IntPtr.Zero, null);
f.MakeAsCurrentContext();
f.SetSizeLimit(800, 600, 800, 600);
GL.SetFrameBufferSizeCallback(f, FormSizeCallback);
InitForm(800, 600, "Hello, STG#!", IntPtr.Zero, null);
MakeAsCurrentContext();
SetSizeLimit(800, 600, 800, 600);
GL.SetFrameBufferSizeCallback(windowID, FormSizeCallback);
glManager.LoadGLapi(f, glManager.LoadGLfunc);
this.LoadGLapi(null);
Shader shader = new Shader();
shader = CreateShader();
shader.CompileVertexShader(
File.ReadAllText("Shader\\vertex.vert")
);
@@ -40,7 +70,6 @@ namespace StgSharp
);
shader.Link();
Triangle tri = new Triangle(
-0.5f, -0.3f, 0.0f,
0.5f, -0.5f, 0.0f,
@@ -48,10 +77,10 @@ namespace StgSharp
);
Rectangle rec = new Rectangle(
-0.4f, 0.5f, 0.0f,
-0.5f, 0.5f, 0.0f,
0.5f, 0.5f, 0.0f,
0.6f, -0.5f, 0.0f,
-0.7f, -0.5f, 0.0f
0.5f, -0.5f, 0.0f,
-0.5f, -0.5f, 0.0f
);
Polygon5 polygon = new Polygon5(
@@ -63,70 +92,105 @@ namespace StgSharp
);
VertexArray vao = new VertexArray(1);
VertexBuffer vbo = new VertexBuffer(1);
ElementBuffer ebo = new ElementBuffer(1);
GL.gl.BindVertexArray(vao[0]);
vao = CreateVertexArray(1);
vbo = CreateVertexBuffer(2);
ebo = CreateElementBuffer(1);
texture = CreateTexture(2);
float[] texCoord = {
0.0f, 0.0f,
1.0f, 0.0f,
1.0f, 1.0f,
0.0f, 1.0f };
vbo.SetData(0, polygon.VertexBuffer, BufferUsage.STATIC_DRAW);
ebo.SetData(0, polygon.Indices, BufferUsage.STATIC_DRAW);
GL.BindVertexArray(vao[0]);
ebo.SetValue(0, rec.Indices, BufferUsage.STATIC_DRAW);
vbo.SetValue(0, rec.VertexBuffer, BufferUsage.STATIC_DRAW);
GL.SetVertexAttribute(0, 3, typeof(float), false, 4 * sizeof(float), 0);
GL.gl.VertexAttribPointer(0, 3, GLconst.FLOAT, false, 4 * sizeof(float), (void*)0);
GL.gl.EnableVertexAttribArray(0);
vbo.SetValueArray(1, texCoord, BufferUsage.STATIC_DRAW);
GL.SetVertexAttribute(2, 2, typeof(float), false, 2 * sizeof(float), 0);
/**/
GL.gl.BindBuffer(GLconst.ARRAY_BUFFER, 0);
GL.gl.BindVertexArray(0);
GL.BindBuffer(BufferType.ARRAY_BUFFER, 0);
vao.BindNull();
/**/
texture.Bind2D(0);
texture.Set2dWrapProperty(Wrap.Repeat, Wrap.Repeat);
texture.Set2dFilterProperty(Filter.Nearest, Filter.Nearest);
texture.LoadTexture(0, "Shader\\Image1.png", null);
texture.Bind2D(1);
texture.Set2dWrapProperty(Wrap.Repeat, Wrap.Repeat);
texture.Set2dFilterProperty(Filter.Nearest, Filter.Nearest);
texture.LoadTexture(1, "Shader\\awesomeface.png", null);
while (InternalIO.glfw.WindowShouldClose(f.windowID) == 0)
{
ProcessInput(f.windowID);
GL.ClearColor(0.2f, 0.3f, 0.3f, 1.0f);
GL.gl.Clear(GLconst.COLOR_BUFFER_BIT);
shader.Use();
GL.gl.BindVertexArray(vao._bufferID[0]);
GL.DrawElements(GepmetryType.TRIANGLES, 9, typeof(uint), IntPtr.Zero);
GL.gl.BindVertexArray(0);
InternalIO.glfw.SwapBuffers(f.windowID);
InternalIO.glfw.PollEvents();
InternalIO.glfw.PollEvents();
}
//color = GetUniform<float, float, float>(shader, "color");
shader.Use();
/**/
vao.Dispose();
vbo.Dispose();
ebo.Dispose();
//ourTexture = GetUniform<int>(shader, "ourTexture");
GL.SetValue(ourTexture, 0);
//ourTexture2 = GetUniform<int>(shader, "ourTexture2");
GL.SetValue(ourTexture2, 1);
/**/
/*
Graphic.glDeleteVertexArrays(1, &vao);
Graphic.glDeleteBuffers(1, &vao);
Graphic.glDeleteBuffers(1, &vao);
/**/
InternalIO.glfw.Terminate();
}
public override void OnRenderFrame(object[] args)
{
}
public override void OnUpdateFrame(object[] args)
{
ProcessInput(windowID);
GL.ClearColor(0.333f, 0.555f, 0.555f, 1.0f);
//GL.api.Clear(GLconst.COLOR_BUFFER_BIT);
GL.Clear(MaskBufferBit.COLOR);
vao.Bind(0);
shader.Use();
/**/
texture.Activate(TextureUnit.Unit0);
texture.Bind2D(0);
texture.Activate(TextureUnit.Unit1);
texture.Bind2D(1);
/**/
float time = (float)InternalIO.glfw.GetTime();
GL.SetValue(color,
0.5f + MathF.Sin(time),
0.5f + MathF.Sin(time/* + 0.667f * 3.14f/**/),
0.5f + MathF.Sin(time/* - 0.667f * 3.14f/**/)
);
vao.Bind(0);
GL.DrawElements(GepmetryType.TRIANGLES, 6, typeof(uint), IntPtr.Zero);
vao.BindNull();
InternalIO.glfw.SwapBuffers(windowID);
InternalIO.glfw.PollEvents();
}
}
internal static class Program
{
internal unsafe static void Main(string[] args)
{
try
{
DebugMain(args);
StgSharpDemoForm demoForm = new StgSharpDemoForm();
demoForm.ShowForm();
}
catch (Exception ex)
{
@@ -136,19 +200,6 @@ namespace StgSharp
}
}
public static unsafe void FormSizeCallback(IntPtr window, int width, int height)
{
GL.gl.Viewport(0, 0, width, height);
}
public static unsafe void ProcessInput(IntPtr windowPtr)
{
if (InternalIO.glfw.GetKey(windowPtr, (int)Control.Key.ESCAPE)
== KeyStatus.PRESS)
{
InternalIO.glfw.SetWindowShouldClose(windowPtr, 1);
}
}
[DllImport(InternalIO.SSC_libname, EntryPoint = "printShaderCode",
CallingConvention = CallingConvention.Cdecl)]
Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

+9 -2
View File
@@ -1,10 +1,17 @@
#version 330 core
in vec4 vertexColor;
in vec3 TexColor;
in vec2 TexCoord;
out vec4 FragColor;
uniform sampler2D ourTexture;
uniform sampler2D ourTexture2;
void main()
{
FragColor = vertexColor;
vec4 tex1 = texture(ourTexture, TexCoord);
vec4 tex2 = texture(ourTexture2,TexCoord);
FragColor = mix(tex1,tex2,0.2) /**/ *vec4( TexColor,1.0) /**/;
}
+11 -4
View File
@@ -1,12 +1,19 @@
#version 330 core
layout(location=0)in vec3 aPos;
out vec4 vertexColor;
layout(location = 0) in vec3 aPos;
layout(location = 1) in vec3 aColor;
layout(location = 2) in vec2 aTextCoord;
out vec3 TexColor;
out vec2 TexCoord;
uniform vec3 color;
void main()
{
gl_Position=vec4(aPos.xyz,1.0);
vertexColor = vec4(0.1,0.003,0.665,1.0);
gl_Position = vec4(aPos.xyz,1.0);
TexColor = color;
TexCoord = aTextCoord;
}
+19 -4
View File
@@ -18,16 +18,25 @@
<Platforms>AnyCPU;x64</Platforms>
<BaseOutputPath>$(SolutionDir)Output</BaseOutputPath>
<RunPostBuildEvent>Always</RunPostBuildEvent>
<Configurations>Debug;Release;RealDebug</Configurations>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<Optimize>False</Optimize>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='RealDebug|AnyCPU'">
<Optimize>False</Optimize>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Optimize>False</Optimize>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='RealDebug|x64'">
<Optimize>False</Optimize>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
<Optimize>False</Optimize>
</PropertyGroup>
@@ -36,23 +45,29 @@
<Optimize>False</Optimize>
</PropertyGroup>
<ItemGroup>
<Compile Remove="Graphics\GL\ShaderEdit\ShaderParameter.cs" />
</ItemGroup>
<ItemGroup>
<None Remove="SSG_errorlog.log" />
</ItemGroup>
<ItemGroup>
<Folder Include="Control\" />
<Folder Include="Entities\" />
<Folder Include="Geometries\" />
<Folder Include="Logic\" />
<Folder Include="Math\" />
<Folder Include="Shader\" />
</ItemGroup>
<ItemGroup>
<None Update="Shader\awesomeface.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="Shader\fragment.frag">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="Shader\Image1.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="Shader\vertex.vert">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
@@ -1,10 +0,0 @@
#version 330 core
in vec4 vertexColor;
out vec4 FragColor;
void main()
{
FragColor = vertexColor;
}
@@ -1,13 +0,0 @@
#version 330 core
layout(location=0)in vec3 aPos;
out vec4 vertexColor;
void main()
{
gl_Position=vec4(aPos.xyz,1.0);
vertexColor = vec4(0.1,0.003,0.665,1.0);
}
@@ -1,190 +0,0 @@
Info @ 2023-10-20T15:45:52.4427915+08:00
Program start
Error @ 2023-10-20T15:45:52.7265226+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNTEXIMAGEPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7269499+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNUNIFORMDVPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7274528+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPDVPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7277644+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPFVPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7280761+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPIVPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7293075+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPFVPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7296140+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPUIVPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7298946+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPUSVPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7301998+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPOLYGONSTIPPLEPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7305920+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNCOLORTABLEPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7308939+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNCONVOLUTIONFILTERPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7311593+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNSEPARABLEFILTERPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7314446+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNHISTOGRAMPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7317891+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMINMAXPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7326180+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC, this API may not exist.
Error @ 2023-10-20T15:45:52.7329101+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC, this API may not exist.
Info @ 2023-10-20T15:46:31.6850318+08:00
Program start
Error @ 2023-10-20T15:46:31.9140429+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNTEXIMAGEPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9145351+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNUNIFORMDVPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9148847+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPDVPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9151926+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPFVPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9154621+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPIVPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9157500+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPFVPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9161398+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPUIVPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9164459+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPUSVPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9167360+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPOLYGONSTIPPLEPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9171899+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNCOLORTABLEPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9175789+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNCONVOLUTIONFILTERPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9179874+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNSEPARABLEFILTERPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9183215+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNHISTOGRAMPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9186304+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMINMAXPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9194820+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC, this API may not exist.
Error @ 2023-10-20T15:46:31.9199159+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC, this API may not exist.
Info @ 2023-10-20T15:46:59.8856521+08:00
Program start
Error @ 2023-10-20T15:47:00.1231520+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNTEXIMAGEPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1235519+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNUNIFORMDVPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1240040+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPDVPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1243103+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPFVPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1246085+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPIVPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1248977+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPFVPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1251758+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPUIVPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1254423+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPUSVPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1257159+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPOLYGONSTIPPLEPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1259969+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNCOLORTABLEPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1262854+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNCONVOLUTIONFILTERPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1265674+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNSEPARABLEFILTERPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1268453+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNHISTOGRAMPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1271225+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMINMAXPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1279429+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC, this API may not exist.
Error @ 2023-10-20T15:47:00.1282368+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC, this API may not exist.
Info @ 2023-10-20T15:47:14.1555831+08:00
Program start
Error @ 2023-10-20T15:47:14.3739577+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNTEXIMAGEPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3744334+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNUNIFORMDVPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3748506+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPDVPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3751885+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPFVPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3755084+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPIVPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3758281+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPFVPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3761426+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPUIVPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3764358+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPUSVPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3767702+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPOLYGONSTIPPLEPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3770769+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNCOLORTABLEPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3774320+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNCONVOLUTIONFILTERPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3779925+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNSEPARABLEFILTERPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3783343+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNHISTOGRAMPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3787896+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMINMAXPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3797505+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC, this API may not exist.
Error @ 2023-10-20T15:47:14.3800523+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC, this API may not exist.
Info @ 2023-10-20T15:47:28.0534335+08:00
Program start
Error @ 2023-10-20T15:47:28.2590154+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNTEXIMAGEPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2594119+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNUNIFORMDVPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2597470+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPDVPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2601820+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPFVPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2605272+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMAPIVPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2608410+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPFVPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2611631+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPUIVPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2614859+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPIXELMAPUSVPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2618521+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNPOLYGONSTIPPLEPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2621453+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNCOLORTABLEPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2624222+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNCONVOLUTIONFILTERPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2626938+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNSEPARABLEFILTERPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2629702+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNHISTOGRAMPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2632383+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLGETNMINMAXPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2639431+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC, this API may not exist.
Error @ 2023-10-20T15:47:28.2642146+08:00
Cannot load OpenGL API called StgSharp.Graphics.PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC, this API may not exist.
@@ -1,8 +0,0 @@
#version 330 core
out vec4 FragColor;
void main()
{
FragColor = vec4(0.225f,0.123f,0.5f,1.0f);
}
@@ -1,10 +0,0 @@
#version 330 core
layout(location=0)in vec3 aPos;
void main()
{
gl_Position=vec4(aPos.xyz,1.0);
}
@@ -1,23 +0,0 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v6.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"StgSharpDebug/1.0.0": {
"runtime": {
"StgSharpDebug.dll": {}
}
}
}
},
"libraries": {
"StgSharpDebug/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}
@@ -1,12 +0,0 @@
{
"runtimeOptions": {
"tfm": "net6.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "6.0.0"
},
"configProperties": {
"System.Reflection.Metadata.MetadataUpdater.IsSupported": false
}
}
}
@@ -1,94 +0,0 @@
Info @ 2023-11-01T18:42:44.5502832+08:00
Program start
Info @ 2023-11-01T18:42:44.5632156+08:00
vec3d
Error @ 2023-11-01T18:42:44.6113240+08:00
Unable to find an entry point named 'glfwInit' in DLL 'StgSharpGraphic'.
at StgSharp.Program.testInitGL()
at StgSharp.Program.DebugMain(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 28
at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 136
Info @ 2023-11-01T18:43:05.1973225+08:00
Program start
Info @ 2023-11-01T18:43:05.2048182+08:00
vec3d
Info @ 2023-11-01T19:40:43.6922324+08:00
Program start
Info @ 2023-11-01T19:40:43.7061258+08:00
vec3d
Error @ 2023-11-01T19:40:43.7520195+08:00
Unable to find an entry point named 'glfwInit' in DLL 'StgSharpGraphic'.
at StgSharp.Program.testInitGL()
at StgSharp.Program.DebugMain(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 28
at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 136
Info @ 2023-11-01T19:46:56.1002068+08:00
Program start
Info @ 2023-11-01T19:46:56.1177177+08:00
vec3d
Error @ 2023-11-01T19:46:56.1749244+08:00
Unable to find an entry point named 'glfwInit' in DLL 'StgSharpGraphic'.
at StgSharp.Program.testInitGL()
at StgSharp.Program.DebugMain(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 28
at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 136
Info @ 2023-11-02T06:57:45.9939201+08:00
Program start
Info @ 2023-11-02T06:57:46.0032025+08:00
vec3d
Error @ 2023-11-02T06:57:46.0539316+08:00
Unable to find an entry point named 'glfwInit' in DLL 'StgSharpGraphic'.
at StgSharp.Program.testInitGL()
at StgSharp.Program.DebugMain(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 28
at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 136
Info @ 2023-11-02T06:57:57.7881728+08:00
Program start
Info @ 2023-11-02T06:57:57.7971426+08:00
vec3d
Error @ 2023-11-02T06:57:57.8147608+08:00
Unable to find an entry point named 'glfwInit' in DLL 'StgSharpGraphic'.
at StgSharp.Program.testInitGL()
at StgSharp.Program.DebugMain(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 28
at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 136
Info @ 2023-11-02T06:58:09.6583001+08:00
Program start
Info @ 2023-11-02T06:58:09.6659476+08:00
vec3d
Info @ 2023-11-03T21:17:26.5337195+08:00
Program start
Info @ 2023-11-03T21:17:26.5442000+08:00
vec3d
Error @ 2023-11-03T21:17:26.5833735+08:00
Do not init GL twice
at StgSharp.Graphics.Graphic.InitGL(Int32 majorVersion, Int32 minorVersion) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Graphics\Graphic.cs:line 81
at StgSharp.Program.DebugMain(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 26
at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 132
@@ -1,72 +0,0 @@
Info @ 2023-11-04T05:19:39.3110981+08:00
Program start
Info @ 2023-11-04T05:19:39.3239610+08:00
vec3d
Warning @ 2023-11-04T05:19:39.3401348+08:00
Failed to load GLFW APIs by P/Invoke,StgSharp will switch to delegate mode.The detailed info is:
Value cannot be null. (Parameter 'm')
Error @ 2023-11-04T05:19:39.3845889+08:00
Object reference not set to an instance of an object.
at StgSharp.Graphics.Form.MakeAsCurrentContext() in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Graphics\Form.cs:line 104
at StgSharp.Program.DebugMain(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 31
at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 132
Info @ 2023-11-04T05:21:12.7230114+08:00
Program start
Info @ 2023-11-04T05:21:12.7299496+08:00
vec3d
Info @ 2023-11-04T05:25:34.2157074+08:00
Program start
Info @ 2023-11-04T05:25:34.2221735+08:00
vec3d
Info @ 2023-11-04T05:27:43.1091986+08:00
Program start
Info @ 2023-11-04T05:27:43.1182665+08:00
vec3d
Error @ 2023-11-04T05:27:43.1418735+08:00
Object reference not set to an instance of an object.
at StgSharp.Graphics.Form.MakeAsCurrentContext() in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Graphics\Form.cs:line 104
at StgSharp.Program.DebugMain(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 31
at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 132
Info @ 2023-11-04T05:28:04.4690984+08:00
Program start
Info @ 2023-11-04T05:28:04.4786393+08:00
vec3d
Error @ 2023-11-04T05:28:04.5028414+08:00
Object reference not set to an instance of an object.
at StgSharp.Graphics.Form.MakeAsCurrentContext() in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Graphics\Form.cs:line 104
at StgSharp.Program.DebugMain(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 31
at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 132
Info @ 2023-11-04T05:29:13.9030168+08:00
Program start
Info @ 2023-11-04T05:29:13.9115196+08:00
vec3d
Error @ 2023-11-04T05:29:13.9356158+08:00
Object reference not set to an instance of an object.
at StgSharp.Graphics.Form.MakeAsCurrentContext() in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Graphics\Form.cs:line 104
at StgSharp.Program.DebugMain(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 31
at StgSharp.Program.Main(String[] args) in D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\Program.cs:line 132
@@ -1,10 +0,0 @@
#version 330 core
in vec4 vertexColor;
out vec4 FragColor;
void main()
{
FragColor = vertexColor;
}
@@ -1,13 +0,0 @@
#version 330 core
layout(location=0)in vec3 aPos;
out vec4 vertexColor;
void main()
{
gl_Position=vec4(aPos.xyz,1.0);
vertexColor = vec4(0.1,0.003,0.665,1.0);
}
@@ -1,23 +0,0 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v6.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"StgSharpDebug/1.0.0": {
"runtime": {
"StgSharpDebug.dll": {}
}
}
}
},
"libraries": {
"StgSharpDebug/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}
@@ -1,9 +0,0 @@
{
"runtimeOptions": {
"tfm": "net6.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "6.0.0"
}
}
}
@@ -60,7 +60,7 @@
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.401\\RuntimeIdentifierGraph.json"
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.100\\RuntimeIdentifierGraph.json"
}
}
}
@@ -7,7 +7,7 @@
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\Nitlo\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.7.0</NuGetToolVersion>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.8.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\Nitlo\.nuget\packages\" />
@@ -67,7 +67,7 @@
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.401\\RuntimeIdentifierGraph.json"
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.100\\RuntimeIdentifierGraph.json"
}
}
}
@@ -1,6 +1,6 @@
{
"version": 2,
"dgSpecHash": "8o0e+XOPWIUCetvIpnINKGDtJ+TxlAo2pRPckDXb7oQQr3e4VczHCbYgbtt4FmavrHYsLJnBPvDsledArmY/bg==",
"dgSpecHash": "1nqa9hyE9X+jqyZlRuQCjBTL8MKTTgUfYf2sfonyHllnRQAA71O6a8K8DrjOqAQvuEaLDdfS/m1mxyfRDQg0zg==",
"success": true,
"projectFilePath": "D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\源代码\\StgSharpDebug\\StgSharpDebug.csproj",
"expectedPackageFiles": [],
@@ -1 +1 @@
4de0c9258b96801d9e42b6813fa6519daca0e6bc
9f92006774b8dcbe7ff116213c08f7040b5d19f4b0a547971f9e00de3873288c
@@ -9,3 +9,5 @@ build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = StgSharpDebug
build_property.ProjectDir = D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =
@@ -1 +1 @@
b88d3dd655e6b46a04f51a138750d3fbfc55ef8f
0cc30eba77e6c91b52c576a70e8fcd0f2b49a5f218c9481661031b833082af12
@@ -23,3 +23,6 @@ D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharp
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.xml
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.pdb
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.genruntimeconfig.cache
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\Shader\Image1.png
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\Debug\net6.0\Shader\awesomeface.png
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\Debug\net6.0\StgSharpDebug.sourcelink.json
@@ -1 +1 @@
a9b27855a09b37d2383b24daf1d8cece33fa658d
ea0ebfd1cd59c5700d207915aa4401613d3e32652ccbcca32e347ba391485f3e
@@ -0,0 +1 @@
{"documents":{"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\*":"https://raw.githubusercontent.com/Nitload-NSI/CCD_Github/ae804553ce830ceaa07a752049a8a8fee9981ad8/*"}}
@@ -25,7 +25,12 @@
<param name="funcname">the name of the Opengl function</param>
<returns>An intptr value representing the pointer to the function</returns>
</member>
<member name="M:StgSharp.Graphics.Form.#ctor(System.Int32,System.Int32,System.String,System.IntPtr,StgSharp.Graphics.Form)">
<member name="T:StgSharp.Graphics.Form">
<summary>
</summary>
</member>
<member name="M:StgSharp.Graphics.Form.InitForm(System.Int32,System.Int32,System.String,System.IntPtr,StgSharp.Graphics.Form)">
<summary>
Constructor of a Form, creats an instance of a form and
initilize all the customizing operations.
@@ -72,12 +77,20 @@
Maximum size of current form. In form of a <see cref="T:StgSharp.Math.Vec2d"/> of (width,height)
</param>
</member>
<member name="M:StgSharp.Graphics.VertexBuffer.Unbind">
<member name="M:StgSharp.Graphics.Form.Texture.LoadTexture(System.Int32,System.String,StgSharp.Graphics.ImageLoader)">
<summary>
</summary>
<param name="name"></param>
<param name="index"></param>
<param name="loader"></param>
</member>
<member name="M:StgSharp.Graphics.Form.VertexBuffer.Unbind">
<summary>
</summary>
</member>
<member name="M:StgSharp.Graphics.VertexBuffer.SetData``1(System.Int32,``0,StgSharp.Graphics.BufferUsage)">
<member name="M:StgSharp.Graphics.Form.VertexBuffer.SetValue``1(System.Int32,``0,StgSharp.Graphics.BufferUsage)">
<summary>
</summary>
@@ -85,26 +98,31 @@
<param name="bufferData"></param>
<param name="readType"></param>
</member>
<member name="M:StgSharp.Graphics.GL.SetFrameBufferSizeCallback(StgSharp.Graphics.Form,StgSharp.Graphics.FrameBufferSizeHandler)">
<summary>
sets the framebuffer resize callback of the specified <see cref="T:StgSharp.Graphics.Form"/>,
which is called when the framebuffer of the specified <see cref="T:StgSharp.Graphics.Form"/> is resized.
</summary>
<param name="form">The Form instance to be controlled</param>
<param name="handler">Method hadler </param>
</member>
<member name="M:StgSharp.Graphics.GL.ClearColor(System.Single,System.Single,System.Single,System.Single)">
<member name="M:StgSharp.Graphics.Form.GLfunc.ClearColor(System.Single,System.Single,System.Single,System.Single)">
<summary>
Call glClearColor in OpenGL
specifies the red, green, blue, and alpha values used by glClear to clear the color buffers.
Values specified by glClearColor are clamped to the range [0,1]
Call apiClearColor in OpenGL
specifies the red, green, blue, and alpha values used by apiClear to clear the color buffers.
Values specified by apiClearColor are clamped to the range [0,1]
</summary>
<param name="R">Specify the red values used when the color buffers are cleared.</param>
<param name="G">Specify the red values used when the color buffers are cleared.</param>
<param name="B">Specify the red values used when the color buffers are cleared.</param>
<param name="A">Specify the red values used when the color buffers are cleared.</param>
</member>
<member name="M:StgSharp.Graphics.GL.CompileShader(System.String,StgSharp.Graphics.ShaderType)">
<member name="M:StgSharp.Graphics.Form.GLfunc.BindBuffer(StgSharp.Graphics.BufferType,System.UInt32)">
<summary>
Bind the indexed buffer object to certain type of buffer
</summary>
<param name="bufferType"></param>
<param name="index"></param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.Clear(StgSharp.Graphics.MaskBufferBit)">
<summary>
Clear buffers to preset values
</summary>
<param name="mask"></param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.CompileShader(System.String,StgSharp.Graphics.ShaderType)">
<summary>
Conpile the provided shader code in string form.
</summary>
@@ -113,7 +131,7 @@
conpile, including vertex shader and fragment shader.</param>
<returns>An uint value as the only mark of conpiled shader</returns>
</member>
<member name="M:StgSharp.Graphics.GL.CreateWindow(System.Int32,System.Int32,System.String,System.IntPtr,StgSharp.Graphics.Form)">
<member name="M:StgSharp.Graphics.Form.GLfunc.CreateWindowHandle(System.Int32,System.Int32,System.String,System.IntPtr,StgSharp.Graphics.Form)">
<summary>
Creates a form and its associated
</summary>
@@ -125,6 +143,140 @@
<returns>The instance of created form</returns>
<exception cref="T:System.Exception"></exception>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetFrameBufferSizeCallback(System.IntPtr,StgSharp.Graphics.FrameBufferSizeHandler)">
<summary>
sets the framebuffer resize callback of the specified <see cref="T:StgSharp.Graphics.Form"/>,
which is called when the framebuffer of the specified <see cref="T:StgSharp.Graphics.Form"/> is resized.
</summary>
<param name="id">The only signiture stands for the <see cref="T:StgSharp.Graphics.Form"/> to be controlled</param>
<param name="handler">Method hadler </param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetVertexAttribute(System.UInt32,System.Int32,System.Type,System.Boolean,System.Int32,System.Int32)">
<summary>
Set how a shader parameter read data from a VBO.
</summary>
<param name="index">Serial number of the parameter</param>
<param name="size">Amount of data each elements contains</param>
<param name="t">Type of data read by shader</param>
<param name="normalized"></param>
<param name="stride">Pixels stride of each sets of data</param>
<param name="pointer"></param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Single},System.Single)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`1"/>,
all types of parameters are float.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`1"/> target</param>
<param name="v0">The value to be set</param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Int32},System.Int32)">
<summary>
Set data value to a int <see cref="T:StgSharp.Graphics.Form.Uniform`1"/>,
all types of parameters are int.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`1"/> target</param>
<param name="i0">The value to be set</param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Single,System.Single},System.Single,System.Single)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`2"/>,
all types of parameters are float.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`2"/> target</param>
<param name="v0">The first value to be set</param>
<param name="v1">The second value to be set</param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Single,System.Single,System.Single},System.Single,System.Single,System.Single)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`3"/>,
all types of parameters are float.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`3"/> target</param>
<param name="v0">The first value to be set</param>
<param name="v1">The second value to be set</param>
<param name="v2">The third value to be set</param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Single,System.Single,System.Single,System.Single},System.Single,System.Single,System.Single,System.Single)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`4"/>,
all types of parameters are float.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`4"/> target</param>
<param name="v0">The first value to be set</param>
<param name="v1">The second value to be set</param>
<param name="v2">The third value to be set</param>
<param name="v3">The forth value to be set</param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Single,System.Single,System.Single,System.Single},StgSharp.Math.Vec4d)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`4"/>,
all types of parameters are float.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`4"/> target</param>
<param name="vec">A <see cref="T:StgSharp.Math.Vec4d"/> packing four parameters of the uniform </param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{StgSharp.Math.Vec4d},StgSharp.Math.Vec4d)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`1"/>,
all types of parameters are <see cref="T:StgSharp.Math.Vec4d"/>.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`1"/> target</param>
<param name="vec">A <see cref="T:StgSharp.Math.Vec4d"/> value of the uniform </param>
</member>
<member name="M:StgSharp.Graphics.Form.CreateShader">
<summary>
Create an instance of <see cref="T:StgSharp.Graphics.Form.Shader"/> program
</summary>
<returns>New instance of <see cref="T:StgSharp.Graphics.Form.Shader"/> instance. </returns>
</member>
<member name="F:StgSharp.Graphics.Form.Shader.programID">
<summary>
A <see cref="T:System.UInt32"/> value represent this shader.
</summary>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.#ctor(StgSharp.Graphics.Form.GLfunc)">
<summary>
Inti a shader with no program attached.
</summary>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.CompileVertexShader(System.String)">
<summary>
Compile the vertex shader to be attached to this shader.
</summary>
<param name="shaderCode">GLSL code of vertex shader.</param>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.CompileFragmentShader(System.String)">
<summary>
Compile the fragment shader to be attached to this shader.
</summary>
<param name="shaderCode">GLSL code of fragment shader.</param>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.Link">
<summary>
Link the shader to current context.
</summary>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.GetUniform``1(System.String)">
<summary>
Get a uniform form current shader,
the value type of the uniform should be provided.
</summary>
<param name="name"></param>
<returns></returns>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.Use">
<summary>
Let the current context use this shader.
</summary>
</member>
<member name="M:StgSharp.Graphics.glManager.LoadGLapi(StgSharp.Graphics.Form,StgSharp.Graphics.GLfuncLoader)">
<summary>
Load all aupportable OpenGL APIs and bind them to given <see cref="T:StgSharp.Graphics.Form"/> context.
</summary>
<param name="form">The <see cref="T:StgSharp.Graphics.Form"/> used as current OpenGL context</param>
<param name="loader">A delegate that can get o</param>
</member>
<member name="M:StgSharp.Graphics.glManager.LoadGLfunc(System.String)">
<summary>
Get the function pointer of given OpenGL api name
@@ -132,13 +284,6 @@
<param name="name">Name of the OpenGL api</param>
<returns>The funtion pointer of the api in form of <see cref="T:System.IntPtr"/></returns>
</member>
<member name="M:StgSharp.Graphics.Graphic.InitGL(System.Int32,System.Int32)">
<summary>
Init an instance of OpenGL program,
This method should be called before other
graphic methods, after LoadGL method.
</summary>
</member>
<member name="F:StgSharp.Controlling.TimeLine.tickCounter">
<summary>
Tick counter count the frames passed since the program start.
@@ -164,6 +309,37 @@
Y position of an enemy entity
</summary>
</member>
<member name="M:StgSharp.Platform.InitGL(System.Int32,System.Int32)">
<summary>
Init an instance of OpenGL program,
This method should be called before other
graphic methods, after LoadGL method.
</summary>
</member>
<member name="M:StgSharp.Platform.WriteLog(System.String,StgSharp.LogType)">
<summary>
Write a log message to log file, and mark the level of this message.
</summary>
<param name="message">A string contains information of how current evironment runs.</param>
<param name="logType">The severity of current message.</param>
</member>
<member name="F:StgSharp.Geometries.PartialPlainCoordinate.origin">
<summary>
The origin of this coordinate.
</summary>
</member>
<member name="P:StgSharp.Geometries.PartialPlainCoordinate.axis_H">
<summary>
The horizontial axis of the coordinate.
Point to the right direction.
</summary>
</member>
<member name="P:StgSharp.Geometries.PartialPlainCoordinate.axis_V">
<summary>
The vertical axis of the coordinate.
Point to the top direction.
</summary>
</member>
<member name="T:StgSharp.Geometries.UnusedVertexException">
<summary>
当几何体调用了过多的CalcVec方法时,产生UnusedVertexException异常
@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")]
@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("StgSharpDebug")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("RealDebug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+ae804553ce830ceaa07a752049a8a8fee9981ad8")]
[assembly: System.Reflection.AssemblyProductAttribute("StgSharpDebug")]
[assembly: System.Reflection.AssemblyTitleAttribute("StgSharpDebug")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// 由 MSBuild WriteCodeFragment 类生成。
@@ -0,0 +1 @@
63a080bc42c0bb736ca9e5b46cabf354deebbf39b22352e61556bc7b65dd5fad
@@ -0,0 +1,13 @@
is_global = true
build_property.TargetFramework = net6.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = StgSharpDebug
build_property.ProjectDir = D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =
@@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;
@@ -0,0 +1 @@
cb2a87f7264eb34bd18b0176a3d9ceba20afc19d8b459888a31de5636ec9ca1d
@@ -0,0 +1,19 @@
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\RealDebug\net6.0\StgSharpDebug.GeneratedMSBuildEditorConfig.editorconfig
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\RealDebug\net6.0\StgSharpDebug.AssemblyInfoInputs.cache
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\RealDebug\net6.0\StgSharpDebug.AssemblyInfo.cs
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\RealDebug\net6.0\StgSharpDebug.csproj.CoreCompileInputs.cache
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\RealDebug\net6.0\StgSharpDebug.sourcelink.json
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\RealDebug\net6.0\StgSharpDebug.exe
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\RealDebug\net6.0\Shader\awesomeface.png
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\RealDebug\net6.0\Shader\fragment.frag
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\RealDebug\net6.0\Shader\Image1.png
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\RealDebug\net6.0\Shader\vertex.vert
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\RealDebug\net6.0\StgSharpDebug.deps.json
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\RealDebug\net6.0\StgSharpDebug.runtimeconfig.json
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\RealDebug\net6.0\StgSharpDebug.dll
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\RealDebug\net6.0\StgSharpDebug.pdb
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\Output\x64\RealDebug\net6.0\StgSharpDebug.xml
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\RealDebug\net6.0\StgSharpDebug.dll
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\RealDebug\net6.0\StgSharpDebug.xml
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\RealDebug\net6.0\StgSharpDebug.pdb
D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpDebug\obj\x64\RealDebug\net6.0\StgSharpDebug.genruntimeconfig.cache
@@ -0,0 +1 @@
70e3b52c02ccf008061ca1b26ec2d03626c3db48147a1cc842d0a8079aafe3a7
@@ -0,0 +1 @@
{"documents":{"D:\\NitloadIndustry\\研究项目\\1-Flagship\\TH2020\\ProjectFile\\*":"https://raw.githubusercontent.com/Nitload-NSI/CCD_Github/ae804553ce830ceaa07a752049a8a8fee9981ad8/*"}}
@@ -18,46 +18,6 @@
<param name="key"></param>
<returns></returns>
</member>
<member name="M:StgSharp.Graphics.GL.SetFrameBufferSizeCallback(StgSharp.Graphics.Form,StgSharp.Graphics.FrameBufferSizeHandler)">
<summary>
sets the framebuffer resize callback of the specified <see cref="T:StgSharp.Graphics.Form"/>,
which is called when the framebuffer of the specified <see cref="T:StgSharp.Graphics.Form"/> is resized.
</summary>
<param name="form">The Form instance to be controlled</param>
<param name="handler">Method hadler </param>
</member>
<member name="M:StgSharp.Graphics.GL.ClearColor(System.Single,System.Single,System.Single,System.Single)">
<summary>
Call glClearColor in OpenGL
specifies the red, green, blue, and alpha values used by glClear to clear the color buffers.
Values specified by glClearColor are clamped to the range [0,1]
</summary>
<param name="R">Specify the red values used when the color buffers are cleared.</param>
<param name="G">Specify the red values used when the color buffers are cleared.</param>
<param name="B">Specify the red values used when the color buffers are cleared.</param>
<param name="A">Specify the red values used when the color buffers are cleared.</param>
</member>
<member name="M:StgSharp.Graphics.GL.CompileShader(System.String,StgSharp.Graphics.ShaderType)">
<summary>
Conpile the provided shader code in string form.
</summary>
<param name="shaderCode">A string represent the shader's code</param>
<param name="shaderType">An <see cref="T:StgSharp.Graphics.ShaderType"/> enum represent the type of the shader to
conpile, including vertex shader and fragment shader.</param>
<returns>An uint value as the only mark of conpiled shader</returns>
</member>
<member name="M:StgSharp.Graphics.GL.CreateWindow(System.Int32,System.Int32,System.String,System.IntPtr,StgSharp.Graphics.Form)">
<summary>
Creates a form and its associated
</summary>
<param name="width">Required width</param>
<param name="height">Required width</param>
<param name="tittle">Tittle of the window </param>
<param name="monitor"></param>
<param name="share"></param>
<returns>The instance of created form</returns>
<exception cref="T:System.Exception"></exception>
</member>
<member name="T:StgSharp.Graphics.glLoader">
<summary>
Function handler to load an opengl function by serching its name.
@@ -65,7 +25,12 @@
<param name="funcname">the name of the Opengl function</param>
<returns>An intptr value representing the pointer to the function</returns>
</member>
<member name="M:StgSharp.Graphics.Form.#ctor(System.Int32,System.Int32,System.String,System.IntPtr,StgSharp.Graphics.Form)">
<member name="T:StgSharp.Graphics.Form">
<summary>
</summary>
</member>
<member name="M:StgSharp.Graphics.Form.InitForm(System.Int32,System.Int32,System.String,System.IntPtr,StgSharp.Graphics.Form)">
<summary>
Constructor of a Form, creats an instance of a form and
initilize all the customizing operations.
@@ -112,12 +77,20 @@
Maximum size of current form. In form of a <see cref="T:StgSharp.Math.Vec2d"/> of (width,height)
</param>
</member>
<member name="M:StgSharp.Graphics.VertexBuffer.Unbind">
<member name="M:StgSharp.Graphics.Form.Texture.LoadTexture(System.Int32,System.String,StgSharp.Graphics.ImageLoader)">
<summary>
</summary>
<param name="name"></param>
<param name="index"></param>
<param name="loader"></param>
</member>
<member name="M:StgSharp.Graphics.Form.VertexBuffer.Unbind">
<summary>
</summary>
</member>
<member name="M:StgSharp.Graphics.VertexBuffer.SetData``1(System.Int32,``0,StgSharp.Graphics.BufferUsage)">
<member name="M:StgSharp.Graphics.Form.VertexBuffer.SetValue``1(System.Int32,``0,StgSharp.Graphics.BufferUsage)">
<summary>
</summary>
@@ -125,6 +98,192 @@
<param name="bufferData"></param>
<param name="readType"></param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.ClearColor(System.Single,System.Single,System.Single,System.Single)">
<summary>
Call apiClearColor in OpenGL
specifies the red, green, blue, and alpha values used by apiClear to clear the color buffers.
Values specified by apiClearColor are clamped to the range [0,1]
</summary>
<param name="R">Specify the red values used when the color buffers are cleared.</param>
<param name="G">Specify the red values used when the color buffers are cleared.</param>
<param name="B">Specify the red values used when the color buffers are cleared.</param>
<param name="A">Specify the red values used when the color buffers are cleared.</param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.BindBuffer(StgSharp.Graphics.BufferType,System.UInt32)">
<summary>
Bind the indexed buffer object to certain type of buffer
</summary>
<param name="bufferType"></param>
<param name="index"></param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.Clear(StgSharp.Graphics.MaskBufferBit)">
<summary>
Clear buffers to preset values
</summary>
<param name="mask"></param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.CompileShader(System.String,StgSharp.Graphics.ShaderType)">
<summary>
Conpile the provided shader code in string form.
</summary>
<param name="shaderCode">A string represent the shader's code</param>
<param name="shaderType">An <see cref="T:StgSharp.Graphics.ShaderType"/> enum represent the type of the shader to
conpile, including vertex shader and fragment shader.</param>
<returns>An uint value as the only mark of conpiled shader</returns>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.CreateWindowHandle(System.Int32,System.Int32,System.String,System.IntPtr,StgSharp.Graphics.Form)">
<summary>
Creates a form and its associated
</summary>
<param name="width">Required width</param>
<param name="height">Required width</param>
<param name="tittle">Tittle of the window </param>
<param name="monitor"></param>
<param name="share"></param>
<returns>The instance of created form</returns>
<exception cref="T:System.Exception"></exception>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetFrameBufferSizeCallback(System.IntPtr,StgSharp.Graphics.FrameBufferSizeHandler)">
<summary>
sets the framebuffer resize callback of the specified <see cref="T:StgSharp.Graphics.Form"/>,
which is called when the framebuffer of the specified <see cref="T:StgSharp.Graphics.Form"/> is resized.
</summary>
<param name="id">The only signiture stands for the <see cref="T:StgSharp.Graphics.Form"/> to be controlled</param>
<param name="handler">Method hadler </param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetVertexAttribute(System.UInt32,System.Int32,System.Type,System.Boolean,System.Int32,System.Int32)">
<summary>
Set how a shader parameter read data from a VBO.
</summary>
<param name="index">Serial number of the parameter</param>
<param name="size">Amount of data each elements contains</param>
<param name="t">Type of data read by shader</param>
<param name="normalized"></param>
<param name="stride">Pixels stride of each sets of data</param>
<param name="pointer"></param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Single},System.Single)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`1"/>,
all types of parameters are float.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`1"/> target</param>
<param name="v0">The value to be set</param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Int32},System.Int32)">
<summary>
Set data value to a int <see cref="T:StgSharp.Graphics.Form.Uniform`1"/>,
all types of parameters are int.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`1"/> target</param>
<param name="i0">The value to be set</param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Single,System.Single},System.Single,System.Single)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`2"/>,
all types of parameters are float.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`2"/> target</param>
<param name="v0">The first value to be set</param>
<param name="v1">The second value to be set</param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Single,System.Single,System.Single},System.Single,System.Single,System.Single)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`3"/>,
all types of parameters are float.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`3"/> target</param>
<param name="v0">The first value to be set</param>
<param name="v1">The second value to be set</param>
<param name="v2">The third value to be set</param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Single,System.Single,System.Single,System.Single},System.Single,System.Single,System.Single,System.Single)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`4"/>,
all types of parameters are float.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`4"/> target</param>
<param name="v0">The first value to be set</param>
<param name="v1">The second value to be set</param>
<param name="v2">The third value to be set</param>
<param name="v3">The forth value to be set</param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{System.Single,System.Single,System.Single,System.Single},StgSharp.Math.Vec4d)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`4"/>,
all types of parameters are float.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`4"/> target</param>
<param name="vec">A <see cref="T:StgSharp.Math.Vec4d"/> packing four parameters of the uniform </param>
</member>
<member name="M:StgSharp.Graphics.Form.GLfunc.SetValue(StgSharp.Graphics.Form.Uniform{StgSharp.Math.Vec4d},StgSharp.Math.Vec4d)">
<summary>
Set data value to a float <see cref="T:StgSharp.Graphics.Form.Uniform`1"/>,
all types of parameters are <see cref="T:StgSharp.Math.Vec4d"/>.
</summary>
<param name="uniform">The <see cref="T:StgSharp.Graphics.Form.Uniform`1"/> target</param>
<param name="vec">A <see cref="T:StgSharp.Math.Vec4d"/> value of the uniform </param>
</member>
<member name="M:StgSharp.Graphics.Form.CreateShader">
<summary>
Create an instance of <see cref="T:StgSharp.Graphics.Form.Shader"/> program
</summary>
<returns>New instance of <see cref="T:StgSharp.Graphics.Form.Shader"/> instance. </returns>
</member>
<member name="F:StgSharp.Graphics.Form.Shader.programID">
<summary>
A <see cref="T:System.UInt32"/> value represent this shader.
</summary>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.#ctor(StgSharp.Graphics.Form.GLfunc)">
<summary>
Inti a shader with no program attached.
</summary>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.CompileVertexShader(System.String)">
<summary>
Compile the vertex shader to be attached to this shader.
</summary>
<param name="shaderCode">GLSL code of vertex shader.</param>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.CompileFragmentShader(System.String)">
<summary>
Compile the fragment shader to be attached to this shader.
</summary>
<param name="shaderCode">GLSL code of fragment shader.</param>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.Link">
<summary>
Link the shader to current context.
</summary>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.GetUniform``1(System.String)">
<summary>
Get a uniform form current shader,
the value type of the uniform should be provided.
</summary>
<param name="name"></param>
<returns></returns>
</member>
<member name="M:StgSharp.Graphics.Form.Shader.Use">
<summary>
Let the current context use this shader.
</summary>
</member>
<member name="M:StgSharp.Graphics.glManager.LoadGLapi(StgSharp.Graphics.Form,StgSharp.Graphics.GLfuncLoader)">
<summary>
Load all aupportable OpenGL APIs and bind them to given <see cref="T:StgSharp.Graphics.Form"/> context.
</summary>
<param name="form">The <see cref="T:StgSharp.Graphics.Form"/> used as current OpenGL context</param>
<param name="loader">A delegate that can get o</param>
</member>
<member name="M:StgSharp.Graphics.glManager.LoadGLfunc(System.String)">
<summary>
Get the function pointer of given OpenGL api name
</summary>
<param name="name">Name of the OpenGL api</param>
<returns>The funtion pointer of the api in form of <see cref="T:System.IntPtr"/></returns>
</member>
<member name="M:StgSharp.Graphics.Graphic.InitGL(System.Int32,System.Int32)">
<summary>
Init an instance of OpenGL program,
@@ -157,6 +316,30 @@
Y position of an enemy entity
</summary>
</member>
<member name="M:StgSharp.Platform.WriteLog(System.String,StgSharp.LogType)">
<summary>
Write a log message to log file, and mark the level of this message.
</summary>
<param name="message">A string contains information of how current evironment runs.</param>
<param name="logType">The severity of current message.</param>
</member>
<member name="F:StgSharp.Geometries.PartialPlainCoordinate.origin">
<summary>
The origin of this coordinate.
</summary>
</member>
<member name="P:StgSharp.Geometries.PartialPlainCoordinate.axis_H">
<summary>
The horizontial axis of the coordinate.
Point to the right direction.
</summary>
</member>
<member name="P:StgSharp.Geometries.PartialPlainCoordinate.axis_V">
<summary>
The vertical axis of the coordinate.
Point to the top direction.
</summary>
</member>
<member name="T:StgSharp.Geometries.UnusedVertexException">
<summary>
当几何体调用了过多的CalcVec方法时,产生UnusedVertexException异常