Beispiel #1
0
    void Material::CreateInputLayout(const std::string& technique_name, const std::string& pass_name, D3D11_INPUT_ELEMENT_DESC* input_element_descriptions, UINT input_element_description_count) {
      Technique* technique = effect_->TechniquesByName().at(technique_name);
      assert(technique != nullptr);

      Pass* pass = technique->PassesByName().at(pass_name);
      assert(pass != nullptr);

      ID3D11InputLayout* input_layout;
      pass->CreateInputLayout(input_element_descriptions, input_element_description_count, &input_layout);
      input_layout_.insert(std::pair<Pass*, ID3D11InputLayout*>(pass, input_layout));
  }
Beispiel #2
0
    void Material::CreateInputLayout(const std::string& techniqueName, const std::string& passName, D3D11_INPUT_ELEMENT_DESC* inputElementDescriptions, UINT inputElementDescriptionCount)
    {
        Technique* technique = mEffect->TechniquesByName().at(techniqueName);
        assert(technique != nullptr);

        Pass* pass = technique->PassesByName().at(passName);
        assert(pass != nullptr);

        ID3D11InputLayout* inputLayout;
        pass->CreateInputLayout(inputElementDescriptions, inputElementDescriptionCount, &inputLayout);

        mInputLayouts.insert(std::pair<Pass*, ID3D11InputLayout*>(pass, inputLayout));
    }