-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSettings Panel.cpp
More file actions
29 lines (23 loc) · 1011 Bytes
/
Settings Panel.cpp
File metadata and controls
29 lines (23 loc) · 1011 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <string>
#include <imgui.h>
#include "FelissRenderer/FelissRenderer.h"
#include "FelissCore/FileSystem.h"
#include <configparser.hpp>
using namespace FelissRenderer;
using namespace FelissCore;
static const char* AA_MODE_NAMES[] = { "NONE", "FXAA", "SMAA", "TAA" };
static AntiAliasingMode TEMP_AA_MODE = AntiAliasingMode::TAA;
void DrawSettingsPanel(Renderer& renderer) {
ImGui::Begin("Settings Panel");
int currentAA = static_cast<int>(TEMP_AA_MODE);
if (ImGui::Combo("Anti-Aliasing", ¤tAA, AA_MODE_NAMES, IM_ARRAYSIZE(AA_MODE_NAMES))) {
TEMP_AA_MODE = static_cast<AntiAliasingMode>(currentAA);
renderer.SetAntiAliasingMode(TEMP_AA_MODE);
// Save to ini file
ConfigParser config("configuration.ini");
config.set("Graphics", "AntiAliasing", RendererSettings::ToString(TEMP_AA_MODE));
config.save();
FelissCore::Logger::Log("[Editor] Updated AA Mode in config.ini");
}
ImGui::End();
}