MESH
MESH
#Overview
name: MESH
This variable is created as a Console Variable (cvar).
- type:
Exec
- help:
Sorry: Exec commands have no help
It is referenced in 9
C++ source files.
#Summary
#Usage in the C++ source code
The purpose of MESH is primarily for referencing and managing mesh-related data within various subsystems of Unreal Engine 5. It appears to be used in different contexts across multiple modules and plugins, particularly in animation, customization, and editor functionalities.
Based on the callsites, the MESH variable is utilized in the following Unreal Engine subsystems, plugins, or modules:
- IKRig Animation Plugin
- Mutable Customizable Object Editor Plugin
- UnrealEd (Editor)
The value of this variable is not explicitly set in the provided code snippets. It seems to be used more as an identifier or enum value in different contexts rather than a setting with an assignable value.
Other variables that interact with MESH depend on the specific context:
- In the IKRig plugin, it interacts with other enum values like ROOT, BONE, and CHAIN.
- In the Mutable plugin, it’s used alongside other mesh-related properties like MORPH, IMAGE, and PROJECTOR.
Developers should be aware that:
- MESH is used in different contexts across various plugins and modules, so its exact meaning may vary depending on where it’s used.
- In some cases (e.g., in UnrealEd), MESH appears to be part of deprecated functionality.
Best practices when using this variable:
- Understand the specific context in which MESH is being used, as its purpose may vary across different subsystems.
- When working with the IKRig plugin, be aware of how MESH relates to other selection types like ROOT and BONE.
- In the Mutable plugin, consider MESH as part of a larger system for managing customizable objects and their properties.
- Avoid using MESH in deprecated contexts, such as the one mentioned in the UnrealEd module.
- When extending or modifying code that uses MESH, maintain consistency with its current usage within the specific module or plugin.
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Plugins/Animation/IKRig/Source/IKRigEditor/Private/RetargetEditor/IKRetargetEditorController.cpp:443
Scope (from outer to inner):
file
function bool FIKRetargetEditorController::GetCameraTargetForSelection
Source code excerpt:
}
case ERetargetSelectionType::ROOT:
case ERetargetSelectionType::MESH:
case ERetargetSelectionType::NONE:
default:
// frame both meshes
OutTarget = FSphere(0);
if (const UPrimitiveComponent* SourceComponent = GetSkeletalMeshComponent(ERetargetSourceOrTarget::Source))
{
#Loc: <Workspace>/Engine/Plugins/Animation/IKRig/Source/IKRigEditor/Private/RetargetEditor/IKRetargetEditorController.cpp:780
Scope (from outer to inner):
file
function void FIKRetargetEditorController::SetSelectedMesh
Source code excerpt:
if (SelectedMesh)
{
LastSelectedItem = ERetargetSelectionType::MESH;
}
}
UPrimitiveComponent* FIKRetargetEditorController::GetSelectedMesh() const
{
return SelectedMesh;
#Loc: <Workspace>/Engine/Plugins/Animation/IKRig/Source/IKRigEditor/Public/RetargetEditor/IKRetargetEditorController.h:45
Scope: file
Source code excerpt:
BONE,
CHAIN,
MESH,
ROOT,
NONE
};
struct FBoundIKRig
{
#Loc: <Workspace>/Engine/Plugins/Experimental/Mutable/Source/CustomizableObjectEditor/Private/MuCOE/SMutableGraphViewer.cpp:411
Scope (from outer to inner):
file
function void SMutableGraphViewer::GetChildrenForInfo
Source code excerpt:
for (int32 l = 0; l < Private->m_meshes.Num(); ++l)
{
AddChildFunc(Private->m_meshes[l].m_pMesh.get(), TEXT("MESH"));
}
for (int32 l = 0; l < Private->m_images.Num(); ++l)
{
AddChildFunc(Private->m_images[l].m_pImage.get(), FString::Printf(TEXT("IMAGE [%s]"), *Private->m_images[l].m_name));
}
#Loc: <Workspace>/Engine/Plugins/Experimental/Mutable/Source/CustomizableObjectEditor/Private/MuCOE/SMutableGraphViewer.cpp:434
Scope (from outer to inner):
file
function void SMutableGraphViewer::GetChildrenForInfo
Source code excerpt:
mu::NodeSurfaceEdit* SurfaceEdit = StaticCast<mu::NodeSurfaceEdit*>(ParentNode);
mu::NodeSurfaceEdit::Private* Private = SurfaceEdit->GetPrivate();
AddChildFunc(Private->m_pMesh.get(), TEXT("MESH"));
AddChildFunc(Private->m_pMorph.get(), TEXT("MORPH"));
AddChildFunc(Private->m_pFactor.get(), TEXT("MORPH_FACTOR"));
for (int32 l = 0; l < Private->m_textures.Num(); ++l)
{
AddChildFunc(Private->m_textures[l].m_pExtend.get(), FString::Printf(TEXT("EXTEND [%d]"), l));
#Loc: <Workspace>/Engine/Plugins/Experimental/Mutable/Source/CustomizableObjectEditor/Private/MuCOE/SMutableGraphViewer.cpp:643
Scope: file
Source code excerpt:
mu::NodeImageProject::Private* Private = ImageProjectVar->GetPrivate();
AddChildFunc(Private->m_pProjector.get(), FString::Printf(TEXT("PROJECTOR")));
AddChildFunc(Private->m_pMesh.get(), FString::Printf(TEXT("MESH")));
AddChildFunc(Private->m_pImage.get(), FString::Printf(TEXT("IMAGE")));
AddChildFunc(Private->m_pMask.get(), FString::Printf(TEXT("MASK")));
AddChildFunc(Private->m_pAngleFadeStart.get(), FString::Printf(TEXT("FADE START ANGLE")));
AddChildFunc(Private->m_pAngleFadeEnd.get(), FString::Printf(TEXT("FADE END ANGLE")));
}
#Loc: <Workspace>/Engine/Plugins/Experimental/Mutable/Source/CustomizableObjectEditor/Private/MuCOE/SMutableGraphViewer.cpp:676
Scope: file
Source code excerpt:
mu::NodeMeshFragment* MeshFragmentVar = StaticCast<mu::NodeMeshFragment*>(ParentNode);
mu::NodeMeshFragment::Private* Private = MeshFragmentVar->GetPrivate();
AddChildFunc(Private->m_pMesh.get(), FString::Printf(TEXT("MESH")));
}
else if (ParentNode->GetType() == mu::NodeColourSampleImage::GetStaticType())
{
mu::NodeColourSampleImage* ColorSampleImageVar = StaticCast<mu::NodeColourSampleImage*>(ParentNode);
mu::NodeColourSampleImage::Private* Private = ColorSampleImageVar->GetPrivate();
#Loc: <Workspace>/Engine/Plugins/Experimental/Mutable/Source/MutableRuntime/Private/MuR/InstancePrivate.h:96
Scope (from outer to inner):
file
namespace mu
function MESH
Source code excerpt:
struct MESH
{
MESH(FResourceID InId, FName InName)
{
Id = InId;
Name = InName;
}
FResourceID Id;
#Loc: <Workspace>/Engine/Source/Editor/UnrealEd/Private/EditorServer.cpp:434
Scope (from outer to inner):
file
function bool UEditorEngine::SafeExec
Source code excerpt:
FMessageDialog::Open( EAppMsgType::Ok, FText::Format(NSLOCTEXT("UnrealEd", "Error_TriedToExecDeprecatedCmd", "Tried to execute deprecated command: {0}"),FText::FromString(FullStr)) );
}
else if( FParse::Command(&Str,TEXT("MESH")) )
{
FMessageDialog::Open( EAppMsgType::Ok, FText::Format(NSLOCTEXT("UnrealEd", "Error_TriedToExecDeprecatedCmd", "Tried to execute deprecated command: {0}"),FText::FromString(FullStr)) );
}
else if( FParse::Command( &Str, TEXT("AUDIO")) )
{
FMessageDialog::Open( EAppMsgType::Ok, FText::Format(NSLOCTEXT("UnrealEd", "Error_TriedToExecDeprecatedCmd", "Tried to execute deprecated command: {0}"),FText::FromString(FullStr)) );