수요일 수업 복습을 간단하게 해보고자 한다.
(국비지원 K-디지털트레이닝으로 에티버스러닝에서 2월말부터 수업 듣고 있는 중입니닷)
마지막에 혼자 풀어 본 문제는 다음과 같았다.
- 캐릭터가 전등을 먹으면 캐릭터의 Arrow에 전등이 붙는다
- 캐릭터가 1번을 누르면 전구는 깜빡깜빡한다
- 서버에서 깜빡하면 클라이언트에서도 깜빡하고
- 클라이언트에서 깜빡하면 서버에서도 깜빡하게 만들어라!
정답은 없고, 각자만의 방식으로 풀어보았다.
(스팟라이트 템만 다 같이 만듦)
1. 써드퍼슨 머리에 Arrow 컴포넌트를 붙여준다. 여기에 전구를 달아줄 예정!
2. 블루프린트 액터 상속 받아서 만드고 Spotlight 컴포넌트를 붙이고 라이트 컬러와 강도를 수정한다. 각도도 땅바닥쪽으로 수정!
3. 커스텀이벤트 2개를 만들고, 하나는 Run On Server, 하나는 Multicast로 셋팅해준다. 이건 서버에서 실행하면 클라이언트에게도 똑같이 보여주려고 하는 작업
4. 써드퍼슨 BP에서 SpotLight변수를 BP_SpotLight 타입으로 생성해준다
변수 스팟라이트를 누르고 디테일창에서 Replicated 설정해준다
나는 써드퍼슨의 캡슐컴포넌트에 오버랩됐을 때 스팟라이트를 붙이는 방법을 써봤다. 물론 스팟라이트에도 박스콜리전을 넣어줘야 한다. 가장 중요한 건!! Set Owner였다.
이렇게 하면 템은 먹는데, 아예 불이 안보인다. 왜냐? 로케이션을 셋팅해줘야 하기 때문!
로테이션 Relative로 말고 World로 바꿔준
그럼에도 문제가 있다.
서버에서만 불이 깜빡거리고 클라에서는 깜빡거리지 않는다
문제가 뭐였는가?
바로 BP_SpotLight 자체에 리플리케이트를 꼭 체크해줘야 된다...위에선 컴포넌트에 리플리케이트를 했었다..
이렇게하면 짠! 깜빡깜빡~~
그리고 마지막 참고사항은 Switch Has Authoriy를 넣어서 서버에서 셋오너를 해줘야 한다는 점이다.
'언리얼엔진' 카테고리의 다른 글
[에티버스러닝] 믹사모와 유료 애니메이션 (1) | 2023.06.17 |
---|---|
[UE5.1] Where is Edit Pose when retargeting? (2) | 2023.06.06 |
[UE5.1] 언리얼C++로 캐릭터 움직이기!-1탄 (3) | 2023.04.28 |
[UE5.1] UE4애니메이션을 5로 리타겟팅 하기 (2) | 2023.04.22 |
멀티컨텐츠를 만들 때 필요한 것? 서버! (2) | 2023.04.21 |