Commit dd684b5e authored by chili's avatar chili
Browse files

load glossiness from mtl absent of specmap

parent a69de679
......@@ -271,6 +271,7 @@ std::unique_ptr<Mesh> Model::ParseMesh( Graphics& gfx,const aiMesh& mesh,const a
std::vector<std::unique_ptr<Bind::Bindable>> bindablePtrs;
bool hasSpecularMap = false;
float shininess = 35.0f;
if( mesh.mMaterialIndex >= 0 )
{
auto& material = *pMaterials[mesh.mMaterialIndex];
......@@ -287,6 +288,10 @@ std::unique_ptr<Mesh> Model::ParseMesh( Graphics& gfx,const aiMesh& mesh,const a
bindablePtrs.push_back( std::make_unique<Bind::Texture>( gfx,Surface::FromFile( base + texFileName.C_Str() ),1 ) );
hasSpecularMap = true;
}
else
{
material.Get( AI_MATKEY_SHININESS,shininess );
}
bindablePtrs.push_back( std::make_unique<Bind::Sampler>( gfx ) );
}
......@@ -312,9 +317,10 @@ std::unique_ptr<Mesh> Model::ParseMesh( Graphics& gfx,const aiMesh& mesh,const a
struct PSMaterialConstant
{
float specularIntensity = 0.8f;
float specularPower = 40.0f;
float specularPower;
float padding[2];
} pmc;
pmc.specularPower = shininess;
bindablePtrs.push_back( std::make_unique<Bind::PixelConstantBuffer<PSMaterialConstant>>( gfx,pmc,1u ) );
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment