setObjectTexture: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "(\|[pr][0-9]+ *= *[^- ]*) *- *P([a-gi-z ])" to "$1 - p$2")
No edit summary
 
(One intermediate revision by one other user not shown)
Line 43: Line 43:
|p2= selection: [[Number]] or {{GVI|arma3|2.10|size= 0.75}} [[String]] - index of the selection. It is defined in the [[CfgVehicles Config Reference#hiddenSelections|hiddenSelections]] array in the vehicle's config (starting with 0). If a string is given, it referes to a hiddenSelection name or clan selection instead of an index.
|p2= selection: [[Number]] or {{GVI|arma3|2.10|size= 0.75}} [[String]] - index of the selection. It is defined in the [[CfgVehicles Config Reference#hiddenSelections|hiddenSelections]] array in the vehicle's config (starting with 0). If a string is given, it referes to a hiddenSelection name or clan selection instead of an index.


|p3= texture: [[String]] - path to texture
|p3= texture: [[String]] - path to texture. Since {{GVI|arma3|2.20}} using '''"#reset"''' would reset to default texture.


|r1= [[Nothing]]
|r1= [[Nothing]]


|x1= <sqf>_objectname setObjectTexture [0, "\pboname\texture.paa"];
|x1= <sqf>
_objectname setObjectTexture [1, "\pboname\texture2.paa"];</sqf>
_objectname setObjectTexture [0, "\pboname\texture.paa"];
_objectname setObjectTexture [1, "\pboname\texture2.paa"];
</sqf>


|x2= <sqf>_obj setObjectTexture [0, "#(rgb,8,8,3)color(1,0,0,1)"];</sqf>
|x2= <sqf>_obj setObjectTexture [0, "#(rgb,8,8,3)color(1,0,0,1)"];</sqf>
Line 55: Line 57:


|x4= Disable randomization before applying a texture to a vehicle in the Editor (if it is a vehicle that supports randomization):
|x4= Disable randomization before applying a texture to a vehicle in the Editor (if it is a vehicle that supports randomization):
<sqf>this setVariable ["BIS_enableRandomization", false];
<sqf>
this setObjectTexture [0,"#(rgb,8,8,3)color(1,0,0,1)"];</sqf>
this setVariable ["BIS_enableRandomization", false];
this setObjectTexture [0,"#(rgb,8,8,3)color(1,0,0,1)"];
</sqf>


|x5= The {{hl|"clan"}} selection can be used to apply a texture to the areas that usually display the [[squad.xml]] logo:
|x5= The {{hl|"clan"}} selection can be used to apply a texture to the areas that usually display the [[squad.xml]] logo:
Line 68: Line 72:
|timestamp= 20140825222700
|timestamp= 20140825222700
|text= Also works with absolute path and .jpg files.
|text= Also works with absolute path and .jpg files.
<sqf>_obj setObjectTexture [0, "C:\Folder\Folder\Texture.paa"];
<sqf>
_obj setObjectTexture [0, "C:\Folder\Folder\Texture.jpg"];</sqf>
_obj setObjectTexture [0, "C:\Folder\Folder\Texture.paa"];
_obj setObjectTexture [0, "C:\Folder\Folder\Texture.jpg"];
</sqf>
Texture can also be blank:
Texture can also be blank:
<sqf>_obj setObjectTexture [2,""];</sqf>
<sqf>_obj setObjectTexture [2,""];</sqf>

Latest revision as of 00:20, 28 October 2024

Hover & click on the images for description

Description

Description:
Applies given texture to object's selection. See also Procedural Textures and Retexturing with setObjectTexture.
  • Not all objects can be textured this way. To find out, run getObjectTextures command on an object. Empty array [] usually indicates it cannot be textured.
  • All textures must have a resolution of 2a × 2b (e.g. 16×16, 16×32, 64×256, 512×512, ...). The largest texture size supported by the RV engine is 4096×4096.
  • Supported formats: .pac, .paa, .jpg, .jpeg, .ogg, .ogv
Multiplayer:
See setObjectTextureGlobal.
Groups:
Object Manipulation

Syntax

Syntax:
object setObjectTexture [selection, texture]
Parameters:
object: Object
selection: Number or Arma 3 logo black.png2.10 String - index of the selection. It is defined in the hiddenSelections array in the vehicle's config (starting with 0). If a string is given, it referes to a hiddenSelection name or clan selection instead of an index.
texture: String - path to texture. Since Arma 3 logo black.png2.20 using "#reset" would reset to default texture.
Return Value:
Nothing

Examples

Example 1:
_objectname setObjectTexture [0, "\pboname\texture.paa"]; _objectname setObjectTexture [1, "\pboname\texture2.paa"];
Example 2:
_obj setObjectTexture [0, "#(rgb,8,8,3)color(1,0,0,1)"];
Example 3:
_obj setObjectTexture [0, "#(argb,512,512,1)r2t(rendersurface,1.333)"];
Example 4:
Disable randomization before applying a texture to a vehicle in the Editor (if it is a vehicle that supports randomization):
this setVariable ["BIS_enableRandomization", false]; this setObjectTexture [0,"#(rgb,8,8,3)color(1,0,0,1)"];
Example 5:
The "clan" selection can be used to apply a texture to the areas that usually display the squad.xml logo:
MyVehicle setObjectTexture ["clan", "\a3\missions_f_epa\data\img\orbat\b_111_texture_ca.paa"];

Additional Information

See also:
getObjectTextures setObjectTextureGlobal setObjectMaterial getObjectMaterials setObjectMaterialGlobal forceFlagTexture

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
Benargee - c
Posted on Aug 25, 2014 - 22:27 (UTC)
Also works with absolute path and .jpg files.
_obj setObjectTexture [0, "C:\Folder\Folder\Texture.paa"]; _obj setObjectTexture [0, "C:\Folder\Folder\Texture.jpg"];
Texture can also be blank:
_obj setObjectTexture [2,""];
This will make the texture selection invisible on certain units without an error message. In some cases this is a desirable effect
Longbow - c
Posted on Mar 18, 2015 - 03:09 (UTC)
It is also possible to apply texture to unit's backpack, as it also has hidden selection (unfortunately does not work for vests)
backpackContainer player setObjectTexture [0,"#(argb,8,8,3)color(0,0,0,1)"]
Also keep in mind that player's custom texture is being reset when you open BIS Arsenal (even without changing any gear)
Moerderhoschi - c
Posted on May 13, 2015 - 14:37 (UTC)
You can also use the game's internal skins: List of MH9 Skins
_obj setObjectTexture [0, "\a3\air_f\heli_light_01\data\skins\heli_light_01_ext_digital_co.paa"];
Killzone_Kid - c
Posted on Oct 24, 2016 - 12:09 (UTC)
Sometimes it could be necessary to set default material on an object for the texture to take effect:
_block = createVehicle ["Land_VR_Block_02_F", player getPos [20, getDir player], [], 0, "CAN_COLLIDE"]; _block setObjectMaterial [0, "\a3\data_f\default.rvmat"]; _block setObjectTexture [0, "#(rgb,8,8,3)color(1,0,0,1)"];
Courtesy of Larrow