首页 > 代码库 > 控制鼠标单击的物体
控制鼠标单击的物体
控制鼠标单击的物体
void AMyCharacter::PossesClicked() { APlayerController* PlayerController = Cast<APlayerController>(GetController()); if (PlayerController != nullptr) { // Get the coordinates of the mouse from our controller float LocationX; float LocationY; PlayerController->GetMousePosition(LocationX, LocationY); // Do a trace and see if there the position intersects something in the world FVector2D MousePosition(LocationX, LocationY); FHitResult HitResult; const bool bTraceComplex = false; if (PlayerController->GetHitResultAtScreenPosition(MousePosition, ECC_Visibility, bTraceComplex, HitResult) == true ) { // If the actor we intersected with is a controller posses it APawn* ClickedPawn = Cast<APawn>(HitResult.GetActor()); if( ClickedPawn != nullptr ) { // Unposses ourselves PlayerController->UnPossess(); // Posses the controller we clicked on PlayerController->Possess(ClickedPawn); } } } }
控制鼠标单击的物体
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。