daily update on 20240413 by nitload youmu, camera complete
This commit is contained in:
@@ -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();
|
||||
/**/
|
||||
|
||||
|
||||
Reference in New Issue
Block a user