WIP Fullscreen Stuff (UI not scaling properly yet)
This commit is contained in:
+1
-1
Submodule assets updated: d5991da346...7cfd17fb7b
+6
-4
@@ -25,16 +25,18 @@ public:
|
|||||||
m_ResourceManager->RegisterType("Model", [rm](std::string resourceName) { return new Model(rm, *rm->Load<OBJ>("OBJ", resourceName)); });
|
m_ResourceManager->RegisterType("Model", [rm](std::string resourceName) { return new Model(rm, *rm->Load<OBJ>("OBJ", resourceName)); });
|
||||||
m_ResourceManager->RegisterType("Texture", [](std::string resourceName) { return new Texture(resourceName); });
|
m_ResourceManager->RegisterType("Texture", [](std::string resourceName) { return new Texture(resourceName); });
|
||||||
|
|
||||||
|
m_FrameStack = new GUI::Frame(m_EventBroker, m_ResourceManager);
|
||||||
|
m_FrameStack->Width = 1920;
|
||||||
|
m_FrameStack->Height = 1080;
|
||||||
|
|
||||||
m_Renderer = std::make_shared<Renderer>(m_ResourceManager);
|
m_Renderer = std::make_shared<Renderer>(m_ResourceManager);
|
||||||
|
m_Renderer->SetFullscreen(true);
|
||||||
|
m_Renderer->SetResolution(*static_cast<Rectangle*>(m_FrameStack));
|
||||||
m_Renderer->Initialize();
|
m_Renderer->Initialize();
|
||||||
|
|
||||||
m_InputManager = std::make_shared<InputManager>(m_Renderer->GetWindow(), m_EventBroker);
|
m_InputManager = std::make_shared<InputManager>(m_Renderer->GetWindow(), m_EventBroker);
|
||||||
|
|
||||||
m_FrameStack = new GUI::Frame(m_EventBroker, m_ResourceManager);
|
|
||||||
m_FrameStack->Width = 1280;
|
|
||||||
m_FrameStack->Height = 720;
|
|
||||||
new GUI::GameFrame(m_FrameStack, "GameFrame");
|
new GUI::GameFrame(m_FrameStack, "GameFrame");
|
||||||
|
|
||||||
//m_World = std::make_shared<GameWorld>(m_EventBroker, m_ResourceManager);
|
//m_World = std::make_shared<GameWorld>(m_EventBroker, m_ResourceManager);
|
||||||
//m_World->Initialize();
|
//m_World->Initialize();
|
||||||
|
|
||||||
|
|||||||
@@ -25,6 +25,9 @@ public:
|
|||||||
Bottom
|
Bottom
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static const float BaseWidth = 1280.f;
|
||||||
|
static const float BaseHeight = 720.f;
|
||||||
|
|
||||||
// Set up a base frame with an event broker
|
// Set up a base frame with an event broker
|
||||||
Frame(std::shared_ptr<::EventBroker> eventBroker, std::shared_ptr<::ResourceManager> resourceManager)
|
Frame(std::shared_ptr<::EventBroker> eventBroker, std::shared_ptr<::ResourceManager> resourceManager)
|
||||||
: EventBroker(eventBroker)
|
: EventBroker(eventBroker)
|
||||||
@@ -180,6 +183,7 @@ protected:
|
|||||||
std::string m_Name;
|
std::string m_Name;
|
||||||
int m_Layer;
|
int m_Layer;
|
||||||
bool m_Hidden;
|
bool m_Hidden;
|
||||||
|
glm::vec2 Scale;
|
||||||
|
|
||||||
std::shared_ptr<Frame> m_Parent;
|
std::shared_ptr<Frame> m_Parent;
|
||||||
typedef std::multimap<std::string, std::shared_ptr<Frame>> Children_t; // name -> frame
|
typedef std::multimap<std::string, std::shared_ptr<Frame>> Children_t; // name -> frame
|
||||||
|
|||||||
+2
-2
@@ -26,13 +26,13 @@ public:
|
|||||||
{
|
{
|
||||||
vp1 = new Viewport(worldFrame, "Viewport1", m_World);
|
vp1 = new Viewport(worldFrame, "Viewport1", m_World);
|
||||||
vp1->X = 0;
|
vp1->X = 0;
|
||||||
vp1->Width = 640;
|
vp1->Width = this->Width / 2.f;
|
||||||
//new PlayerHUD(vp1, "PlayerHUD", m_World, 1);
|
//new PlayerHUD(vp1, "PlayerHUD", m_World, 1);
|
||||||
new VehicleSelection(vp1, "VehicleSelection", m_World, 1);
|
new VehicleSelection(vp1, "VehicleSelection", m_World, 1);
|
||||||
|
|
||||||
vp2 = new Viewport(worldFrame, "Viewport2", m_World);
|
vp2 = new Viewport(worldFrame, "Viewport2", m_World);
|
||||||
vp2->X = vp1->Right();
|
vp2->X = vp1->Right();
|
||||||
vp2->Width = 640;
|
vp2->Width = this->Width / 2.f;
|
||||||
new PlayerHUD(vp2, "PlayerHUD", m_World, 2);
|
new PlayerHUD(vp2, "PlayerHUD", m_World, 2);
|
||||||
|
|
||||||
m_FreeCamViewport = new Viewport(worldFrame, "ViewportFreeCam", m_World);
|
m_FreeCamViewport = new Viewport(worldFrame, "ViewportFreeCam", m_World);
|
||||||
|
|||||||
+9
-5
@@ -5,6 +5,9 @@ Renderer::Renderer(std::shared_ptr<::ResourceManager> resourceManager)
|
|||||||
: ResourceManager(resourceManager)
|
: ResourceManager(resourceManager)
|
||||||
{
|
{
|
||||||
m_VSync = false;
|
m_VSync = false;
|
||||||
|
m_Fullscreen = false;
|
||||||
|
m_Width = 1280;
|
||||||
|
m_Height = 720;
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
m_DrawNormals = false;
|
m_DrawNormals = false;
|
||||||
m_DrawWireframe = false;
|
m_DrawWireframe = false;
|
||||||
@@ -38,11 +41,12 @@ void Renderer::Initialize()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Create a window
|
// Create a window
|
||||||
m_Width = 1280;
|
GLFWmonitor* monitor = nullptr;
|
||||||
m_Height = 720;
|
if (m_Fullscreen)
|
||||||
// Antialiasing
|
{
|
||||||
//glfwWindowHint(GLFW_SAMPLES, 16);
|
monitor = glfwGetPrimaryMonitor();
|
||||||
m_Window = glfwCreateWindow(m_Width, m_Height, "OpenGL", nullptr, nullptr);
|
}
|
||||||
|
m_Window = glfwCreateWindow(m_Width, m_Height, "OpenGL", monitor, nullptr);
|
||||||
if (!m_Window)
|
if (!m_Window)
|
||||||
{
|
{
|
||||||
LOG_ERROR("GLFW: Failed to create window");
|
LOG_ERROR("GLFW: Failed to create window");
|
||||||
|
|||||||
@@ -43,6 +43,17 @@ public:
|
|||||||
void UpdateCamera(int cameraIdentifier, glm::vec3 position, glm::quat orientation, float FOV, float nearClip, float farClip);
|
void UpdateCamera(int cameraIdentifier, glm::vec3 position, glm::quat orientation, float FOV, float nearClip, float farClip);
|
||||||
|
|
||||||
#pragma region NEWSTUFF
|
#pragma region NEWSTUFF
|
||||||
|
void SetResolution(const Rectangle &resolution)
|
||||||
|
{
|
||||||
|
m_Width = resolution.Width;
|
||||||
|
m_Height = resolution.Height;
|
||||||
|
}
|
||||||
|
|
||||||
|
void SetFullscreen(bool fullscreen)
|
||||||
|
{
|
||||||
|
m_Fullscreen = fullscreen;
|
||||||
|
}
|
||||||
|
|
||||||
void SetViewport(const Rectangle &viewport)
|
void SetViewport(const Rectangle &viewport)
|
||||||
{
|
{
|
||||||
m_Viewport = viewport;
|
m_Viewport = viewport;
|
||||||
@@ -99,6 +110,7 @@ public:
|
|||||||
private:
|
private:
|
||||||
std::shared_ptr<::ResourceManager> ResourceManager;
|
std::shared_ptr<::ResourceManager> ResourceManager;
|
||||||
|
|
||||||
|
bool m_Fullscreen;
|
||||||
int m_Width, m_Height;
|
int m_Width, m_Height;
|
||||||
|
|
||||||
struct Viewport
|
struct Viewport
|
||||||
|
|||||||
Reference in New Issue
Block a user