
UI의 OwningPlayer를 GetPlayerController 0번일 경우
LogBlueprintUserMessages: [BP_TestController_C_0] Server: UI를 생성한 Controller
LogBlueprintUserMessages: [BP_TestController_C_1] Server: UI를 생성한 Controller
LogBlueprintUserMessages: [BP_TestController_C_0] Client 1: UI를 생성한 ControllerUI의 OwningPlayer
LogBlueprintUserMessages: [WBP_ChatWindow_C_0] Server: UI생성시 OwningPlayer : BP_TestController_C_0
LogBlueprintUserMessages: [WBP_ChatWindow_C_1] Server: UI생성시 OwningPlayer : BP_TestController_C_0
LogBlueprintUserMessages: [WBP_ChatWindow_C_0] Client 1: UI생성시 OwningPlayer : BP_TestController_C_0
UI의 OwningPlayer를 GetPlayerController Self일 경우
LogBlueprintUserMessages: [BP_TestController_C_0] Server: UI를 생성한 Controller
LogBlueprintUserMessages: [BP_TestController_C_1] Server: UI를 생성한 Controller
LogBlueprintUserMessages: [BP_TestController_C_0] Client 1: UI를 생성한 ControllerUI의 OwningPlayer
LogBlueprintUserMessages: [WBP_ChatWindow_C_0] Server: UI생성시 OwningPlayer : BP_TestController_C_0
LogBlueprintUserMessages: [WBP_ChatWindow_C_0] Client 1: UI생성시 OwningPlayer : BP_TestController_C_0
해결
어떤 방식을 사용하던 Widget이 2개씩 생성되기때문에 혼선이 생김.
따라서 Widget을 생성할때는 ClientEvent로 생성을 요청하면 각 Client마다 Widget을 가질 수 있고 혼선이 없다.
LogBlueprintUserMessages: [BP_TestController_C_0] Server: UI생성한 Controller:BP_TestController_C_0,HasAuthority : true
LogBlueprintUserMessages: [BP_TestController_C_0] Client 1: UI생성한 Controller:BP_TestController0,HasAuthority : false
LogBlueprintUserMessages: [WBP_ChatWindow_C_0] Server: UI를 생성한 Owner : BP_TestController_C_0
LogBlueprintUserMessages: [WBP_ChatWindow_C_0] Client 1: UI를 생성한 Owner : BP_TestController0