ppEffectCreate: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
mNo edit summary
(Add priority issue example)
 
(70 intermediate revisions by 10 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
* "radialBlur"
|version4= 0.50
* "chromAberration"
* "wetDistortion"
* "colorCorrections"
* "dynamicBlur"
* "filmGrain"
* "colorInversion"


|= 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>


| [[Post process effects]], [[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.