Esempio n. 1
0
 TechniqueMaterial::TechniqueMaterial(
     const Metal::InputLayout& inputLayout,
     const std::initializer_list<uint64>& objectCBs,
     ParameterBox materialParameters)
 : _materialParameters(std::move(materialParameters))
 , _techniqueInterface(MakeTechInterface(inputLayout, objectCBs))
 , _geometryParameters(TechParams_SetGeo(inputLayout))
 {}
Esempio n. 2
0
 TechniqueMaterial::TechniqueMaterial(
     const Metal::InputLayout& inputLayout,
     const std::initializer_list<uint64>& objectCBs,
     ParameterBox materialParameters)
 : _materialParameters(std::move(materialParameters))
 , _techniqueInterface(MakeTechInterface(inputLayout, objectCBs))
 {
     if (HasElement(inputLayout, "NORMAL"))          _geometryParameters.SetParameter((const utf8*)"GEO_HAS_NORMAL", 1);
     if (HasElement(inputLayout, "TEXCOORD"))        _geometryParameters.SetParameter((const utf8*)"GEO_HAS_TEXCOORD", 1);
     if (HasElement(inputLayout, "TEXTANGENT"))      _geometryParameters.SetParameter((const utf8*)"GEO_HAS_TANGENT_FRAME", 1);
     if (HasElement(inputLayout, "TEXBITANGENT"))    _geometryParameters.SetParameter((const utf8*)"GEO_HAS_BITANGENT", 1);
     if (HasElement(inputLayout, "COLOR"))           _geometryParameters.SetParameter((const utf8*)"GEO_HAS_COLOUR", 1);
 }