fix winding order
All checks were successful
Run ReCI Build Test / Explore-Gitea-Actions (push) Successful in 1m51s

This commit is contained in:
2024-10-24 12:23:55 -04:00
parent ad34e9ffc0
commit 7687c0d873
2 changed files with 24 additions and 27 deletions

View File

@@ -150,7 +150,7 @@ public:
fov_increasing = false;
else if (fov <= 75)
fov_increasing = true;
J3D::ChangeFOV(fov);
//J3D::ChangeFOV(fov);
sprite_radians += 0.005;
textAngle.y += .05f;
@@ -169,7 +169,7 @@ public:
J3D::WireframeSphere(Colors::Green, {0,0,0.5f}, 0.25f, 1.f, 10, 10);
J3D::FillAABB(Colors::Whites::AliceBlue, {0,0,0.5f}, {0.1f, 0.05f, 0.1f});
J3D::WireframeAABB(Colors::Gray, {0,0,0.5f}, {0.11f, 0.06f, 0.11f});
//J3D::WireframeAABB(Colors::Gray, {0,0,0.5f}, {0.11f, 0.06f, 0.11f});
//J3D::WireframeIcosahedron(Colors::Green, {0,0,0.5f}, 0.125f, 1.f);
J3D::End();

View File

@@ -1284,58 +1284,55 @@ namespace JGL {
void J3D::FillAABB(const Color4 &color, const Vector3 &pos, const Vector3 &radii) {
// Top of cube
Vector3 top_right_top = pos + Vector3(radii.x, radii.y, -radii.z);
Vector3 top_left_top = pos + Vector3(-radii.x, radii.y, -radii.z);
Vector3 bottom_left_top = pos - radii;
Vector3 bottom_right_top = pos + Vector3(radii.x, radii.y, radii.z);
Vector3 bottom_left_top = pos + Vector3(-radii.x, radii.y, radii.z);
Vector3 top_left_top = pos + Vector3(-radii.x, radii.y, -radii.z);
// Bottom of cube
Vector3 top_right_bottom = pos + Vector3(radii.x, -radii.y, radii.z);
Vector3 top_left_bottom = pos + Vector3(-radii.x, -radii.y, radii.z);
Vector3 bottom_left_bottom = pos - radii;
Vector3 bottom_right_bottom = pos + Vector3(radii.x, -radii.y, -radii.z);
Vector3 bottom_left_bottom = pos + Vector3(-radii.x, -radii.y, -radii.z);
Vector3 top_left_bottom = pos + Vector3(-radii.x, -radii.y, radii.z);
// front of cube
Vector3 top_right_front = pos + radii;
Vector3 top_left_front = pos + Vector3(-radii.x, radii.y, radii.z);
Vector3 bottom_left_front = pos + Vector3(-radii.x, -radii.y, radii.z);
Vector3 top_right_front = pos + Vector3(radii.x, radii.y, radii.z);
Vector3 bottom_right_front = pos + Vector3(radii.x, -radii.y, radii.z);
Vector3 bottom_left_front = pos + Vector3(-radii.x, -radii.y, radii.z);
Vector3 top_left_front = pos + Vector3(-radii.x, radii.y, radii.z);
// back of cube
Vector3 top_right_back = pos + Vector3(radii.x, -radii.y, -radii.z);
Vector3 top_left_back = pos - radii;
Vector3 bottom_left_back = pos + Vector3(-radii.x, radii.y, -radii.z);
Vector3 bottom_right_back = pos + Vector3(radii.x, radii.y, -radii.z);
Vector3 top_right_back = pos + Vector3(radii.x, radii.y, -radii.z);
Vector3 bottom_right_back = pos + Vector3(radii.x, -radii.y, -radii.z);
Vector3 bottom_left_back = pos + Vector3(-radii.x, -radii.y, -radii.z);
Vector3 top_left_back = pos + Vector3(-radii.x, radii.y, -radii.z);
// left of cube
Vector3 top_right_left = pos + Vector3(-radii.x, radii.y, radii.z);
Vector3 top_left_left = pos + Vector3(-radii.x, radii.y, -radii.z);
Vector3 bottom_left_left = pos - radii;
Vector3 bottom_right_left = pos + Vector3(-radii.x, -radii.y, radii.z);
Vector3 bottom_left_left = pos + Vector3(-radii.x, -radii.y, -radii.z);
Vector3 top_left_left = pos + Vector3(-radii.x, radii.y, -radii.z);
// right of cube
Vector3 top_right_right = pos + Vector3(radii.x, radii.y, -radii.z);
Vector3 top_left_right = pos + radii;
Vector3 bottom_left_right = pos + Vector3(radii.x, -radii.y, radii.z);
Vector3 bottom_right_right = pos + Vector3(radii.x, -radii.y, -radii.z);
Vector3 bottom_left_right = pos + Vector3(radii.x, -radii.y, radii.z);
Vector3 top_left_right = pos + Vector3(radii.x, radii.y, radii.z);
std::vector<Vector3> vertices
{
top_right_top, top_left_top, bottom_left_top, bottom_right_top,
top_right_bottom, top_left_bottom, bottom_left_bottom, bottom_right_bottom,
top_right_front, top_left_front, bottom_left_front, bottom_right_front,
top_right_back, top_left_back, bottom_left_back, bottom_right_back,
top_right_left, top_left_left, bottom_left_left, bottom_right_left,
top_right_right, top_left_right, bottom_left_right, bottom_right_right
top_right_top, bottom_right_top, bottom_left_top, top_left_top,
top_right_bottom, bottom_right_bottom, bottom_left_bottom, top_left_bottom,
top_right_front, bottom_right_front, bottom_left_front, top_left_front,
top_right_back, bottom_right_back, bottom_left_back, top_left_back,
top_right_left, bottom_right_left, bottom_left_left, top_left_left,
top_right_right, bottom_right_right, bottom_left_right, top_left_right
};
//glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
glColor4ubv(color.ptr());
//glBindBuffer(GL_ARRAY_BUFFER, vertices.size());
glVertexPointer(3, GL_FLOAT, sizeof(Vector3), vertices.data());
glDrawArrays(GL_TRIANGLE_FAN, 0, vertices.size());
glDrawArrays(GL_QUADS, 0, vertices.size());
glColor4fv(baseColor);
}