전체 글612 [기타] 프로젝트 영상편집시 참고 사항 보호되어 있는 글 입니다. 2024. 4. 5. [언리얼5] 프로퍼티 동기화(C++ & BP) C++코드로 작성한 변수 프로퍼티의 값을 BP에서 변경할 수 있도록 생성한다면 언리얼엔진의 블루프린트(BP)에서 해당 변수의 값을 변경시 기존에 설정한 값이 즉시 수정 반영 되지 않습니다. C++클래스생성 > C++클래스를 상속받아 BP 클래스를 생성 > 생성된 BP클래스에서 C++클래스에서 생성하고 노출시켜 변수의 값을 BP에서 변경 > BP의 로직에 사용된 변수는 C++에서 초기화된 값으로만 지정 예를 들어 아래와 같은 변수가있는 투사체 클래스를 C++을 통하여 변수를 생성하고 BP에 노출시키도록 설정하였을때 위의 클래스를 바탕으로 생성한 BP클래스에서 해당 변수가 노출되어 수정이 가능한 것이 보입니다. C++클래스에서 해당 변수를 투사체의 움직임에 사용할때 BP에서 해당 값을 변경합니다. 변경후 컴.. 2024. 4. 5. 24.04.04 플레이리스트작업 보호되어 있는 글 입니다. 2024. 4. 4. [언리얼5] 멀티플레이 동기화(서버&클라)메모 멀티플레이 슈팅 게임 프로젝트를 진행하면서 플레이어가 공격을 했을때 서버와 클라이언트간의 동기화에 대하여 정리 서버 공격실행 Fire() 공격검사 CanFire() 무기의 타입 검사 (Server) 서버 Fire() 요청 (NetMulticast) 모든 로컬 클라이언트에 Fire() 호출 (동기화) 권한 확인 HasAuthority() Fire() 로직 실행 클라이언트 공격 실행 Fire() 공격 검사 CanFire() 무기의 타입 검사 Fire() 로직 실행 (Server) 서버 Fire() 요청 (NetMulticast) 모든 로컬 클라이언트에 Fire() 호출 권한 확인 !IsLocallyControlled() && HasAuthority() Fire() 로직 실행 (동기화) 위의로직은 클라이언트가.. 2024. 4. 2. [언리얼5] 멀티플레이 개인프로젝트 무기교체 및 상태변경 슈팅 게임을 하면서 하나의 무기만 들고 다니지 않고 보조 무기를 추가적으로 가지고 다니도록 한다. 플레이어 클래스는 장착무기(EquippedWeapon), 보조무기(SecondaryWeapon) 의 변수를 가지고 있으며 무기 클래스는 무기 자신의 상태를 별도로 가지게된다. 무기의 상태를 바꾸는 함수를 만들고 해당함수가 실행되며 무기의 상태가 변경 될때마다 무기의 상세한 설정을 진행한다. 1. 무기의 상태 변화 함수 호출 2. 무기의 상태별 함수 실행 3. 무기의 추가적인 설정 변경 진행 무기의 상태는 복제된 변수이기때문에 자동적으로 OnRep 함수를 실행하게 되므로 해당 함수(클라)에서도 작업 함수를 호출하도록 한다. 단, 무기가 레벨상에 떨어졌을때(드랍) 서버자체에서는 해당 무기의 충돌을 다시 명시적으.. 2024. 4. 1. 24.04.01 플레이리스트작업 보호되어 있는 글 입니다. 2024. 4. 1. 이전 1 ··· 11 12 13 14 15 16 17 ··· 102 다음