daily update on 20240413 by nitload youmu, camera complete

This commit is contained in:
YoumuLiu
2024-04-13 04:04:14 +08:00
parent f0f80f72f1
commit 7c755fe1e2
99 changed files with 1351 additions and 1119 deletions
+29 -22
View File
@@ -70,10 +70,10 @@ namespace StgSharp
0.0f, 0.5f, 0.0f
);
Rectangle rec = new Rectangle(
-0.3f, 0.3f, 0.0f,
0.3f, 0.3f, 0.0f,
0.3f, -0.3f, 0.0f,
-0.3f, -0.3f, 0.0f
-0.3f, 0.3f, 130.0f,
0.3f, 0.3f, 130.0f,
0.3f, -0.3f, 130.0f,
-0.3f, -0.3f, 130.0f
);
Polygon5 polygon = new Polygon5(
-0.4f, 0.5f, 0.0f,
@@ -121,24 +121,18 @@ namespace StgSharp
/**/
camera = new Camera(
new vec3d(1,1,1),
new vec3d(0,0,0),
new vec3d(0,0,200),
new vec3d(0,0,100),
new vec3d(0,1,0)
);
camera.SetViewRange(new Radius(Scaler.Pi / 2),this.Size,(0,0),(1f,1f));
camera.SetViewRange(new Degree(5),Size,(0,0),(50f,50f));
camera.GainAllUniforms(shader, "camera");
/**/
camera.Test(
new vec4d(0.5f,0.5f,0, 1),
new vec4d(0.5f, -0.5f, 0, 1),
new vec4d(-0.5f, -0.5f, 0, 1),
new vec4d(-0.5f, 0.5f, 0, 1)
);
/**/
//camera.Test();
}
protected override void Main()
{
float movement = 0.005f;
GL.ClearColor(0.333f, 0.555f, 0.555f, 1.0f);
GL.Clear(MaskBufferBit.COLOR | MaskBufferBit.DEPTH);
@@ -157,18 +151,31 @@ namespace StgSharp
/**/
float time = CurrentFrameCount / 60.0f;
camera.SetViewDirection(
new vec3d(Scaler.Cos(time * 10), 1, Scaler.Sin(time * 10)),
new vec3d(0, 0, 0),
new vec3d(0, 1, 0)
);
if (InternalIO.glfwGetKey(this.WindowID,GLconst.GLFW_KEY_UP) == KeyStatus.PRESS)
{
camera.Pitch(new Radius(movement));
}
else if (InternalIO.glfwGetKey(this.WindowID, GLconst.GLFW_KEY_DOWN) == KeyStatus.PRESS)
{
camera.Pitch(new Radius(-movement));
}
if (InternalIO.glfwGetKey(WindowID, GLconst.GLFW_KEY_LEFT) == KeyStatus.PRESS)
{
camera.Yaw(new Radius(-movement));
}
else if (InternalIO.glfwGetKey(WindowID, GLconst.GLFW_KEY_RIGHT) == KeyStatus.PRESS)
{
camera.Yaw(new Radius(movement));
}
GL.SetValue(color,
0.5f + MathF.Cos(time),
0.5f + MathF.Sin(time * 0.66667f + 2 * Scaler.Pi / 3),
0.5f + MathF.Sin(time * 0.33333f + Scaler.Pi / 3),
0.5f + MathF.Sin(time * 0.66667f + (2 * Scaler.Pi / 3)),
0.5f + MathF.Sin(time * 0.33333f + (Scaler.Pi / 3)),
time
);
camera.SetAllUniforms();
/**/