목록분류 전체보기 (10)
UnrealEngineer
- 캐릭터 애니메이션 시스템의 생성캐릭터에서는 GetAnimInstance()를 통해서 AnimInstance 클래스로 접근 가능하고,AnimInstance 클래스에서는 GetOwningActor를 통해서 소유하고 있는 캐릭터에 접근가능하다. - 몽타주 : 애니메이션 클립을 잘라내고 합성한 후 이를 재생하는 애니메이션 기능1. Section 설정을 통해 관리 가능하다. - 콤보공격 구현 1. PrimaryDataAsset 클래스 생성 2. DataAsset 블루프린트 클래스 생성 (생성해둔 PrimaryDataAsset 클래스를 상속받도록 설정) // Fill out your copyright notice in the Description page of Project Settings.#pragm..
네트워크 전송 플로우 1. 네트워크로 업데이트할 오브젝트 목록화한다. (FNetworkObjectInfo라는 구조체에 포함 시킨다.)NextUpdateTime은 빈도 속성인 NetUpdateFrequency 속성과 관련이 있다.bPendingNetUpdate 값은 포화상태가 되어서 패킷을 보내지 못할때 체크되는 값으로 '우선권'과 관련있다. 2. 이러한 모든 액터들은 각각의 상태에 따라서 보낼 액터와 보내지 않을 액터로 걸러진다.( 보내지 않을 액터 : 서버틱 기준으로 초기화가 아직 안되었거나 보낼 타이밍이 안됐거나 휴면 상태일 수 있다. )그러므로 보낼 수 있는 액터들만 모아서 따로 목록을 관리한다. = ConsiderList (서버에서 한번만 실행)ConsiderList에 들어간 액터들은 각각 자신의..
네트워크 전송 플로우 1. 네트워크로 업데이트할 오브젝트 목록화한다. (FNetworkObjectInfo라는 구조체에 포함 시킨다.)NextUpdateTime은 빈도 속성인 NetUpdateFrequency 속성과 관련이 있다.bPendingNetUpdate 값은 포화상태가 되어서 패킷을 보내지 못할때 체크되는 값으로 '우선권'과 관련있다. 2. 이러한 모든 액터들은 각각의 상태에 따라서 보낼 액터와 보내지 않을 액터로 걸러진다.( 보내지 않을 액터 : 서버틱 기준으로 초기화가 아직 안되었거나 보낼 타이밍이 안됐거나 휴면 상태일 수 있다. )그러므로 보낼 수 있는 액터들만 모아서 따로 목록을 관리한다. = ConsiderList (서버에서 한번만 실행)ConsiderList에 들어간 액터들은 각각 자신의..
- 언리얼 인사이트언리얼 프로그램의 다양한 퍼포먼스를 체크할 수 있는 프로파일링 도구 1. 언리얼엔진 설치된 폴더 확인2. 인사이트 프로그램의 작업표시줄 고정3. 언리얼 에디터 실행 파일의 환경변수 경로 설정4. 언리얼 에디터를 구동하기 위한 배치파일 제작 1. 바로가기 만들기 2. 환경변수 추가하기 3. 배치파일 생성 4. 배치파일을 열고 언리얼인사이트를 실행시킨 후 Connect 시킨다. 5. 언리얼 인사이트 활용- 패킷 데이터- 번치 정보 (채널 데이터) → 캐릭터 정보와 게임스테이트 정보를 클라이언트로 복제하고 있음을 확인 할 수 있다. - 액터 리플리케이션의 빈도(Frequency) 클라이언트와 서버가 통신하는 빈도 ● NetUpdateFrequency : 리플리케이션 빈도의 최대치로 설..
- 액터의 리플리케이션(Replication) 정의리플리케이션 : 서버가 클라이언트에게 변경된 내용을 변수, 함수로 복제해주는 것 사용자의 환경이 각각 다 다르기 때문에 네트워크 통신(데이터 전송)을 최소화 하는 것이 중요하다.네트워크 통신을 최소화하고 유효성 검사만을 통해 클라이언트 스스로 로딩하는 것이 효율적이다. - 고정 액터 : 레벨을 구성하는 배경 액터- 동적 액터 : 플레이어컨트롤러, 폰 동적 액터와 고정 액터를 구분하기 위해 언리얼엔진은 모든 액터에는 NetLoadOnClient라는 속성이 있다. (기본값 true)이를 통해 네트워크와의 통신없이 클라이언트의 자체적인 로딩을 통해 효과적으로 구현할 수 있다. 서버의 컨텐츠 변경 사항을 모두 보내기 보다는변경을 일으키는 속성 값의 변경치를 전달..