C# Class HoudiniEngineUnity.HEU_AttributesStore

Contains all the attributes for an editable node (part). Addtionally contains attribute-editing tools data such as temporary mesh and collider.
Inheritance: ScriptableObject
Datei anzeigen Open project: sideeffects/HoudiniEngineForUnity Class Usage Examples

Public Methods

Method Description
AddAttributeValueFloat ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
AddAttributeValueInt ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
AreAttributesDirty ( ) : bool
CopyAttributeValuesTo ( destAttrStore ) : void
CreateAttribute ( string attributeName, HoudiniEngineUnity.HAPI_AttributeInfo &attributeInfo ) : HEU_AttributeData
DestroyAllData ( HEU_HoudiniAsset asset ) : void
DisablePaintCollider ( ) : void
EnablePaintCollider ( ) : void
FillAttribute ( HEU_AttributeData attributeData, HEU_ToolsInfo sourceTools ) : void
GetAttributeData ( int index ) : HEU_AttributeData
GetAttributeData ( string name ) : HEU_AttributeData
GetAttributeNames ( ) : List
GetAttributeSetValueFunction ( HEU_AttributeData.AttributeType attrType, HEU_ToolsInfo.PaintMergeMode paintMergeMode ) : SetAttributeValueFunc
GetPaintMeshCollider ( ) : MeshCollider
GetPositionAttributeValues ( Array &positionArray ) : void
GetVertexIndices ( Array &indices ) : void
HasColorAttribute ( ) : bool
HasDirtyAttributes ( ) : bool
HasMeshForPainting ( ) : bool
HidePaintMesh ( ) : void
IsEquivalentTo ( other ) : bool
IsValidStore ( HoudiniEngineUnity.HEU_SessionBase session ) : bool
MultiplyAttributeValueFloat ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
MultiplyAttributeValueInt ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
PaintAttribute ( HEU_AttributeData attributeData, HEU_ToolsInfo sourceTools, int attributeIndex, float paintFactor, SetAttributeValueFunc setAttrFunc ) : void
RefreshUpstreamInputs ( HoudiniEngineUnity.HEU_SessionBase session ) : void

This reverts local modifcations, refresh upstream inputs, and cooks the editable node. This ensures that the node will use the latest upstream input data before applying its own changes.

ReplaceAttributeValueFloat ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
ReplaceAttributeValueInt ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
SetAttributeDataDirty ( HEU_AttributeData attributeData ) : void
SetAttributeEditValueFloat ( HEU_AttributeData attributeData, int startIndex, Array values ) : void
SetAttributeEditValueInt ( HEU_AttributeData attributeData, int startIndex, Array values ) : void
SetAttributeEditValueString ( HEU_AttributeData attributeData, int startIndex, Array values ) : void
SetAttributeValueString ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
SetupMeshAndMaterials ( HEU_HoudiniAsset asset, HAPI_PartType partType, GameObject outputGameObject ) : void
ShowPaintMesh ( ) : void
SubtractAttributeValueFloat ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
SubtractAttributeValueInt ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
SyncAllAttributesFrom ( HoudiniEngineUnity.HEU_SessionBase session, HEU_HoudiniAsset asset, HAPI_NodeId geoID, HoudiniEngineUnity.HAPI_PartInfo &partInfo, GameObject outputGameObject ) : void
SyncDirtyAttributesToHoudini ( HoudiniEngineUnity.HEU_SessionBase session ) : void
UploadAttributeViaMeshInput ( HoudiniEngineUnity.HEU_SessionBase session, HAPI_NodeId geoID, HAPI_PartId partID ) : bool

Private Methods

Method Description
GetAttributesList ( HoudiniEngineUnity.HEU_SessionBase session, HAPI_NodeId geoID, HAPI_PartId partID, List attributesList, HAPI_AttributeOwner ownerType, int attributeCount ) : void
PopulateAttributeData ( HoudiniEngineUnity.HEU_SessionBase session, HAPI_NodeId geoID, HAPI_PartId partID, HEU_AttributeData attributeData, HoudiniEngineUnity.HAPI_AttributeInfo &attributeInfo ) : void
SetAttributeDataSyncd ( HEU_AttributeData attributeData ) : void
UpdateAttribute ( HoudiniEngineUnity.HEU_SessionBase session, HAPI_NodeId geoID, HAPI_PartId partID, HEU_AttributeData attributeData ) : void
UpdateAttributeList ( HoudiniEngineUnity.HEU_SessionBase session, HAPI_NodeId geoID, HAPI_PartId partID, List attributeDataList ) : void

