Minor edits.
All checks were successful
Run ReCI Build Test / Explore-Gitea-Actions (push) Successful in 1m37s
All checks were successful
Run ReCI Build Test / Explore-Gitea-Actions (push) Successful in 1m37s
This commit is contained in:
27
main.cpp
27
main.cpp
@@ -11,9 +11,9 @@ using J3ML::LinearAlgebra::Vector2;
|
||||
using namespace JGL::Fonts;
|
||||
using namespace JGL;
|
||||
|
||||
JGL::Font FreeSans;
|
||||
float fps = 0.0f;
|
||||
|
||||
/// A draggable 2D point that highlights when moused over and when clicked.
|
||||
class Gizmo
|
||||
{
|
||||
public:
|
||||
@@ -23,6 +23,15 @@ public:
|
||||
bool hovered = false;
|
||||
Vector2 position;
|
||||
float range = 6.f;
|
||||
float base_radius = 3.f;
|
||||
float hover_radius = 6.f;
|
||||
float drag_radius = 4.f;
|
||||
Color4 base_color = Colors::Reds::Salmon;
|
||||
Color4 hover_color = Colors::Reds::Firebrick;
|
||||
Color4 drag_color = Colors::White;
|
||||
float lerp_rate = 0.25f;
|
||||
float text_scale = 1.f;
|
||||
int text_size = 12;
|
||||
|
||||
void Grab() {
|
||||
if (hovered)
|
||||
@@ -34,27 +43,25 @@ public:
|
||||
|
||||
void Update(const Vector2& mouse) {
|
||||
if (dragging)
|
||||
position = position.Lerp(mouse, 0.25f);
|
||||
position = position.Lerp(mouse, lerp_rate);
|
||||
|
||||
hovered = mouse.Distance(position) < range;
|
||||
}
|
||||
|
||||
void Draw() {
|
||||
|
||||
|
||||
if (dragging)
|
||||
J2D::DrawPoint(Colors::White, position, 4.f);
|
||||
J2D::DrawPoint(drag_color, position, drag_radius);
|
||||
else if (hovered)
|
||||
J2D::DrawPoint(Colors::Reds::Crimson, position, 6.f);
|
||||
J2D::DrawPoint(hover_color, position, hover_radius);
|
||||
else
|
||||
J2D::DrawPoint(Colors::Reds::Salmon, position, 3.f);
|
||||
|
||||
J2D::DrawString(Colors::White, std::format("{:.1f},{:.1f}", position.x, position.y), position.x, position.y, 1.f, 10, FreeSans);
|
||||
J2D::DrawPoint(base_color, position, base_radius);
|
||||
|
||||
J2D::DrawString(Colors::White, std::format("{:.1f},{:.1f}", position.x, position.y), position.x, position.y, text_scale, text_size);
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
/// A 3D Camera Controller.
|
||||
class Camera {
|
||||
public:
|
||||
Vector3 position = {0,0,0};
|
||||
@@ -98,6 +105,7 @@ Gizmo b({200, 250});
|
||||
Gizmo c({350, 300});
|
||||
Gizmo d({450, 250});
|
||||
|
||||
JGL::Font FreeSans;
|
||||
Texture* image;
|
||||
Texture* image_mask;
|
||||
RenderTarget* j2d_render_target;
|
||||
@@ -111,6 +119,7 @@ public:
|
||||
if (!JGL::Init(GetSize(), 75, 100))
|
||||
Logger::Fatal("Initialization failed.");
|
||||
|
||||
// Load a custom font.
|
||||
FreeSans = JGL::Font("assets/fonts/FreeSans.ttf");
|
||||
|
||||
glClearColor(0.f, 0.f, 0.f, 0.f);
|
||||
|
Reference in New Issue
Block a user