본문 바로가기

전체 글145

Unreal Engine Obstacle Assault Project Setup 이번에는 C++를 사용하여 Unreal Engine의 기능들을 사용해서 장애물을 피해 달리는 프로젝트를 해보려고 합니다. 먼저, Character Asset입니다. Map Asset입니다. 두 에셋을 사용합니다. 복사본을 만들어서, Content 밑에 Main Level 이라는 이름으로 저장하겠습니다. Warehouse Wreckage 프로젝트와 마찬가지로, 시작프로젝트 설정을 해줍니다. 줌아웃 해서, 섬 들중 하나를 사용하려고 합니다. 캐릭터도 임포트 해주었습니다. SCK_Casual01 > Blueprint > ThirdPersonCharacter 드래그 앤 드랍, 디폴트 매시인 캐릭터가 하나 생성되었다. 2023. 7. 1.
Unreal Engine Level Node, Delay Node 총알이 다 떨어지면, 레벨을 새로여는 기능을 구현하고자 한다. Unreal Engine에서는 이름이나 레퍼런스로 Level을 얻어올 수 있는 것 같다. 일정시간 Delay 시켜주는 함수 다음과 같이 총알이 떨어졌을때 Delay를 달고, 현재 레벨을 다시 열어주면 된다. 2023. 7. 1.
Unreal Engine Functions - Member Function 현재 메인레벨 이벤트 그래프에 존재하는 Add Impulse 함수에는 스테틱 메쉬 컴포넌트의 속성을 가져오는 노드들이 많이 존재한다. 하지만 이것을 BP_Projectile 즉, 인스턴스가 생성될 때 자체적으로 함수를 가지고 있게 할 수 있지 않을까? 물론 가능하며 이것이 객체지향 프로그래밍 원칙에 부합한다. 따라서 BP_Projectile 을 컨텐츠 드로어 에서 열고, 그안에 함수를 만들어준다. 암묵적으로 모든 멤버함수는 현재 타겟이나, 현재 인스턴스라는 파라미터를 갖고 있다. self >>를 통해서 접근가능하다. 다음과 같이 활용 가능하다. 이 함수를 메인 레벨에서도 참조할 수 있다. 2023. 7. 1.
Unreal Engine Blueprint Functions - Pure Function 함수 중 순수 함수에 대한 설명을 적고자 합니다. Has Ammo 함수는 실행핀을 가지고 있는데 이것이 좀 의문이 들었다. 실행핀이 필요한 경우는 어느때일까? 사이드 이펙트에 관해서 사이드 이펙트란, 함수가 실행될 때 식별 가능한 효과가 생기는 것을 말한다. E.g. Print String, Add Impulse 와 같은 함수가 대표적이다. Pure Function 사이드 이펙트가 없는 함수 오직, return 값만 존재 E.g. Get Ammo 와 같은 getter함수들, 연산함수 ex) Multiply, Minus,,,, 이들은 실행 핀이 없다. 함수의 Detail창에서 퓨어 텝을 눌러서 순수함수로 만들 수 있다. Side Effect가 없다고 확신할때만 퓨어로 만들어주자. 2023. 7. 1.