32 lines
1.4 KiB
C++
32 lines
1.4 KiB
C++
// Portage UE 5.5 - lot L7a (R-03, ERR-012) : remplacement des noeuds "Get SkeletalMesh" deprecies.
|
|
//
|
|
// En UE 5.1+, la propriete USkinnedMeshComponent::SkeletalMesh est depreciee (remplacee par
|
|
// SkinnedAsset). Les Blueprints 4.27 la lisent encore : chaque lecture passe par son getter
|
|
// GetSkeletalMesh_DEPRECATED(), qui renvoie Cast<USkeletalMesh>(GetSkinnedAsset()).
|
|
//
|
|
// Le premier essai (CX-B05) rebranchait ces lectures sur USkeletalMeshComponent::GetSkeletalMeshAsset().
|
|
// Cette fonction n'existe que sur USkeletalMeshComponent : sur les composants proxy de LifePlay,
|
|
// qui sont des USkinnedMeshComponent, le cast echouait et la lecture renvoyait None (ERR-002 aggrave).
|
|
//
|
|
// ULPMeshCompat::GetSkeletalMesh reproduit exactement le getter du moteur, pour tout
|
|
// USkinnedMeshComponent, sans passer par une API depreciee.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "Kismet/BlueprintFunctionLibrary.h"
|
|
#include "LPMeshCompat.generated.h"
|
|
|
|
class USkeletalMesh;
|
|
class USkinnedMeshComponent;
|
|
|
|
UCLASS()
|
|
class LIFEPLAY_API ULPMeshCompat : public UBlueprintFunctionLibrary
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
/** Maillage squelettique du composant : Cast<USkeletalMesh>(GetSkinnedAsset()), None si Component est None. */
|
|
UFUNCTION(BlueprintPure, Category = "Components|SkinnedMesh", meta = (DisplayName = "Get Skeletal Mesh (UE4)"))
|
|
static USkeletalMesh* GetSkeletalMesh(const USkinnedMeshComponent* Component);
|
|
};
|