diff --git a/mainwindow.ui b/mainwindow.ui
index 6068e0d..dad8d72 100644
--- a/mainwindow.ui
+++ b/mainwindow.ui
@@ -181,6 +181,7 @@
+
@@ -293,6 +294,17 @@
Linear MipMap Linear
+
+
+ true
+
+
+ true
+
+
+ Normal Maps
+
+
diff --git a/src/viewer/simpleViewer.cpp b/src/viewer/simpleViewer.cpp
index e85ec64..97ab0af 100644
--- a/src/viewer/simpleViewer.cpp
+++ b/src/viewer/simpleViewer.cpp
@@ -841,6 +841,11 @@ void Viewer::setMinLinear(bool on) {
this->update();
}
+void Viewer::toggleNormalMaps(bool state) {
+ m_program->bind();
+ m_program->setUniformValue(m_useNormalMap, state);
+}
+
void Viewer::deleteSelected() {
// Remove Shape from its parent
if(selectedObj.shape == nullptr) return;
diff --git a/src/viewer/simpleViewer.h b/src/viewer/simpleViewer.h
index 635d328..15dde25 100644
--- a/src/viewer/simpleViewer.h
+++ b/src/viewer/simpleViewer.h
@@ -63,6 +63,7 @@ public slots:
void setMagLinear(bool);
void setMinLinear(bool);
void deleteSelected();
+ void toggleNormalMaps(bool);
signals:
int shapeSelected(int);
diff --git a/src/window/mainwindow.cpp b/src/window/mainwindow.cpp
index 57244ad..4d0981e 100644
--- a/src/window/mainwindow.cpp
+++ b/src/window/mainwindow.cpp
@@ -46,6 +46,8 @@ void MainWindow::addViewer(Viewer* viewer)
connect(ui->actionMagLinear, SIGNAL(toggled(bool)), viewer, SLOT(setMagLinear(bool)));
connect(ui->actionMinLin, SIGNAL(toggled(bool)), viewer, SLOT(setMinLinear(bool)));
+ connect(ui->actionNormal_Maps, SIGNAL(toggled(bool)), viewer, SLOT(toggleNormalMaps(bool)));
+
connect(ui->action_delete, SIGNAL(clicked(bool)), viewer, SLOT(deleteSelected()));
connect(viewer, SIGNAL(cubeSelected(bool)), ui->action_delete, SLOT(setEnabled(bool)));
}