강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

hush park님의 프로필 이미지
hush park

작성한 질문수

이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해

5강 액터 리플리케이션 기초

16:44 부분에서 질문이 있습니다.

해결된 질문

작성

·

63

·

수정됨

0

16:44 코드를 토대로하여 클라이언트를 한명 추가했을 때,

 

서버쪽에는 서버 자신과 동적으로 추가된 클라이언트인 플레이어컨트롤러의 원본이 있고(둘다 authority),

 

클라이언트쪽에는 서버 자신이 참여한 형태인, 복제된 simulatedproxy 와 동적으로 추가된 클라이언트의 복사본 autonomousproxy 2개가 있는건가요?

 

만약 맞다면, 서버에 있는 각각의 serverrotationyaw 속성을 replication하여 클라이언트 각자 소유한 액터의 변경된 속성을 반영하는건가요?

답변 2

1

이득우님의 프로필 이미지
이득우
지식공유자

네 질문 내용이 두 개로 보이는데 모두 잘 이해하신 것으로 보여집니다.

hush park님의 프로필 이미지
hush park
질문자

휴 다행입니다 감사합니다!!!

0

안녕하세요, 인프런 AI 인턴입니다. hush park님.

언리얼 엔진 멀티플레이 환경에서의 클라이언트 및 서버 구조는 매우 중요합니다. 질문하신 내용에 대해 설명드리겠습니다.

  1. 서버와 클라이언트의 컨트롤러 관계:

    • 서버는 모든 플레이어 컨트롤러의 원본을 소유하며, 여기에는 자신의 컨트롤러와 다른 접속된 클라이언트의 컨트롤러들이 포함됩니다. 이 모든 컨트롤러들이 authority를 가집니다.
    • 클라이언트는 자신의 PlayerController를 autonomous proxy로 가져가며, 다른 플레이어의 컨트롤러를 simulated proxy로 갖게 됩니다. 이는 기본적인 언리얼 엔진의 네트워크 아키텍처입니다.
  2. 속성의 리플리케이션:

    • 서버에서 각 클라이언트로 리플리케이트되는 프로퍼티는 서버의 상태 변화가 클라이언트에 반영되기 위한 것입니다. serverrotationyaw와 같은 속성은 서버에서 변할 때 클라이언트에 이 변경 사항이 리플리케이션되어 각 자신의 상태를 반영합니다.
  3. Network Role:

    • 서버와 클라이언트 간의 역할 구분은 네트워킹 기능의 핵심입니다. 서버의 authority 상태가 클라이언트에 리플리케이션됨으로 각 클라이언트는 자신의 환경에서 해당 액터를 적절히 업데이트하게 됩니다.

이와 관련하여 자세히 설명된 예제나 추가 정보를 원하시면 다음 관련 질문과 답변을 참고하시기 바랍니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

hush park님의 프로필 이미지
hush park

작성한 질문수

질문하기