public static HAPI_MaterialInfo getMaterialOnGroup( HAPI_AssetId asset_id, HAPI_ObjectId object_id, HAPI_GeoId geo_id, string group_name ) { #if ( UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || ( UNITY_METRO && UNITY_EDITOR ) ) HAPI_MaterialInfo material_info = new HAPI_MaterialInfo(); HAPI_Result status_code = HAPI_GetMaterialOnGroup( ref mySession, asset_id, object_id, geo_id, group_name, out material_info ); processStatusCode( status_code ); return material_info; #else throw new HoudiniErrorUnsupportedPlatform(); #endif }
// MATERIALS ------------------------------------------------------------------------------------------------ public static HAPI_MaterialInfo[] getMaterialsOnFaces( HAPI_AssetId asset_id, HAPI_ObjectId object_id, HAPI_GeoId geo_id, HAPI_PartId part_id ) { #if ( UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || ( UNITY_METRO && UNITY_EDITOR ) ) HAPI_PartInfo part_info = new HAPI_PartInfo(); HAPI_Result status_code = HAPI_GetPartInfo( ref mySession, asset_id, object_id, geo_id, part_id, out part_info ); processStatusCode( status_code ); bool are_all_the_same = false; int[] material_ids = new int[ part_info.faceCount ]; status_code = HAPI_GetMaterialIdsOnFaces( ref mySession, asset_id, object_id, geo_id, part_id, ref are_all_the_same, material_ids, 0, part_info.faceCount ); processStatusCode( status_code ); HAPI_MaterialInfo material_info = new HAPI_MaterialInfo(); HAPI_MaterialInfo[] material_infos = new HAPI_MaterialInfo[ part_info.faceCount ]; for ( int m = 0; m < part_info.faceCount; ++m ) { status_code = HAPI_GetMaterialInfo( ref mySession, asset_id, material_ids[ m ], out material_info ); processStatusCode( status_code ); material_infos[ m ] = material_info; } return material_infos; #else throw new HoudiniErrorUnsupportedPlatform(); #endif }
public static HAPI_MaterialInfo getMaterialOnPart( HAPI_AssetId asset_id, HAPI_ObjectId object_id, HAPI_GeoId geo_id, HAPI_PartId part_id ) { #if ( UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || ( UNITY_METRO && UNITY_EDITOR ) ) #if true HAPI_MaterialInfo material_info = new HAPI_MaterialInfo(); HAPI_Result status_code = HAPI_GetMaterialOnPart( ref mySession, asset_id, object_id, geo_id, part_id, out material_info ); processStatusCode( status_code ); #else HAPI_PartInfo part_info = new HAPI_PartInfo(); HAPI_Result status_code = HAPI_GetPartInfo( asset_id, object_id, geo_id, part_id, out part_info ); processStatusCode( status_code ); bool are_all_the_same = false; int[] material_ids = new int[ 1 ]; status_code = HAPI_GetMaterialIdsOnFaces( asset_id, object_id, geo_id, part_id, ref are_all_the_same, material_ids, 0, 1 ); processStatusCode( status_code ); HAPI_MaterialInfo material_info = new HAPI_MaterialInfo(); status_code = HAPI_GetMaterialInfo( asset_id, material_ids[ 0 ], out material_info ); processStatusCode( status_code ); #endif return material_info; #else throw new HoudiniErrorUnsupportedPlatform(); #endif }
HAPI_GetMaterialOnPart( ref HAPI_Session session, HAPI_AssetId asset_id, HAPI_ObjectId object_id, HAPI_GeoId geo_id, HAPI_PartId part_id, out HAPI_MaterialInfo material_info );
HAPI_GetMaterialOnGroup( ref HAPI_Session session, HAPI_AssetId asset_id, HAPI_ObjectId object_id, HAPI_GeoId geo_id, string group_name, out HAPI_MaterialInfo material_info );
HAPI_GetMaterialInfo( ref HAPI_Session session, HAPI_AssetId asset_id, HAPI_MaterialId material_id, out HAPI_MaterialInfo material_info );
HAPI_GetMaterialOnGroup( HAPI_AssetId asset_id, HAPI_ObjectId object_id, HAPI_GeoId geo_id, string group_name, out HAPI_MaterialInfo material_info);
HAPI_GetMaterialOnPart( HAPI_AssetId asset_id, HAPI_ObjectId object_id, HAPI_GeoId geo_id, HAPI_PartId part_id, out HAPI_MaterialInfo material_info);
HAPI_GetMaterialInfo( ref HAPI_Session session, HAPI_AssetId asset_id, HAPI_MaterialId material_id, out HAPI_MaterialInfo material_info);
private static extern HAPI_Result HAPI_GetMaterialInfo( ref HAPI_Session session, HAPI_AssetId asset_id, HAPI_MaterialId material_id, out HAPI_MaterialInfo material_info );