视角同步NewViewTarget

SetViewTargetwithBlen说明:

http://api.unrealengine.com/INT/BlueprintAPI/Game/Player/SetViewTargetwithBlend/?tdsourcetag=s_pcqq_aiomsg

 

一、创建一个空项目

二、设置输入映射

  视角同步NewViewTarget

三、创建一个名为“MyCameraActor”的Character

  视角同步NewViewTarget

  保持不变。

  视角同步NewViewTarget

四、在关卡蓝图

  视角同步NewViewTarget

  视角同步NewViewTarget

  注意Set View Target with Blend节点要取消情景关联才会显示出来。

五、设置游戏窗口大小

  视角同步NewViewTarget

六、运行游戏

  视角同步NewViewTarget

七、在打开的第一个窗口(服务器端)游戏窗口中按v键,按Shift+F1释放鼠标,激活第二个游戏窗口(游戏客户端),随意走动和上下左右看看,第一个窗口(服务器端)的画面也会跟着同步。

  视角同步NewViewTarget

 八、如果给MyCharacter添加一个Camera,则无论客户端或者服务器端游戏窗口都可以按下V键,然后会自动同步另外一个游戏窗口的画面,左右看和移动都可以同步,但是无法同步往上往下看,原因未知!

九、SetViewTargetWithBlend用法(C++)

视角同步NewViewTarget

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, 0);  
    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);  
        }  
    }  
}  

View Code

 

原文链接: https://www.cnblogs.com/timy/p/10211157.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    视角同步NewViewTarget

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/287917

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月15日 上午10:31
下一篇 2023年2月15日 上午10:32

相关推荐