Ejemplo n.º 1
0
//----------------------------------------------------------------------------
bool FxCompiler::GetInput (const TokenArray& tokens, const std::string& name,
    Shader::VariableType type, InputArray& inputs)
{
    std::string::size_type begin = 5;  // skip over "$vin."
    std::string semanticName = tokens[4].substr(begin, std::string::npos);
    SemanticMap::iterator siter = mSemantics.find(semanticName);
    if (siter == mSemantics.end())
    {
        ReportError("Invalid $vin classifier", &tokens);
        return false;
    }

    Input input;
    input.Name = name;
    input.Type = type;
    input.Semantic = siter->second;
    inputs.push_back(input);
    return true;
}