Skip to content

Commit 873936e

Browse files
committed
renderer: Move window size to settings struct.
1 parent 1b58149 commit 873936e

File tree

14 files changed

+39
-30
lines changed

14 files changed

+39
-30
lines changed

libopenage/input/tests.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2023-2023 the openage authors. See copying.md for legal info.
1+
// Copyright 2023-2024 the openage authors. See copying.md for legal info.
22

33
#include "error/error.h"
44
#include "log/log.h"
@@ -14,7 +14,8 @@ void action_demo() {
1414
auto qtapp = std::make_shared<renderer::gui::GuiApplicationWithLogger>();
1515

1616
// create a window where we get our inputs from
17-
renderer::opengl::GlWindow window("openage input test", 800, 600);
17+
18+
renderer::opengl::GlWindow window("openage input test");
1819

1920
// manager that receives window inputs
2021
// the manager creates its own global context with ID "main"

libopenage/main/demo/pong/gui.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
// Copyright 2019-2023 the openage authors. See copying.md for legal info.
1+
// Copyright 2019-2024 the openage authors. See copying.md for legal info.
22

33
#include "gui.h"
44

55
#include <algorithm>
66
#include <eigen3/Eigen/Dense>
77
#include <vector>
88

9-
#include "main/demo/pong/gamestate.h"
109
#include "log/log.h"
10+
#include "main/demo/pong/gamestate.h"
1111
#include "renderer/geometry.h"
1212
#include "renderer/opengl/context.h"
1313
#include "renderer/opengl/shader.h"
@@ -34,7 +34,7 @@ const std::vector<PongEvent> &Gui::get_inputs(const std::shared_ptr<PongPlayer>
3434

3535
/*
3636
for (all inputs from window) {
37-
add key to inputs vector;
37+
add key to inputs vector;
3838
}
3939
*/
4040

@@ -78,7 +78,7 @@ constexpr const int max_log_msgs = 10;
7878

7979

8080
Gui::Gui() :
81-
window{"openage engine test", 800, 600},
81+
window{"openage engine test", {800, 600}},
8282
renderer{window.make_renderer()} {
8383
auto vshader_src = renderer::resources::ShaderSource(
8484
renderer::resources::shader_lang_t::glsl,
@@ -199,7 +199,7 @@ void Gui::draw(const std::shared_ptr<PongState> &state, const time::time_t &now)
199199
auto ball_pos = state->ball->position->get(now);
200200
auto ball_pos_matrix = Eigen::Affine3f::Identity();
201201
ball_pos_matrix.prescale(Eigen::Vector3f(ball_size, ball_size, 1.0f));
202-
//ball_pos_matrix.prerotate(Eigen::AngleAxisf(45.0f * math::PI / 180.0f, Eigen::Vector3f::UnitZ()));
202+
// ball_pos_matrix.prerotate(Eigen::AngleAxisf(45.0f * math::PI / 180.0f, Eigen::Vector3f::UnitZ()));
203203
ball_pos_matrix.pretranslate(Eigen::Vector3f(ball_pos[0], ball_pos[1], 0.0f));
204204
this->ball.uniform->update("pos", ball_pos_matrix.matrix());
205205

libopenage/presenter/presenter.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,10 @@ void Presenter::init_graphics(bool debug) {
9898

9999
// Window and renderer
100100
renderer::window_settings settings;
101+
settings.width = 1024;
102+
settings.height = 768;
101103
settings.debug = debug;
102-
this->window = renderer::Window::create("openage presenter test", 1024, 768, settings);
104+
this->window = renderer::Window::create("openage presenter test", settings);
103105
this->renderer = this->window->make_renderer();
104106

105107
// Asset mangement

libopenage/renderer/demo/demo_0.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,10 @@ void renderer_demo_0(const util::Path &path) {
1414
auto qtapp = std::make_shared<gui::GuiApplicationWithLogger>();
1515

1616
window_settings settings;
17+
settings.width = 800;
18+
settings.height = 600;
1719
settings.debug = true;
18-
opengl::GlWindow window("openage renderer test", 800, 600, settings);
20+
opengl::GlWindow window("openage renderer test", settings);
1921
auto renderer = window.make_renderer();
2022

2123
auto shaderdir = path / "assets" / "test" / "shaders";

libopenage/renderer/demo/demo_1.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,10 @@ void renderer_demo_1(const util::Path &path) {
2020
auto qtapp = std::make_shared<gui::GuiApplicationWithLogger>();
2121

2222
window_settings settings;
23+
settings.width = 800;
24+
settings.height = 600;
2325
settings.debug = true;
24-
opengl::GlWindow window("openage renderer test", 800, 600, settings);
26+
opengl::GlWindow window("openage renderer test", settings);
2527
auto renderer = window.make_renderer();
2628

2729
auto shaderdir = path / "assets" / "test" / "shaders";

libopenage/renderer/demo/demo_2.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,10 @@ void renderer_demo_2(const util::Path &path) {
2323
auto qtapp = std::make_shared<gui::GuiApplicationWithLogger>();
2424

2525
window_settings settings;
26+
settings.width = 800;
27+
settings.height = 600;
2628
settings.debug = true;
27-
opengl::GlWindow window("openage renderer test", 800, 600, settings);
29+
opengl::GlWindow window("openage renderer test", settings);
2830
auto renderer = window.make_renderer();
2931

3032
/* Load texture file standalone. */

libopenage/renderer/demo/demo_3.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,10 @@ void renderer_demo_3(const util::Path &path) {
2929
auto qtapp = std::make_shared<gui::GuiApplicationWithLogger>();
3030

3131
window_settings settings;
32+
settings.width = 800;
33+
settings.height = 600;
3234
settings.debug = true;
33-
auto window = std::make_shared<opengl::GlWindow>("openage renderer test", 800, 600, settings);
35+
auto window = std::make_shared<opengl::GlWindow>("openage renderer test", settings);
3436
auto renderer = window->make_renderer();
3537

3638
// Clock required by world renderer for timing animation frames

libopenage/renderer/demo/demo_4.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,10 @@ void renderer_demo_4(const util::Path &path) {
2121
auto qtapp = std::make_shared<gui::GuiApplicationWithLogger>();
2222

2323
window_settings settings;
24+
settings.width = 800;
25+
settings.height = 600;
2426
settings.debug = true;
25-
opengl::GlWindow window("openage renderer test", 800, 600, settings);
27+
opengl::GlWindow window("openage renderer test", settings);
2628
auto renderer = window.make_renderer();
2729

2830
/* Clock for timed display */

libopenage/renderer/demo/demo_5.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,10 @@ void renderer_demo_5(const util::Path &path) {
2323
auto qtapp = std::make_shared<gui::GuiApplicationWithLogger>();
2424

2525
window_settings settings;
26+
settings.width = 800;
27+
settings.height = 600;
2628
settings.debug = true;
27-
opengl::GlWindow window("openage renderer test", 800, 600, settings);
29+
opengl::GlWindow window("openage renderer test", settings);
2830
auto renderer = window.make_renderer();
2931
auto size = window.get_size();
3032

libopenage/renderer/demo/stresstest_0.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,11 @@ void renderer_stresstest_0(const util::Path &path) {
2929
auto qtapp = std::make_shared<gui::GuiApplicationWithLogger>();
3030

3131
window_settings settings;
32+
settings.width = 1024;
33+
settings.height = 768;
3234
settings.vsync = false;
3335
settings.debug = true;
34-
auto window = std::make_shared<opengl::GlWindow>("openage renderer test", 1024, 768, settings);
36+
auto window = std::make_shared<opengl::GlWindow>("openage renderer test", settings);
3537
auto renderer = window->make_renderer();
3638

3739
// Clock required by world renderer for timing animation frames

libopenage/renderer/opengl/window.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,8 @@
1818
namespace openage::renderer::opengl {
1919

2020
GlWindow::GlWindow(const std::string &title,
21-
size_t width,
22-
size_t height,
2321
window_settings settings) :
24-
Window{width, height} {
22+
Window{settings.width, settings.height} {
2523
if (QGuiApplication::instance() == nullptr) {
2624
// Qt windows need to attach to a QtGuiApplication
2725
throw Error{MSG(err) << "Failed to create Qt window: QGuiApplication has not been created yet."};
@@ -31,7 +29,7 @@ GlWindow::GlWindow(const std::string &title,
3129
this->window = std::make_shared<QWindow>();
3230

3331
this->window->setTitle(QString::fromStdString(title));
34-
this->window->resize(width, height);
32+
this->window->resize(settings.width, settings.height);
3533

3634
this->window->setSurfaceType(QSurface::OpenGLSurface);
3735

libopenage/renderer/opengl/window.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,9 @@ class GlWindow final : public Window {
2525
* Create a shiny window with the given title.
2626
*
2727
* @param title The window title.
28-
* @param width Width (in pixels).
29-
* @param height Height (in pixels).
3028
* @param settings Settings for creating the window.
3129
*/
3230
GlWindow(const std::string &title,
33-
size_t width,
34-
size_t height,
3531
window_settings settings = {});
3632
~GlWindow();
3733

libopenage/renderer/window.cpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,11 @@
1111
namespace openage::renderer {
1212

1313
std::shared_ptr<Window> Window::create(const std::string &title,
14-
size_t width,
15-
size_t height,
1614
window_settings settings) {
1715
// currently we only have a functional GL window
1816
// TODO: support other renderer windows
1917
// and add some selection mechanism.
20-
return std::make_shared<opengl::GlWindow>(title, width, height, settings);
18+
return std::make_shared<opengl::GlWindow>(title, settings);
2119
}
2220

2321

libopenage/renderer/window.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,10 @@ class WindowEventHandler;
2525
* Settings for creating a window.
2626
*/
2727
struct window_settings {
28+
// Width of the window in pixels.
29+
size_t width = 1024;
30+
// Height of the window in pixels.
31+
size_t height = 768;
2832
// Graphics API to use in the window's renderer.
2933
graphics_api_t backend = graphics_api_t::DEFAULT;
3034
// If true, enable vsync.
@@ -43,15 +47,11 @@ class Window {
4347
* Create a new Window instance for displaying stuff.
4448
*
4549
* @param title Window title shown in the Desktop Environment.
46-
* @param width Width in pixels.
47-
* @param height Height in pixels.
4850
* @param settings Settings for creating the window.
4951
*
5052
* @return The created Window instance.
5153
*/
5254
static std::shared_ptr<Window> create(const std::string &title,
53-
size_t width,
54-
size_t height,
5555
window_settings settings = {});
5656

5757
virtual ~Window() = default;

0 commit comments

Comments
 (0)