SetViewTargetwithBlen说明:
http://api.unrealengine.com/INT/BlueprintAPI/Game/Player/SetViewTargetwithBlend/?tdsourcetag=s_pcqq_aiomsg
一、创建一个空项目
二、设置输入映射
三、创建一个名为“MyCameraActor”的Character
保持不变。
四、在关卡蓝图
注意Set View Target with Blend节点要取消情景关联才会显示出来。
五、设置游戏窗口大小
六、运行游戏
七、在打开的第一个窗口(服务器端)游戏窗口中按v键,按Shift+F1释放鼠标,激活第二个游戏窗口(游戏客户端),随意走动和上下左右看看,第一个窗口(服务器端)的画面也会跟着同步。
八、如果给MyCharacter添加一个Camera,则无论客户端或者服务器端游戏窗口都可以按下V键,然后会自动同步另外一个游戏窗口的画面,左右看和移动都可以同步,但是无法同步往上往下看,原因未知!
九、SetViewTargetWithBlend用法(C++)
const float TimeBetweenCameraChanges = 2.0f;
const float SmoothBlendTime = 0.75f;
TimeToNextCameraChange -= DeltaTime;
if (TimeToNextCameraChange <= 0.0f)
{
TimeToNextCameraChange += TimeBetweenCameraChanges; // Find the actor that handles control for the local player.
APlayerController* OurPlayerController = UGameplayStatics::GetPlayerController(this, );
if (OurPlayerController)
{
if ((OurPlayerController->GetViewTarget() != CameraOne) && (CameraOne != nullptr))
{
// Cut instantly to camera one.
OurPlayerController->SetViewTarget(CameraOne);
}
else if ((OurPlayerController->GetViewTarget() != CameraTwo) && (CameraTwo != nullptr))
{
// Blend smoothly to camera two.
OurPlayerController->SetViewTargetWithBlend(CameraTwo, SmoothBlendTime);
}
}
}