createSimpleObject
Jump to navigation
Jump to search
Description
- Description:
- Create object with given shape defined as path to .p3d model. Supported LODs include Geometry, Fire Geometry, Roadway, View Geometry and ShadowVolume. Supported features include collision, texturing, animation, penetration, AI spotting occlusion, and surface specific sounds (like footsteps). Unsupported features include PhysX, damage, AI pathfinding (causes walking through walls), and built in lights.
Given the simulation limitations, global decorative objects can be created with very little network traffic. Objects that could be exclusively created with this command are: trees, bushes, rocks, bridges, roads, vehicle wrecks, custom models in mission, and other objects without a class in config. The height of the placement position might need to be adjusted experimentally.
Some of the models can be found here: createSimpleObject/objects.
For Livonia furniture see: Arma 3 Livonia Props.
See Arma 3: Simple Objects to learn more about simple objects. - Groups:
- Object Manipulation
Syntax
- Syntax:
- createSimpleObject [shapeName, positionWorld, local]
- Parameters:
- shapeName: String - path to the 3d model (can be obtained with getModelInfo command)
- positionWorld: Array format PositionWorld - placement position
- since 1.96
- local (Optional, default false): Boolean - true to create a local instance only
- Return Value:
- Object - created simple object
Alternative Syntax
- Syntax:
- createSimpleObject [className, positionASL, local]
- Parameters:
- className: String - CfgVehicles class name
- positionASL: Array format PositionASL - placement position
- since 1.96
- local (Optional, default false): Boolean - true to create a local instance only
- Return Value:
- Object - Created simple object
Examples
- Example 1:
_pos = player getRelPos [10, 0]; _tank = createSimpleObject ["a3\armor_f_beta\apc_tracked_01\apc_tracked_01_rcws_f.p3d", _pos]; _tank setPos (_pos vectorAdd (getPosWorld _tank vectorDiff (_tank modelToWorld [0,0,0]))); _tank hideSelection ["zasleh", true]; _tank hideSelection ["zasleh2", true]; _tank hideSelection ["clan", true]; _tank animate ["Wheel_podkoloL3", 0.5, true]; _tank animate ["Wheel_podkoloL6", 0.5, true];
- Example 2:
_pos = player getRelPos [10, 0]; _tank = createSimpleObject ["B_APC_Tracked_01_CRV_F", AGLtoASL _pos]; _tank setObjectTexture [0, "#(rgb,8,8,3)color(0,1,0,0.01)"]; _tank hideSelection ["zasleh", true]; _tank hideSelection ["zasleh2", true]; _tank hideSelection ["clan", true]; _tank animate ["Wheel_podkoloL3", 0.5, true]; _tank animate ["Wheel_podkoloL6", 0.5, true];
Additional Information
- See also:
- isSimpleObject hideSelection selectionPosition getModelInfo getObjectType cursorObject selectionNames animationNames createVehicle enableSimulation hideObject getMissionPath allLODs Arma 3: Simple Objects
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
- Posted on April 18, 2016 - 20:03 (UTC)
- Killzone Kid
- The easiest way to correctly place simple object is to create normal object of the same shape from class (if possible), then copy getPosWorld, vectorDir and vectorUp from it. Then create the simple object and apply copied values to it, this will position simple object exactly as normal object was positioned:
_heli = "B_Heli_Light_01_F" createVehicleLocal (player getRelPos [10, 0]); _position = getPosWorld _heli; _vectorDirUp = [vectorDir _heli, vectorUp _heli]; _model = getModelInfo _heli select 1; deleteVehicle _heli; _simpleHeli = createSimpleObject [_model, _position]; _simpleHeli setVectorDirAndUp _vectorDirUp;
- Posted on April 28, 2016 - 18:10 (UTC)
- Waffle SS.
- Models from within the mission file/folder can be created, but full system path is needed. Use: getMissionPath
- Posted on May 11, 2016 - 01:28 (UTC)
- Waffle SS.
- simulationEnabled returns false.
- Posted on September 5, 2016 - 15:10 (UTC)
- Warka
-
There is a section in function library dedicated to simple object creation and interaction. It's purpose is to simplify the operations:
- BIS_fnc_createSimpleObject
- creates simple object according to the supplied data
- you can supply p3d path, class name or data you get from scanning a non-simple object
- BIS_fnc_simpleObjectData
- gathers and returns data about the non-simple object
- data can be then used to create simple object
- BIS_fnc_replaceWithSimpleObject
- replaces non-simple object with simple object on the scene
- do not use it in large scale in MP missions as it is not network efficient
- BIS_fnc_adjustSimpleObject
- adjusts simple object to looks as close to the non-simple object as possible
- function is internally called from the 'BIS_fnc_createSimpleObject', you won't probably need to call this function directly
- BIS_fnc_createSimpleObject