언리얼엔진 23

언리얼엔진 강좌 60 [damage - 01] 총과 총알 제작하고 마우스 클릭하면 총알 생성하기

쌩초보를 위한 언리얼 엔진 4 강좌입니다. 소스코드: github.com/easyprogstudy/unreal_damage 단계별로 올리지 않고 최종 버전만 올려 놓았습니다. 언리얼 엔진 강의 60번째 시간으로 총쏘고 데미지 입기 시리즈의 1번째 시간입니다. 이번 시간에는 아주 간단하게 총을 위한 블루프린트 클래스를 만들고 총알을 위한 블루프린트 클래스를 만듭니다. 그리고 마우스 클릭을 하면 총에 fire 함수를 호출하도록 하고 총에서 총알을 생성합니다. 총알을 생성하는 건 총의 역할이고 총알이 발사되는 건 총알 자체의 역할입니다. 언리얼 엔진 버전: 4.25.0

언리얼엔진 강좌 58 [조명탄 - 01] 조명탄의 움직임 만들기

쌩초보를 위한 언리얼 엔진 4 강좌입니다. 소스코드: github.com/easyprogstudy/unreal_flare 언리얼 엔진 강의 58번째 시간으로 댓글로 요청하신 조명탄을 만드는 법을 설명합니다. 총 2개로 나누어 블루프린트로 조명탄을 만드는데, 이번에는 조명탄의 움직임을 만들어 봅니다. 조명탄의 움직임은 처음엔 위로 올라가다가 고점에서 작은 폭발이 일어나고 이후 아주 천천히 자유낙하하는 걸로 했습니다. 1. 블루프린트로 총을 만들어 Fire 함수를 만들고, Fire 함수가 호출되면 조명탄을 spawn합니다. 2. 조명탄은 Projectile Movement 컴포넌트를 가지고 있어 spawn 되자마자 바로 포물선을 그리며 날아갑니다. 3. 조명탄은 spawn 되고 1초 후에(포물선을 그리며 날..

언리얼엔진 강좌 57 C++로 blueprint용 함수 노드 만들기

쌩초보를 위한 언리얼 엔진 4 강좌입니다. 언리얼 엔진 강의 57번째 시간으로 C++을 이용해 블루프린트용 함수를 만들어 보겠습니다. 물론 블루프린트로도 훌륭한 프로그램을 만들 수 있지만, C++이 가능한 개발자라면 좀더 유연하게 개발 폭을 넓혀볼 수 있습니다. 그리고 이런 방식이 개발자는 C++로 함수를 만들고 디자이너는 블루프린트로 그 함수들을 이용하며 좀더 쉽게 협업할 수 있습니다. unreal에서 visual studio 2019를 이용해 C++ 클래스 만드는 방법과 기본적으로 UE_LOG 함수를 이용하면 한글이 깨져나오는데 한글을 제대로 표현하는 방법도 설명합니다. 언리얼 엔진 버전: 4.24.3

언리얼엔진 강좌 56 [인공지능-17] Perception 06 - 시각센서06 - actor의 태그를 이용해 플레이어인지 구분하기

쌩초보를 위한 언리얼 엔진 4 강좌입니다. 언리얼 엔진 강의 56번째 시간, 언리얼 엔진 인공지능(unreal engine AI) 17번째 시간으로 몹을 하나 더 추가해 봅니다. 그럼 몹끼리 서로 공격하고 쫒아다니는걸 볼 수 있는데, 그 이유는 시각 센서로 감지된 오브젝트가 플레이어인지 같은 몹인지 구분하지 않았기 때문입니다. 그래서 플레이어에 태그를 하나 달아놓고 ActorHasTag라는 함수를 이용해 태그로 판단해서 플레이어인 경우에만 쫒아가도록 하였습니다. 언리얼 엔진에서 C++로 개발하는 경우에는 Detection by Affiliation에 Detect Enemies, Detect Neutrals, Detect Friendies 등을 설정해 태그를 이용하지 않아도 되지만, 현재 버전의 블루프린트..

언리얼엔진 강좌 54 [인공지능-15] Perception 04 - 시각센서04 - 시야에 들어오면 쫒아가기

쌩초보를 위한 언리얼 엔진 4 강좌입니다. 언리얼 엔진 강의 54번째 시간, 언리얼 엔진 인공지능(unreal engine AI) 15번째 시간으로 몹이 시각센서로 적을 발견하면 쫓아가도록 만듭니다. 기존 비헤이비어 트리에 moveto 태스크 하나를 추가합니다. 현재 플레이어의 위치를 블랙보드에 적어주고 그 블랙보드의 값을 서비스를 이용해 moveto에 전달해 줘서 계속 플레이어를 쫓아가도록 만들어 봅니다. 언리얼 엔진 버전: 4.24.3

언리얼엔진 강좌 51 [인공지능-12] Perception 01 - 시각센서01 - 시각센서 설명

쌩초보를 위한 언리얼 엔진 4 강좌입니다. 언리얼 엔진 강의 51번째 시간, 언리얼 엔진 인공지능(unreal engine AI) 12번째 시간으로 Perception(지각)에 대해 설명하고 Perception의 한 요소인 시각센서에 대해 설명합니다. 시각센서는 일정 거리 안으로 어떤 물체가 들어오면 쫓아가거나 공격하거나 말을 하거나 하는 등의 일을 하기 위해 물체의 접근을 감지하는 역할을 합니다. 시각센서에서 감지한 물체는 보통 태그를 이용해 이 물체가 어떤 성질을 가졌는지, 적인지 아군인지, 같은 몹인지, 플레이어인지 등을 판단해 공격하거나 그냥 무시하거나 합니다. 보통 GTA같은 게임에서 가만히 서 있던 적이 일정 거리 안에 플레이어가 보이면 공격할 때, 이런 시각센서가 동작해서 적을 감지하고 있는..

언리얼엔진 강좌 50 [인공지능-11] Behavior Tree 07 - Decorator

쌩초보를 위한 언리얼 엔진 4 강좌입니다. 언리얼 엔진 강의 50번째 시간, 언리얼 엔진 인공지능(unreal engine AI) 11번째 시간으로 Behavior Tree에서 사용하는 Decorator(데코레이터)에 대해 설명합니다. 설계 개념에서 decorator는 원래 어떤 기능을 하던 모듈은 고치지 않고 그대로 둔 채로 그 모듈을 감싸서 어떤 기능을 추가하는 것을 말합니다. 언리얼 엔진에서의 decorator도 같은 개념인데, Decorator는 Behavior Tree에서 각 task에 붙어서 task가 할 일을 더 추가해 주는 일을 합니다. 그리고 decorator가 task에 붙지만 composite에도 붙습니다. 언리얼 엔진에서 decorator는 주로 이 노드(task나 compositr..

언리얼엔진 강좌 45 [인공지능-06] Behavior Tree 04 - Selector

쌩초보를 위한 언리얼 엔진 4 강좌입니다. 언리얼 엔진 강의 45번째 시간, 언리얼 엔진 인공지능(unreal engine AI) 6번째 시간으로 비헤이비어 트리의 selector를 사용합니다. selector는 sequence와 달리 하나라도 true로 종료하는 태스크가 있으면 이후의 실행을 종료합니다. 다른 말로 표현하면 true로 종료하는 태스크가 있을 때까지 실행합니다. 언리얼 엔진 버전: 4.24.2

쌩초보를 위한 언리얼엔진 강좌 28 [Level 2-17] 블루프린트 클래스의 이벤트 받아 레벨 블루프린트에서 문 폭발시키기

방탈출 게임을 만들며 배우는 쌩초보를 위한 언리얼 엔진 4 강좌입니다. 28번째 시간으로 새로 만든 블루프린트 클래스에서 이벤트를 발생시키고, 그 이벤트를 받아 레벨 블루프린트에서 문 폭발 효과를 발생시키고 문을 없애는 과정을 소개합니다. 블루프린트 클래스에서 발생시킨 이벤트를 레벨 블루프린트가 받아 처리하는 건 굉장히 쉽게 잘 되어 있습니다. 예전 4GL하셨던 분들은 보시면 와 이거 4GL이랑 똑같네 하실 거에요. 그러니까 이제부터는 객체는 블루프린트 클래스로 만들고, 그 객체들, 블루프린트 클래스 들간의 이벤트 주고받는 통신은 레벨 블루프린트가 중간에서 처리하는 식으로 작업하시게 될 겁니다. 언리얼 엔진 4 버전 : 4.21.2