Method Details

AddAttributeValueFloat() public static method

public static AddAttributeValueFloat ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
attributeData HEU_AttributeData
targetIndex int
sourceTools HEU_ToolsInfo
sourceIndex int
factor float
return void

AddAttributeValueInt() public static method

public static AddAttributeValueInt ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
attributeData HEU_AttributeData
targetIndex int
sourceTools HEU_ToolsInfo
sourceIndex int
factor float
return void

AreAttributesDirty() public method

public AreAttributesDirty ( ) : bool
return bool

CopyAttributeValuesTo() public method

public CopyAttributeValuesTo ( destAttrStore ) : void
return void

CreateAttribute() public method

public CreateAttribute ( string attributeName, HoudiniEngineUnity.HAPI_AttributeInfo &attributeInfo ) : HEU_AttributeData
attributeName string
attributeInfo HoudiniEngineUnity.HAPI_AttributeInfo
return HEU_AttributeData

DestroyAllData() public method

public DestroyAllData ( HEU_HoudiniAsset asset ) : void
asset HEU_HoudiniAsset
return void

DisablePaintCollider() public method

public DisablePaintCollider ( ) : void
return void

EnablePaintCollider() public method

public EnablePaintCollider ( ) : void
return void

FillAttribute() public method

public FillAttribute ( HEU_AttributeData attributeData, HEU_ToolsInfo sourceTools ) : void
attributeData HEU_AttributeData
sourceTools HEU_ToolsInfo
return void

GetAttributeData() public method

public GetAttributeData ( int index ) : HEU_AttributeData
index int
return HEU_AttributeData

GetAttributeData() public method

public GetAttributeData ( string name ) : HEU_AttributeData
name string
return HEU_AttributeData

GetAttributeNames() public method

public GetAttributeNames ( ) : List
return List

GetAttributeSetValueFunction() public static method

public static GetAttributeSetValueFunction ( HEU_AttributeData.AttributeType attrType, HEU_ToolsInfo.PaintMergeMode paintMergeMode ) : SetAttributeValueFunc
attrType HEU_AttributeData.AttributeType
paintMergeMode HEU_ToolsInfo.PaintMergeMode
return SetAttributeValueFunc

GetPaintMeshCollider() public method

public GetPaintMeshCollider ( ) : MeshCollider
return MeshCollider

GetPositionAttributeValues() public method

public GetPositionAttributeValues ( Array &positionArray ) : void
positionArray Array
return void

GetVertexIndices() public method

public GetVertexIndices ( Array &indices ) : void
indices Array
return void

HasColorAttribute() public method

public HasColorAttribute ( ) : bool
return bool

HasDirtyAttributes() public method

public HasDirtyAttributes ( ) : bool
return bool

HasMeshForPainting() public method

public HasMeshForPainting ( ) : bool
return bool

HidePaintMesh() public method

public HidePaintMesh ( ) : void
return void

IsEquivalentTo() public method

public IsEquivalentTo ( other ) : bool
return bool

IsValidStore() public method

public IsValidStore ( HoudiniEngineUnity.HEU_SessionBase session ) : bool
session HoudiniEngineUnity.HEU_SessionBase
return bool

MultiplyAttributeValueFloat() public static method

public static MultiplyAttributeValueFloat ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
attributeData HEU_AttributeData
targetIndex int
sourceTools HEU_ToolsInfo
sourceIndex int
factor float
return void

MultiplyAttributeValueInt() public static method

public static MultiplyAttributeValueInt ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
attributeData HEU_AttributeData
targetIndex int
sourceTools HEU_ToolsInfo
sourceIndex int
factor float
return void

PaintAttribute() public method

