Updated the FBXConverter to correctly set the material shading mode when a Phong shader is detected

pull/2438/head
b1skit 2019-04-27 17:20:27 -07:00
parent 55cdf1d37c
commit bc4e411284
1 changed files with 20 additions and 0 deletions

View File

@ -67,6 +67,19 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <sstream>
#include <iomanip>
// MY DEBUG STUFF:
#include <iostream>
using std::cout;
// END MY DEBUG STUF
namespace Assimp {
namespace FBX {
@ -1596,6 +1609,13 @@ namespace Assimp {
out_mat->AddProperty(&str, AI_MATKEY_NAME);
}
// Set the shading mode as best we can: The FBX specification only mentions Lambert and Phong, and only Phong is mentioned in Assimp's aiShadingMode enum.
if (material.GetShadingModel() == "phong")
{
aiShadingMode shadingMode = aiShadingMode_Phong;
out_mat->AddProperty<aiShadingMode>(&shadingMode, 1, AI_MATKEY_SHADING_MODEL);
}
// shading stuff and colors
SetShadingPropertiesCommon(out_mat, props);
SetShadingPropertiesRaw( out_mat, props, material.Textures(), mesh );