UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SkinningSceneExtensionProxy.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
7
9class USkinnedAsset;
15
17{
18public:
20
21 virtual ~FSkinningSceneExtensionProxy() = default;
22
23 inline const USkinnedAsset* GetSkinnedAsset() const
24 {
25 return SkinnedAsset;
26 }
27
29 {
30 return MeshObject;
31 }
32
37
42
47
52
57
62
67
68 bool HasScale() const
69 {
70 return bHasScale;
71 }
72
74 {
76 }
77
78 bool UseSectionBoneMap() const
79 {
80 return bUseSectionBoneMap;
81 }
82
83 bool UseInstancing() const
84 {
85 return bUseInstancing;
86 }
87
88 // TODO: TEMP - Move to shared location with GPU
90 {
91 return 4 /* quat */ + 3 /* XYZ translation */ + (HasScale() ? 3 : 0 /* XYZ scale */);
92 }
93
95
97
98 virtual const FGuid& GetTransformProviderId() const;
99
101
102protected:
103 const USkinnedAsset* SkinnedAsset = nullptr;
105
108
112
113 uint8 bHasScale : 1 = false;
117};
118
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
uint8_t uint8
Definition binka_ue_file_header.h:8
uint16_t uint16
Definition binka_ue_file_header.h:7
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition SkinningSceneExtensionProxy.h:120
FGuid TransformProviderId
Definition SkinningSceneExtensionProxy.h:134
ENGINE_API void CreateRenderThreadResources(FSceneInterface &Scene, FRHICommandListBase &RHICmdList)
Definition SkinningSceneExtensionProxy.cpp:159
TObjectPtr< UTransformProviderData > TransformProvider
Definition SkinningSceneExtensionProxy.h:132
ENGINE_API TConstArrayView< uint64 > GetAnimationProviderData(bool &bOutValid) const override
Definition SkinningSceneExtensionProxy.cpp:180
ENGINE_API const FGuid & GetTransformProviderId() const override
Definition SkinningSceneExtensionProxy.cpp:191
FTransformProviderRenderProxy * TransformProviderProxy
Definition SkinningSceneExtensionProxy.h:133
ENGINE_API void DestroyRenderThreadResources()
Definition SkinningSceneExtensionProxy.cpp:171
Definition RHICommandList.h:455
Definition SceneInterface.h:106
Definition SkeletalRenderPublic.h:85
Definition SkeletalMeshRenderData.h:17
Definition SkinningSceneExtensionProxy.h:17
virtual TConstArrayView< uint64 > GetAnimationProviderData(bool &bOutValid) const
Definition SkinningSceneExtensionProxy.cpp:124
const FSkeletalMeshObject * GetMeshObject() const
Definition SkinningSceneExtensionProxy.h:28
uint8 bUseInstancing
Definition SkinningSceneExtensionProxy.h:116
bool UseSectionBoneMap() const
Definition SkinningSceneExtensionProxy.h:78
uint32 GetUniqueAnimationCount() const
Definition SkinningSceneExtensionProxy.h:63
uint16 MaxBoneTransformCount
Definition SkinningSceneExtensionProxy.h:109
virtual void DestroyRenderThreadResources()
Definition SkinningSceneExtensionProxy.h:96
uint16 MaxBoneInfluenceCount
Definition SkinningSceneExtensionProxy.h:110
uint8 bUseSectionBoneMap
Definition SkinningSceneExtensionProxy.h:115
uint32 GetMaxBoneHierarchyCount() const
Definition SkinningSceneExtensionProxy.h:48
bool UseSkeletonBatching() const
Definition SkinningSceneExtensionProxy.h:73
bool UseInstancing() const
Definition SkinningSceneExtensionProxy.h:83
virtual void CreateRenderThreadResources(FSceneInterface &Scene, FRHICommandListBase &RHICmdList)
Definition SkinningSceneExtensionProxy.h:94
TArray< float > BoneObjectSpace
Definition SkinningSceneExtensionProxy.h:107
uint32 GetObjectSpaceFloatCount() const
Definition SkinningSceneExtensionProxy.h:89
FSkeletalMeshObject * MeshObject
Definition SkinningSceneExtensionProxy.h:104
virtual const FGuid & GetTransformProviderId() const
Definition SkinningSceneExtensionProxy.cpp:130
bool HasScale() const
Definition SkinningSceneExtensionProxy.h:68
const USkinnedAsset * SkinnedAsset
Definition SkinningSceneExtensionProxy.h:103
uint32 GetMaxBoneInfluenceCount() const
Definition SkinningSceneExtensionProxy.h:58
uint16 UniqueAnimationCount
Definition SkinningSceneExtensionProxy.h:111
uint8 bHasScale
Definition SkinningSceneExtensionProxy.h:113
uint32 GetMaxBoneObjectSpaceCount() const
Definition SkinningSceneExtensionProxy.h:53
TConstArrayView< uint32 > GetBoneHierarchy() const
Definition SkinningSceneExtensionProxy.h:33
uint32 GetMaxBoneTransformCount() const
Definition SkinningSceneExtensionProxy.h:43
uint8 bUseSkeletonBatching
Definition SkinningSceneExtensionProxy.h:114
const USkinnedAsset * GetSkinnedAsset() const
Definition SkinningSceneExtensionProxy.h:23
virtual ~FSkinningSceneExtensionProxy()=default
TArray< uint32 > BoneHierarchy
Definition SkinningSceneExtensionProxy.h:106
TConstArrayView< float > GetBoneObjectSpace() const
Definition SkinningSceneExtensionProxy.h:38
Definition TransformProviderData.h:19
Definition Array.h:670
Definition SkinnedAsset.h:47
Definition TransformProviderData.h:38
Definition Guid.h:109
Definition InstancedSkinnedMeshSceneProxyDesc.h:11
Definition SkinnedMeshSceneProxyDesc.h:21
Definition ObjectPtr.h:488