mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-22 06:59:18 +02:00
configurable viewport draw range
This commit is contained in:
@@ -854,6 +854,7 @@ global_settings::ConfigParse(cParser &Parser) {
|
|||||||
|
|
||||||
extraviewport_config conf;
|
extraviewport_config conf;
|
||||||
Parser >> conf.monitor >> conf.width >> conf.height;
|
Parser >> conf.monitor >> conf.width >> conf.height;
|
||||||
|
Parser >> conf.draw_range;
|
||||||
for (size_t i = 0; i < 16; i++)
|
for (size_t i = 0; i < 16; i++)
|
||||||
Parser >> conf.transform[i / 4][i % 4];
|
Parser >> conf.transform[i / 4][i % 4];
|
||||||
|
|
||||||
|
|||||||
@@ -208,6 +208,7 @@ struct global_settings {
|
|||||||
std::string monitor;
|
std::string monitor;
|
||||||
int width, height;
|
int width, height;
|
||||||
glm::mat4 transform;
|
glm::mat4 transform;
|
||||||
|
float draw_range;
|
||||||
};
|
};
|
||||||
std::vector<extraviewport_config> extra_viewports;
|
std::vector<extraviewport_config> extra_viewports;
|
||||||
|
|
||||||
|
|||||||
@@ -2260,7 +2260,8 @@ void TMoverParameters::SecuritySystemCheck(double dt)
|
|||||||
if (Battery) {
|
if (Battery) {
|
||||||
SecuritySystem.update(dt, Vel);
|
SecuritySystem.update(dt, Vel);
|
||||||
}
|
}
|
||||||
else
|
|
||||||
|
if (!Battery || !Radio)
|
||||||
{ // wyłączenie baterii deaktywuje sprzęt
|
{ // wyłączenie baterii deaktywuje sprzęt
|
||||||
RadiostopSwitch(false);
|
RadiostopSwitch(false);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -166,6 +166,7 @@ bool opengl_renderer::Init(GLFWwindow *Window)
|
|||||||
default_viewport.height = Global.gfx_framebuffer_height;
|
default_viewport.height = Global.gfx_framebuffer_height;
|
||||||
default_viewport.main = true;
|
default_viewport.main = true;
|
||||||
default_viewport.window = m_window;
|
default_viewport.window = m_window;
|
||||||
|
default_viewport.draw_range = 1.0f;
|
||||||
|
|
||||||
if (!init_viewport(default_viewport))
|
if (!init_viewport(default_viewport))
|
||||||
return false;
|
return false;
|
||||||
@@ -297,6 +298,7 @@ bool opengl_renderer::AddViewport(const global_settings::extraviewport_config &c
|
|||||||
vp.height = conf.height;
|
vp.height = conf.height;
|
||||||
vp.window = Application.window(-1, true, vp.width, vp.height, Application.find_monitor(conf.monitor));
|
vp.window = Application.window(-1, true, vp.width, vp.height, Application.find_monitor(conf.monitor));
|
||||||
vp.camera_transform = conf.transform;
|
vp.camera_transform = conf.transform;
|
||||||
|
vp.draw_range = conf.draw_range;
|
||||||
|
|
||||||
bool ret = init_viewport(vp);
|
bool ret = init_viewport(vp);
|
||||||
glfwMakeContextCurrent(m_window);
|
glfwMakeContextCurrent(m_window);
|
||||||
@@ -1051,6 +1053,9 @@ void opengl_renderer::setup_pass(viewport_config &Viewport, renderpass_config &C
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Config.draw_range *= Viewport.draw_range;
|
||||||
|
|
||||||
// setup camera
|
// setup camera
|
||||||
auto &camera = Config.pass_camera;
|
auto &camera = Config.pass_camera;
|
||||||
|
|
||||||
|
|||||||
@@ -241,6 +241,8 @@ class opengl_renderer
|
|||||||
int width;
|
int width;
|
||||||
int height;
|
int height;
|
||||||
|
|
||||||
|
float draw_range;
|
||||||
|
|
||||||
bool main = false;
|
bool main = false;
|
||||||
GLFWwindow *window = nullptr;
|
GLFWwindow *window = nullptr;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user