# engineGetShaderParameters (Cliente)

> Lista os parâmetros que um shader ou preset declara.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Função Lua
- **Lado**: Cliente
- **Categoria**: Materiais e shaders
- **URL**: https://wiki.mymp.gg/pt/engineGetShaderParameters

## Sintaxe

```lua
table engineGetShaderParameters(string|shader shader)
```

## Parâmetros

| Nome | Tipo | Descrição |
| --- | --- | --- |
| `shader` | `string\|shader` | O nome de um shader ou preset, ou um elemento `shader`. |

## Retorno

Uma tabela de nome → `{ type, default }`. `type` é `texture`, `float`, `vec2`, `vec3`, `vec4` ou `uint`. Uma textura também tem `colorSpace` (`color`, `non_color` ou `normal`), e um parâmetro alimentado por outro tem `from`. As chaves estáticas aparecem com `type` `bool` e `switch` `true`, e cada saída `TARGET_1`… com `type` `target`.

## Exemplo

```lua
for name, parameter in pairs(engineGetShaderParameters("surface")) do
    outputDebugString(name .. ": " .. parameter.type)
end
```

### Atenção

Um nome que não é de shader nem de preset é um erro.

## Veja também

- [engineGetMaterialParameters (Cliente)](https://wiki.mymp.gg/pt/engineGetMaterialParameters.md): Lista os parâmetros do shader que um material usa.
- [engineGetShaderSwitches (Cliente)](https://wiki.mymp.gg/pt/engineGetShaderSwitches.md): Lista as chaves estáticas (parâmetros bool) de um shader ou preset, com o valor padrão de cada uma.
- [engineSetMaterialValue (Cliente)](https://wiki.mymp.gg/pt/engineSetMaterialValue.md): Define um valor do material: um parâmetro do shader, uma chave estática ou a render target de uma saída TARGET_n.
