Files
eiifwhrn-game-engine-edition/t2d.h
T
2026-06-08 17:07:34 -04:00

45 lines
1.2 KiB
C++

#ifndef T2D_CLASS
#define T2D_CLASS
#include <iostream>
#include <random>
#include <vector>
#include<glad/glad.h>
#include<GLFW/glfw3.h>
#include<glm/glm.hpp>
#include<glm/gtc/matrix_transform.hpp>
#include<glm/gtc/type_ptr.hpp>
#include "Structures.h"
class t2d_package {
public:
glm::vec4 position;
glm::vec4 size;
glm::vec2 center = { 0.0f,0.0f };
glm::vec2 pixelposition;
glm::vec2 pixelsize;
glm::vec2 NormalizedCenterPos;
glm::vec2 NormalizedCenterScale;
void Recalculate() {
//WRITE SETTING FUNCTIONS THAT CALL THIS INSTEAD OF CALLING EVERY FRAME
float fheight = (float)window->height;
float fwidth = (float)window->width;
pixelsize = {size.z + size.x * fwidth, size.w + size.y * fheight };
pixelposition = { position.z + position.x * fwidth - center.x * pixelsize.x, position.w + position.y * fheight - center.y * pixelsize.y};
NormalizedCenterPos = { 2.0f * (pixelposition.x+ pixelsize.x/2.0f) / fwidth - 1.0f,2.0f * (pixelposition.y + pixelsize.y / 2.0f) / fheight - 1.0f };
NormalizedCenterScale = {pixelsize.x/ fwidth,pixelsize.y/ fheight};
}
private:
};
#endif