アクタブループリントにSceneCaptureComponent2Dを追加し、目印用の球体に親子付したところ、シーンキャプチャの位置とキャプチャ画像に違いがある気がします。
上図において左側にいるのがキャラクター、右側にある球体がシーンキャプチャを見やすくするための目印、球体にくっついている黄色い矢印の根本にシーンキャプチャ、黄色い矢印がシーンキャプチャの方向になっています。
(他にも緑や紫の矢印が写ってしまっていますが気にしないでください^^;)
球体->シーンキャプチャ->矢印の順に親子付しています。
この状態において私が期待する出力画像はキャラクターの腹部分を中心としたキャラクターの全体像です。
しかし実際に出力された画像は以下の様なものでした。
ブループリント上で親子付した場合は期待通りの画像が出力されたのですが、何が悪いのでしょうか?
以下がコードの概要になります。
this->PostureSphere = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("PostureSphere"));
this->PostureSphere->bHiddenInGame = true;
static ConstructorHelpers::FObjectFinder<UStaticMesh> SphereVisualAsset(TEXT("/Game/StarterContent/Shapes/Shape_Sphere.Shape_Sphere"));
if (SphereVisualAsset.Succeeded())
{
this->PostureSphere->SetStaticMesh(SphereVisualAsset.Object);
//this->PostureSphere->SetRelativeLocation(FVector(0.0f, 0.0f, -50.0f));
this->PostureSphere->SetWorldScale3D(FVector(0.2f));
}
this->PostureView = CreateDefaultSubobject<USceneCaptureComponent2D>(TEXT("PostureView"));
this->PostureView->SetRelativeLocation(FVector(50.0f, 0.0f, 50.0f));
this->PostureView->AttachTo(this->PostureSphere);
this->ImitationView->AttachTo(this->ImitationSphere);
this->PVArrow=CreateDefaultSubobject<UArrowComponent>(TEXT("PostureViewArrow"));
this->PVArrow->AttachTo(this->PostureView);
this->PVArrow->ArrowColor = FColor::Yellow;
this->PVArrow->SetWorldScale3D(FVector(0.5f));
//this->PVArrow->bIsScreenSizeScaled = true;
よろしくお願いします。