게임엔진 4

[Unity] photon pun2

photon pun2 photon은 각종 멀티플레이용 네트워크 패키지를 제공해주는 회사이다. photon의 여러 서비스중 pun2는 Photon Unity Networking로 유니티용 멀티플레이 패키지 서비스이다.pun2는 photon에서 제공해주는 서버를 사용하여 클라이언트 측 코딩만 진행하여 멀티플레이 게임을 제작하는것이 가능하게 해준다. pun2는 마치 p2p를 하는듯 마스터 플레이어와 그외 플레이어 사이의 통신처럼 인터페이스를 제공해주지만 실제로는 서버를 경유하는 서버 기반 멀티를 수행하게된다. pun2 asset pun2로 멀티게임을 만드려면 우선 photon서버에서 pun2 어플리케이션을 하나 생성하고 id를 받아야한다. 그러면 활성화된 pun2서버가 생겨나며 해당 서버로 멀티게임을 만들 수..

게임엔진/Unity 2023.08.03

[언리얼 엔진5][기초 3장]렌더링 리소스 기초

메쉬 언리얼 엔진은 두 종류의 메쉬 리소스가 있다. static mesh 고정된 정점을 가진 스태틱 메쉬 skeletal mesh 관절 웨이팅이 포함되어 호환되는 관절 인덱스를 가진 스켈레톤으로 애니메이션 가능한 메쉬 메테리얼 슬롯 메쉬의 정점 및 기하구조들은 다른 메테리얼을 사용되는 그룹별로 그루핑되어있다. n개의 메테리얼 그룹을 가지는 메쉬 리소스는 n개의 메테리얼 슬롯을 가지고 있고 각 슬롯에 장착된 메테리얼이 해당 그룹 기하구조들을 렌더링하는데 사용된다. 스켈레톤 슬롯 스켈레탈 메쉬 리소스의 경우 자신에게 적용할 스켈레톤을 넣을 수 있는 스켈레톤 슬롯이있다. 스켈레톤 리소스를 넣으면 해당 스켈레톤을 사용하여 애니메이션되게된다. 메테리얼 메테리얼은 셰이더를 기반으로 만들어져 여러 값과 텍스처들을 적..

[언리얼 엔진5][기초 2장] 충돌 감지

개요 언리얼 엔진에서 콜리전속성을 가진 컴포넌트끼리는 충돌이 일어날 수 있다. 여기서 각 콜리전 설정에 따라 해당 콜리전은 각 채널의 콜리전들에 대해서 block되거나 overlap되거나 ignore될 수 있다. block은 서로 막히며 충돌 이벤트가 발생한다. overlap은 막히진않지만 겹침 이벤트가 발생한다. ignore은 무시다. 두 콜리전이 충돌하면 서로가 상대 채널에 대해 처리되는 설정 중 더 낮은 처리가 일어난다. ex)block block => block block overlap => overlap overlap ignore => ignore 충돌 이벤트 엑터 엑터의 notifyHit멤버 함수를 오버라이드하면 엑터가 가진 컴포넌트의 콜리전이 충돌 시 해당 정보들과 함께 해당 함수가 호출된다..

[언리얼 엔진5][기초 1장] 엑터와 컴포넌트

엑터와 컴포넌트 언리얼 엔진은 월드안에 엑터들이 존재하며 엑터들은 컴포넌트들을 가지고 있다. 여기서 엑터는 오로지 월드위에만 존재 할 수 있으며 다른 엑터에 속할 수 없다.(월드 상의 트랜스폼 배치를 이야기하는 것 이다. 클래스에서 다른 엑터의 참조를 가지는 등은 당연히 가능) 대신 엑터가 가지는 컴포넌트들이 엑터 아래에서 계층적으로 존재한다. 엑터 바로 아래에 루트 컴포넌트가 존재하며 그 아래 계층적으로 존재한다. 엑터 ㄴ 루트 컴포넌트 ㄴ컴포넌트 ㄴ컴포넌트 ㄴ컴포넌트 ㄴ컴포넌트 그럼 계층적인 트랜스폼은 어떻게 표현할까? 컴포넌트 중 씬 컴포넌트는 트랜스폼을 가지는 컴포넌트이다. 이러한 컴포넌트들의 계층으로 계층적인 트랜스 폼을 표현 가능하다. 여기서 루트 컴포넌트는 반드시 씬 컴포넌트나 그의 자손(C..