From e39dbf92799fc3cf8c0bd3f1aa9aab6e98515035 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Mon, 11 Oct 2010 15:38:10 +0000 Subject: [PATCH] added refraction parameters to materials git-svn-id: svn://anubis/fart/trunk@374 7f9b0f55-74a9-4bce-be96-3c2cd072584d --- main/Scene-load.cc | 4 ++++ util/Material.h | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/main/Scene-load.cc b/main/Scene-load.cc index 0dec38c..4bd8c3d 100644 --- a/main/Scene-load.cc +++ b/main/Scene-load.cc @@ -313,6 +313,10 @@ refptr Scene::processMaterial(refptr node) { material->setReflectance((*it)->getNumber()); } + else if ( typeid(**it) == typeid(RefractionNode) ) + { + material->setRefraction((*it)->getNumber()); + } else if ( typeid(**it) == typeid(ShininessNode) ) { material->setShininess((*it)->getNumber()); diff --git a/util/Material.h b/util/Material.h index 6f12714..703322b 100644 --- a/util/Material.h +++ b/util/Material.h @@ -33,6 +33,9 @@ class Material void setReflectance(double reflectance) { m_reflectance = reflectance; } double getReflectance() const { return m_reflectance; } + void setRefraction(double refraction) { m_refraction = refraction; } + double getRefraction() const { return m_refraction; } + void setTransparency(double t) { m_transparency = t; } double getTransparency() const { return m_transparency; } @@ -42,6 +45,7 @@ class Material Color m_specular_color; double m_shininess; double m_reflectance; + double m_refraction; double m_transparency; };