Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Game/Tagger.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -103,12 +103,12 @@ FLinearColor ATagger::GetActorLabelColor(const AActor &Actor, const crp::CityObj

void ATagger::TagActor(const AActor &Actor, bool bTagForSemanticSegmentation)
{
#ifdef CARLA_TAGGER_EXTRA_LOG
#ifdef CARLA_TAGGER_EXTRA_LOG//定义了CARLA_TAGGER_EXTRA_LOG宏时,输出额外的日志信息。这有助于调试和跟踪程序的行为。
UE_LOG(LogCarla, Log, TEXT("Actor: %s"), *Actor.GetName());
#endif // CARLA_TAGGER_EXTRA_LOG

// Iterate static meshes.
TArray<UStaticMeshComponent *> StaticMeshComponents;
TArray<UStaticMeshComponent *> StaticMeshComponents;//定义了一个UStaticMeshComponent指针数组,用于存储Actor中的所有静态网格组件。
Actor.GetComponents<UStaticMeshComponent>(StaticMeshComponents);
for (UStaticMeshComponent *Component : StaticMeshComponents) {
auto Label = GetLabelByPath(Component->GetStaticMesh());
Expand All @@ -117,7 +117,7 @@ void ATagger::TagActor(const AActor &Actor, bool bTagForSemanticSegmentation)
{
Label = crp::CityObjectLabel::Rider;
}
SetStencilValue(*Component, Label, bTagForSemanticSegmentation);
SetStencilValue(*Component, Label, bTagForSemanticSegmentation);//根据标签和是否用于语义分割的标志,为每个组件设置模板值。这通常用于渲染过程中,以便区分不同的对象类别
#ifdef CARLA_TAGGER_EXTRA_LOG
UE_LOG(LogCarla, Log, TEXT(" + StaticMeshComponent: %s"), *Component->GetName());
UE_LOG(LogCarla, Log, TEXT(" - Label: \"%s\""), *GetTagAsString(Label));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -633,11 +633,12 @@ bool UUSDImporterWidget::EditSkeletalMeshBones(
void UUSDImporterWidget::CopyCollisionToPhysicsAsset(
UPhysicsAsset* PhysicsAssetToEdit, UStaticMesh* StaticMesh)
{
UE_LOG(LogCarlaTools, Log, TEXT("Num bodysetups %d"), PhysicsAssetToEdit->SkeletalBodySetups.Num());
UE_LOG(LogCarlaTools, Log, TEXT("Num bodysetups %d"), PhysicsAssetToEdit->SkeletalBodySetups.Num());//这行代码输出PhysicsAssetToEdit(要编辑的物理资产)中的骨骼身体设置(SkeletalBodySetups)的数量。这对于调试和了解物理资产的结构很有用。
UBodySetup* BodySetupPhysicsAsset =
PhysicsAssetToEdit->SkeletalBodySetups[
PhysicsAssetToEdit->FindBodyIndex(FName("Vehicle_Base"))];
PhysicsAssetToEdit->FindBodyIndex(FName("Vehicle_Base"))];//从PhysicsAssetToEdit中查找名为"Vehicle_Base"的骨骼身体设置。FindBodyIndex函数返回一个索引,该索引用于从SkeletalBodySetups数组中检索相应的UBodySetup对象。
UBodySetup* BodySetupStaticMesh = StaticMesh->BodySetup;
//将StaticMesh的聚合几何体(AggGeom)复制到PhysicsAssetToEdit中名为"Vehicle_Base"的骨骼身体设置中。聚合几何体是碰撞体的表示,它可能包含多个简单的几何形状(如盒子、球体等),这些形状被组合起来以近似表示复杂的物体形状。
BodySetupPhysicsAsset->AggGeom = BodySetupStaticMesh->AggGeom;

}
Loading