BIS fnc createSimpleObject: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (1 revision imported: BIS Functions update 2/7)
m (Text replacement - "since= Arma3" to "since= arma3")
 
(49 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{Function|= Comments
{{RV|type=function
____________________________________________________________________________________________


| Arma 3 |= Game
|game1= arma3
|version1= 1.62


|1.62|= Game Version
|gr1= Object Manipulation
____________________________________________________________________________________________


|Creates non-simulated framerate and network performance friendly object - a simple object - and applies different adjustments to fake non-existing physX and engine interactions. The adjustments need either to be stored in the object config or provided as the function input, otherwise they need to be done manually.<br><br>
|descr= Creates non-simulated framerate and network performance friendly object - a [[Arma 3: Simple Objects|Simple Object]] - and applies different adjustments to fake non-existing physX and engine interactions. The adjustments need either to be stored in the object config or provided as the function input, otherwise they need to be done manually.<br>
<br>
Simple objects cannot be destroyed and do not interact with the environment. They are useful for creating low performance-demanding static compositions (walls, rocks, wrecks, …) and/or environments where shooting and collisions are not expected.


Simple objects cannot be destroyed and do not interact with the environment. They are usefull for creation low performance demanding static compositions (walls, rocks, wrecks, ...) and/or environments where shooting and collisions are not expected.|= Description
|s1= [input, position, direction, followTerrain, forceSuperSimpleObject, local] call [[BIS_fnc_createSimpleObject]]
____________________________________________________________________________________________


| [class] [[call]] '''BIS_fnc_createSimpleObject''' |= Syntax
|p1= input: [[String]] or [[Array]]:
* [[String]]: classname of the object to be created. This is the preferred way if the asset config definition contains the adjustment data or the data are not needed (most objects do not need adjustments).
* [[Array]]: adjustment data in format [class, model, reversed, verticalOffset, animationAdjustments, selectionsToHide]:
** class: [[String]] - (Optional, default "") asset CfgVehicles config class ('''at least either ''model'' or ''class'' must be provided, ideally both''')
** model: [[String]] - (Optional, default "") Path to the vehicle p3d model; needs to start without backslash and must end with the proper file extension ".p3d"
** reversed: [[Number]] - (Optional, default 0) some objects, usually vehicles, are reversed in p3d; valid values are:
*** 1: reverse
*** 0: no change - any value other than 1 will result in no change
** verticalOffset: [[Number]] - (Optional, default 0) fix for non-existant physX; usually needed only for vehicles
** animationAdjustments: [[Array]] - (Optional, default <sqf inline>[]</sqf>) animation that need to be animated to given state, in format [animationName, animationState]:
*** animationName: [[String]] - animation name
*** animationState: [[Number]] - animation state
** selectionsToHide: [[Array]] - (Optional, default <sqf inline>[]</sqf>) all listed selections will be hidden


|p1=
|p2= position: [[Array]] format [[Position#PositionASL|PositionASL]] - the object will be placed by the '''model centre'''<nowiki/>'s position (see [[getPosWorld]])
[[String]]: Classname of the object to be created. This is preffered way if the asset config definition contains the adjustment data or the data are not needed (most objects do not need adjustments).<br>
or<br>
|p2= [[Array]]: Adjustment data in format:<br><br>
0: [[String]]: class - Asset CfgVehicles config class (default: ""; but at least either _model or _class must be provided, ideally both)<br>
1: [[String]]: model - Path to the vehicle p3d model; needs to start without backslash and must end with the proper file extension ".p3d" (default: ""; but at least either _model or _class must be provided, ideally both)<br>
2: [[Number]]: reversed - Some objects, usually vehicles, are reveresed in p3d (default: 0); valid values are 0: no change, 1: reverse, -1: unknown (behaves as 0)<br>
3: [[Array]]: verticalOffset - Fix for non-existant physX; usually needed only for vehicles (default: 0)<br>
4: [[Array]]: animationAdjustments -  Animation that need to be animated to given state (default: []); every element has this format: [_animationName:string,_animationState:scalar]<br>
5: [[Array]]: selectionsToHide - All listed selection will be hidden (default: [])<br>|= Parameter 2
____________________________________________________________________________________________


|[[Object]] or [[objNull]]|= Return value
|p3= direction: [[Number]] - (Optional, default 0)


____________________________________________________________________________________________
|p4= followTerrain: [[Boolean]] - (Optional, default [[true]]) [[true]] to follow terrain inclination, [[false]] to be horizontally aligned


|x1= <code>["B_Boat_Armed_01_minigun_F"] [[call]] '''BIS_fnc_createSimpleObject''';</code>|= EXAMPLE1
|p5= forceSuperSimpleObject: [[Boolean]] - (Optional, default [[false]]) [[true]] to create a '''Super Simple Object''' from p3d path (that '''must''' be provided)
____________________________________________________________________________________________


|[[BIS_fnc_adjustSimpleObject]], [[BIS_fnc_createSimpleObject]], [[BIS_fnc_replaceWithSimpleObject]], [[BIS_fnc_simpleObjectData]]|= See Also
|p6= local: [[Boolean]] - (Optional, default [[false]]) [[true]] to create [[local]] instance of the object
|p6since= arma3 2.08


}}
|r1= [[Object]] - the created Simple Object, [[objNull]] if creation failed
 
|x1= <sqf>["B_Boat_Armed_01_minigun_F", getPosWorld player, getDir player] call BIS_fnc_createSimpleObject;</sqf>


<dl class="command_description">
|x2= <sqf>["B_Boat_Armed_01_minigun_F", player modelToWorldWorld [0,5,0], getDir player + 90, false, false] call BIS_fnc_createSimpleObject;</sqf>
<!-- BEGIN Note Section -->
<!-- For example:
<dd class="notedate">Posted on Month Day, Year - Time (UTC)</dd>
<dt class="note">'''[[User:User Name|User Name]]'''</dt>
<dd class="note">This is an example note. It is true and verifiable, and contains a little code snippet.
<code>[[if]] ([[_this]] == anExample) [[then]] { [[hint]] "Leave it here for others to read"; };</code></dd>
-->
<!-- END Note Section -->
</dl>


<h3 style="display:none">Bottom Section</h3>
|seealso= [[Arma 3: Simple Objects]] [[createSimpleObject]] [[BIS_fnc_adjustSimpleObject]] [[BIS_fnc_replaceWithSimpleObject]] [[BIS_fnc_simpleObjectData]] [[getPosWorld]] [[setPosWorld]]
<!-- Appropriate categories go here -->
}}
[[Category:Arma 3: Functions|{{uc:{{PAGENAME}}}}]]

Latest revision as of 16:26, 9 February 2024

Hover & click on the images for description

Description

Description:
Creates non-simulated framerate and network performance friendly object - a Simple Object - and applies different adjustments to fake non-existing physX and engine interactions. The adjustments need either to be stored in the object config or provided as the function input, otherwise they need to be done manually.

Simple objects cannot be destroyed and do not interact with the environment. They are useful for creating low performance-demanding static compositions (walls, rocks, wrecks, …) and/or environments where shooting and collisions are not expected.
Execution:
call
Groups:
Object Manipulation

Syntax

Syntax:
[input, position, direction, followTerrain, forceSuperSimpleObject, local] call BIS_fnc_createSimpleObject
Parameters:
input: String or Array:
  • String: classname of the object to be created. This is the preferred way if the asset config definition contains the adjustment data or the data are not needed (most objects do not need adjustments).
  • Array: adjustment data in format [class, model, reversed, verticalOffset, animationAdjustments, selectionsToHide]:
    • class: String - (Optional, default "") asset CfgVehicles config class (at least either model or class must be provided, ideally both)
    • model: String - (Optional, default "") Path to the vehicle p3d model; needs to start without backslash and must end with the proper file extension ".p3d"
    • reversed: Number - (Optional, default 0) some objects, usually vehicles, are reversed in p3d; valid values are:
      • 1: reverse
      • 0: no change - any value other than 1 will result in no change
    • verticalOffset: Number - (Optional, default 0) fix for non-existant physX; usually needed only for vehicles
    • animationAdjustments: Array - (Optional, default []) animation that need to be animated to given state, in format [animationName, animationState]:
      • animationName: String - animation name
      • animationState: Number - animation state
    • selectionsToHide: Array - (Optional, default []) all listed selections will be hidden
position: Array format PositionASL - the object will be placed by the model centre's position (see getPosWorld)
direction: Number - (Optional, default 0)
followTerrain: Boolean - (Optional, default true) true to follow terrain inclination, false to be horizontally aligned
forceSuperSimpleObject: Boolean - (Optional, default false) true to create a Super Simple Object from p3d path (that must be provided)
since Arma 3 logo black.png2.08
local: Boolean - (Optional, default false) true to create local instance of the object
Return Value:
Object - the created Simple Object, objNull if creation failed

Examples

Example 1:
["B_Boat_Armed_01_minigun_F", getPosWorld player, getDir player] call BIS_fnc_createSimpleObject;
Example 2:
["B_Boat_Armed_01_minigun_F", player modelToWorldWorld [0,5,0], getDir player + 90, false, false] call BIS_fnc_createSimpleObject;

Additional Information

See also:
Arma 3: Simple Objects createSimpleObject BIS_fnc_adjustSimpleObject BIS_fnc_replaceWithSimpleObject BIS_fnc_simpleObjectData getPosWorld setPosWorld

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