public PaintAttribute ( HEU_AttributeData attributeData, HEU_ToolsInfo sourceTools, int attributeIndex, float paintFactor, SetAttributeValueFunc setAttrFunc ) : void
attributeData HEU_AttributeData
sourceTools HEU_ToolsInfo
attributeIndex int
paintFactor float
setAttrFunc SetAttributeValueFunc
return void

RefreshUpstreamInputs() public method

This reverts local modifcations, refresh upstream inputs, and cooks the editable node. This ensures that the node will use the latest upstream input data before applying its own changes.
public RefreshUpstreamInputs ( HoudiniEngineUnity.HEU_SessionBase session ) : void
session HoudiniEngineUnity.HEU_SessionBase
return void

ReplaceAttributeValueFloat() public static method

public static ReplaceAttributeValueFloat ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
attributeData HEU_AttributeData
targetIndex int
sourceTools HEU_ToolsInfo
sourceIndex int
factor float
return void

ReplaceAttributeValueInt() public static method

public static ReplaceAttributeValueInt ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
attributeData HEU_AttributeData
targetIndex int
sourceTools HEU_ToolsInfo
sourceIndex int
factor float
return void

SetAttributeDataDirty() public static method

public static SetAttributeDataDirty ( HEU_AttributeData attributeData ) : void
attributeData HEU_AttributeData
return void

SetAttributeEditValueFloat() public static method

public static SetAttributeEditValueFloat ( HEU_AttributeData attributeData, int startIndex, Array values ) : void
attributeData HEU_AttributeData
startIndex int
values Array
return void

SetAttributeEditValueInt() public static method

public static SetAttributeEditValueInt ( HEU_AttributeData attributeData, int startIndex, Array values ) : void
attributeData HEU_AttributeData
startIndex int
values Array
return void

SetAttributeEditValueString() public static method

public static SetAttributeEditValueString ( HEU_AttributeData attributeData, int startIndex, Array values ) : void
attributeData HEU_AttributeData
startIndex int
values Array
return void

SetAttributeValueString() public static method

public static SetAttributeValueString ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
attributeData HEU_AttributeData
targetIndex int
sourceTools HEU_ToolsInfo
sourceIndex int
factor float
return void

SetupMeshAndMaterials() public method

public SetupMeshAndMaterials ( HEU_HoudiniAsset asset, HAPI_PartType partType, GameObject outputGameObject ) : void
asset HEU_HoudiniAsset
partType HAPI_PartType
outputGameObject GameObject
return void

ShowPaintMesh() public method

public ShowPaintMesh ( ) : void
return void

SubtractAttributeValueFloat() public static method

public static SubtractAttributeValueFloat ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
attributeData HEU_AttributeData
targetIndex int
sourceTools HEU_ToolsInfo
sourceIndex int
factor float
return void

SubtractAttributeValueInt() public static method

public static SubtractAttributeValueInt ( HEU_AttributeData attributeData, int targetIndex, HEU_ToolsInfo sourceTools, int sourceIndex, float factor ) : void
attributeData HEU_AttributeData
targetIndex int
sourceTools HEU_ToolsInfo
sourceIndex int
factor float
return void

SyncAllAttributesFrom() public method

public SyncAllAttributesFrom ( HoudiniEngineUnity.HEU_SessionBase session, HEU_HoudiniAsset asset, HAPI_NodeId geoID, HoudiniEngineUnity.HAPI_PartInfo &partInfo, GameObject outputGameObject ) : void
session HoudiniEngineUnity.HEU_SessionBase
asset HEU_HoudiniAsset
geoID HAPI_NodeId
partInfo HoudiniEngineUnity.HAPI_PartInfo
outputGameObject GameObject
return void

SyncDirtyAttributesToHoudini() public method

public SyncDirtyAttributesToHoudini ( HoudiniEngineUnity.HEU_SessionBase session ) : void
session HoudiniEngineUnity.HEU_SessionBase
return void

UploadAttributeViaMeshInput() public method

public UploadAttributeViaMeshInput ( HoudiniEngineUnity.HEU_SessionBase session, HAPI_NodeId geoID, HAPI_PartId partID ) : bool
session HoudiniEngineUnity.HEU_SessionBase
geoID HAPI_NodeId
partID HAPI_PartId
return bool