---
name: "ppEffectCreate"
type: command
status: ok
groups: ["Camera Control"]
arma3_since: "0.50"
locality: {"argument": null, "effect": null, "server_exec": false}
source: https://community.bistudio.com/wiki/ppEffectCreate
revid: 376949
updated: 2025-12-31T23:30:11Z
---

# ppEffectCreate

*Command · Camera Control · Arma 3 v0.50 · introduced in Arma 2 v1.00*

## Description

Creates Post Process Effects specified by effect name and priority.

Supported effects:
- "RadialBlur"
- "ChromAberration"
- "WetDistortion"
- "ColorCorrections"
- "DynamicBlur"
- "FilmGrain"
- "ColorInversion"
- "SSAO"
- "Resolution"

## Syntax

### Syntax 1

```sqf
ppEffectCreate [name, priority]
```

**Parameters:**

- `name`: [String](../topics/String.md) - name of effect type
- `priority`: [Number](../topics/Number.md) - unique priority, defines order of applying effect to the scene. If there is another effect using the same priority, creation will fail

**Returns:** [Number](../topics/Number.md) - handle or -1 if failed

### Syntax 2

```sqf
ppEffectCreate [[name1, priority1], ...]
```

**Parameters:**

- `nameN`: [String](../topics/String.md) - name of effect type
- `priorityN`: [Number](../topics/Number.md) - unique priority, defines order of applying effect to the scene. If there is another effect using the same priority, creation will fail

**Returns:** [Array](../topics/Array.md) of [Number](../topics/Number.md)s or [Nothing](../topics/Nothing.md) if failed

## Examples

### Example 1

```sqf
_ppGrain = ppEffectCreate ["filmGrain", 2005];
```

### Example 2

If an effect ID is already used, the effect is not created. Use the following:

```sqf
private _name = "ChromAberration";
private _priority = 200;
private _handle = -1;
while
{
    _handle = ppEffectCreate [_name, _priority];
    _handle < 0;
} do {
    _priority = _priority + 1;
};

// _handle can be used here as usual
```

or

```sqf
private _name = "ChromAberration";
private _priority = 200;
private _handle = -1;
waitUntil { _handle = ppEffectCreate [_name, _priority]; _priority = _priority + 1; _handle > 0; };

// _handle can be used here as usual
```

## See also

Post Process Effects · [ppEffectForceInNVG](../commands/ppEffectForceInNVG.md) · [ppEffectEnable](../commands/ppEffectEnable.md) · [ppEffectEnabled](../commands/ppEffectEnabled.md) · [ppEffectDestroy](../commands/ppEffectDestroy.md) · [ppEffectCommit](../commands/ppEffectCommit.md) · [ppEffectCommitted](../commands/ppEffectCommitted.md) · [ppEffectAdjust](../commands/ppEffectAdjust.md)

## Community notes

**Lou Montana** — 2009-06-29

For some examples, check [this forums' topic](http://forums.bistudio.com/showthread.php?t=75528).

---

**Raymix (DayZ)** — 2015-06-24

"wetDistortion" only works if handle is used.

<sub>Source: [BI Community Wiki — ppEffectCreate](https://community.bistudio.com/wiki/ppEffectCreate) (revision 376949).</sub>
