참고영상https://www.youtube.com/watch?v=b9x3NIagvCU&t=1s 해당 강좌의 20강, 21강을 토대로 만들어졌음을 미리 말씀드립니다. 이번 글에선 에너미의 AI를 만들 것인데, 복잡하게 만들 건 아니고 그냥 타겟포인트를 여러개 만들어 놓고 그 사이를 움직이는 인공지능을 만들 계획이다. 블루프린트를 만들고 상단의 일반 클래스가 아닌 모든 클래스에서 AI를 검색한 뒤 AIController를 찾아 만들어준다. 에너미 오브젝트로 만든 블루프린트 객체에 들어간 후 메인 객체(self)에서 Pawn-> AI Controller Class를 방금 만든 AIController로 지정을 해줘야만 AI가 적용이 된다 에너미 블루프린트 객체에서 타겟 포인트 여러개를 받을 수 있는 배열을 만들..
보통 검색을 할 때 유니티에서 파일처리하기를 검색하면,보통 C#에서 파일 처리하는 단순한 방식으로 처리를 한다.하지만 그걸 그대로 빌드를 하면 파일을 전혀 찾지 못한다. 이를 위해선 Resources.Load를 사용해야 하기에, 텍스트 데이터들을 일단 Resources 폴더안에 넣어준다. 그리고 해당 데이터를 TextAsset으로 만든다. using UnityEngine; TextAsset txt = Resources.Load(파일이름); * 파일이름에서 확장자는 반드시 제거해줘야 한다. 제거하지 않으면 파일을 찾지 못한다 txt.text가 텍스트에 대한 데이터인데, 그냥 써도 되지만 xml파싱을 하는 등의 경우에는 TextReader를 원한다. 그래서 이와 같은 식으로 만들어 줄 수도 있다. using..
플레이어 폰은 플레이어 컨트롤러와 이어져 있는 형태이며, 플레이어가 삭제되는 경우 컨트롤러와 연결이 해제가 되어 통제가 불가능해지는 방식이다. 게임모드는 해당 게임을 담당하고 관리하는 오브젝트라고 볼 수 있으니, 게임모드를 만들어 리스폰기능을 여기에서 보자 게임모드는 블루프린트 생성에서 Game Mode Base를 상속해 생성할 수 있다 리스폰을 하는 블루프린트는 그냥 실행하는 것이 아니라 '죽었을 때' 실행이 되어야 한다. 그래서 이벤트를 따로 만들어주고 '죽었을 때'에 이벤트가 실행이 되는 방식으로 만들어주어야 한다. Custom Event 메뉴를 통해 이벤트를 만들어주자. 그 후 Spawn Actor from Class 노드를 생성해준다. 그러고 난 후 빨간색 박스 부분이 Class 메뉴인데 이를 ..
이벤트 디스패쳐란? 개발자 : 인터페이스일반인 : 상황에 따라 구현을 다르게 해줘야 하기 때문에 레벨에게 구현을 떠넘기는 것 *레벨 : 게임에서 일종의 스테이지라고 볼 수 있음.어떤 레벨이든 상관 없는 경우는 액터로 주로 만들고특정 스테이지에서만 하는 것들은 레벨의 이벤트그래프에서 만듬 액터 이벤트 그래프 창에서 이벤트 디스패처를 옆의 +버튼을 통해 만들어주시고해당 디스패쳐가 어떤 경우에 실행되어야 하는지를 알려줍니다. 미구현된 부분은 레벨에서 만들어지는데 레벨에 해당 액터를 선택한채로 이벤트 그래프에서 우클릭을 하게 되는 경우 해당 디스패쳐에 자동으로 접근이 가능해집니다. * 이벤트 디스패쳐의 장점은 레벨별로 다른 방식으로 해결해줘야 하는 경우 레벨 이벤트 그래프에서 각각 다르게 처리하면 된다는 점 입..
Vector2 pos = Camera.main.ScreenToWorldPoint(Input.mousePosition);RaycastHit2D hit = Physics2D.Raycast(pos, Vector2.zero); 다만 해당 함수가 실행되기 위해서 해당 게임오브젝트에 위와 같이 Physics2D - BoxCollider2D를 넣어줘야만 가능함. 까먹어서 20분정도 삽질했음 ㅠㅠ 참고문서 : http://gameculture.tistory.com/23
ERROR: No 32-bit compiler toolchain found in C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\cl.exe와 같이 에러가 뜨면서 프로젝트 생성이 안될 때,Visual Studio에서 C++이 제대로 설치되었나 확인해주세요. 요즘 Visual Studio는 처음부터 C++이 설치되어 있지 않아서 생기는 문제입니다. C++를 설치하시면 문제가 해결됩니다. Running D:/Program Files/Epic Games/UE_4.18/Engine/Binaries/DotNET/UnrealBuildTool.exe Test3D2 Development Win64 -project="C:/Users/허은경/Documents/Unr..