23 lines
1.0 KiB
Markdown
23 lines
1.0 KiB
Markdown
---
|
|
title: "Window"
|
|
date: 2021-01-24T20:43:17-08:00
|
|
weight: 1
|
|
---
|
|
|
|
Window management in MoonWorks is implemented using the [SDL2](https://www.libsdl.org) library. All window management is handled through the `OSWindow` class. A reference to this class named `Window` is automatically created and can be retrieved from your `Game` subclass.
|
|
|
|
Your game is assumed to have a window and you must pass a `WindowCreateInfo` struct when creating your `Game`.
|
|
|
|
- `WindowTitle` is the name of the window that will be displayed in the operating system.
|
|
- `WindowWidth` is how wide the window will be.
|
|
- `WindowHeight` is how tall the window will be.
|
|
- `ScreenMode` determines whether the window will be created in windowed mode, fullscreen, or borderless fullscreen.
|
|
|
|
You can change the screen mode at runtime with the `ChangeScreenMode` method:
|
|
|
|
```cs
|
|
Window.ChangeScreenMode(ScreenMode.Fullscreen);
|
|
```
|
|
|
|
Note that if you change the screen resolution, it is *your* responsibility to manage any graphics state that may need to change as a result of this change.
|