ppEffectCreate: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(effect names, params, return type, example)
(Add priority issue example)
 
(73 intermediate revisions by 13 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{RV|type=command
____________________________________________________________________________________________


| arma2 |= Game name
|game1= arma2
|version1= 1.00


|1.00|= Game version
|game2= arma2oa
____________________________________________________________________________________________
|version2= 1.50


| Create post process effect specified by effect name and priority.
|game3= tkoh
|version3= 1.00


See class CfgOpticsEffect for examples using:
|game4= arma3
* "chromAberration"
|version4= 0.50
* "colorCorrections"
* "colorInversion"
* "dynamicBlur"
* "filmGrain"


|= Description
|gr1= Camera Control
____________________________________________________________________________________________


| '''ppEffectCreate''' effect |= Syntax
|descr= Creates [[Post Process Effects]] specified by effect name and priority.<br>
Supported effects:
{{Columns|4|
* [[Post Process Effects#RadialBlur|"RadialBlur"]]
* [[Post Process Effects#ChromAberration|"ChromAberration"]]
* [[Post Process Effects#WetDistortion|"WetDistortion"]]
* [[Post Process Effects#ColorCorrections|"ColorCorrections"]]
* [[Post Process Effects#DynamicBlur|"DynamicBlur"]]
* [[Post Process Effects#FilmGrain|"FilmGrain"]]
* [[Post Process Effects#ColorInversion|"ColorInversion"]]
* [[Post Process Effects#SSAO|"SSAO"]]
* [[Post Process Effects#Resolution|"Resolution"]]
}}
 
|s1= [[ppEffectCreate]] [name, priority]
 
|p1= name: [[String]] - name of effect type


|p1= effect: [name, priority] |= PARAMETER1
|p2= priority: [[Number]] - unique priority, defines order of applying effect to the scene. If there is another effect using the same priority, creation will fail


|p2= name: [[String]] - name of effect type.  |= PARAMETER2
|r1= [[Number]] - handle or -1 if failed


|p3= priority: [[Number]] - unique priority |= PARAMETER3
|s2= [[ppEffectCreate]] [<nowiki/>[name1, priority1], ...]


| [[Number]] - handle |= RETURNVALUE
|p21= nameN: [[String]] - name of effect type


____________________________________________________________________________________________
|p22= priorityN: [[Number]] - unique priority, defines order of applying effect to the scene. If there is another effect using the same priority, creation will fail


|x1= <pre>_ppGrain = ppEffectCreate ["filmGrain", 2005];</pre>|= EXAMPLE1
|r2= [[Array]] of [[Number]]s [handle1, ...] or [[Nothing]] if failed


____________________________________________________________________________________________
|x1= <sqf>_ppGrain = ppEffectCreate ["filmGrain", 2005];</sqf>


| [[ppEffectAdjust]], [[ppEffectCommit]], [[ppEffectCommitted]], [[ppEffectDestroy]], [[ppEffectEnable]] |= SEEALSO
|x2= 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;
};


| |= MPBEHAVIOUR
// _handle can be used here as usual
____________________________________________________________________________________________
</sqf>
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
</sqf>
 
|seealso= [[Post Process Effects]] [[ppEffectForceInNVG]] [[ppEffectEnable]] [[ppEffectEnabled]] [[ppEffectDestroy]] [[ppEffectCommit]] [[ppEffectCommitted]] [[ppEffectAdjust]]
}}
}}


<h3 style='display:none'>Notes</h3>
{{Note
<dl class='command_description'>
|user= Lou Montana
<!-- Note Section BEGIN -->
|timestamp= 20090629223300
For some examples, check [http://forums.bistudio.com/showthread.php?t=75528 this topic] - [[User:Lou Montana|Lou Montana]]
|text= For some examples, check {{Link|http://forums.bistudio.com/showthread.php?t{{=}}75528|this forums' topic}}.
<!-- Note Section END -->
}}
</dl>


<h3 style='display:none'>Bottom Section</h3>
{{Note
[[Category:ArmA 2: New Scripting Commands List|{{uc:{{PAGENAME}}}}]]
|user= Raymix (DayZ)
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
|timestamp= 20150624040800
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
|text= "wetDistortion" only works if handle is used.
|game= arma3
|version= 1.48
}}

Latest revision as of 10:54, 16 July 2024

Hover & click on the images for description

Description

Description:
Creates Post Process Effects specified by effect name and priority.
Supported effects:
Groups:
Camera Control

Syntax

Syntax:
ppEffectCreate [name, priority]
Parameters:
name: String - name of effect type
priority: Number - unique priority, defines order of applying effect to the scene. If there is another effect using the same priority, creation will fail
Return Value:
Number - handle or -1 if failed

Alternative Syntax

Syntax:
ppEffectCreate [[name1, priority1], ...]
Parameters:
nameN: String - name of effect type
priorityN: Number - unique priority, defines order of applying effect to the scene. If there is another effect using the same priority, creation will fail
Return Value:
Array of Numbers [handle1, ...] or Nothing if failed

Examples

Example 1:
_ppGrain = ppEffectCreate ["filmGrain", 2005];
Example 2:
If an effect ID is already used, the effect is not created. Use the following:
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
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

Additional Information

See also:
Post Process Effects ppEffectForceInNVG ppEffectEnable ppEffectEnabled ppEffectDestroy ppEffectCommit ppEffectCommitted ppEffectAdjust

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
Lou Montana - c
Posted on Jun 29, 2009 - 22:33 (UTC)
For some examples, check this forums' topic.
Raymix (DayZ) - c
Posted on Jun 24, 2015 - 04:08 (UTC)

"wetDistortion" only works if handle is used.