199
https://4.199.kr/

언리얼3D게임 만들기! 초보도 OKAY! 🔥🕹️

계절이 변화하는 만큼 풍경도 눈의 띄게 바뀌는 요즘입니다. 지나는 길에 풍경을 만끽하는 여유가 깃드시길 바라겠습니다.


 

언리얼엔진4에서는 게임개발자들이 자신만의 독창적인 콘텐츠를 만들어낼 수 있도록 다양한 툴과 리소스들을 제공하고있어요. 특히나 최근엔 모바일게임시장에서도 언리얼엔진4를 이용해서 개발하는 사례가 늘고있는데요~ 이번 시간에는 언리얼엔진4를 이용해서 간단한 슈팅게임을 만들어보도록 하겠습니다.

슈팅게임이란 무엇인가요?
슈팅게임은 말 그대로 총을 쏘는 게임입니다. 우리가 어렸을 때 많이 했던 1945같은 비행기 대전게임 혹은 포트리스 같은 탱크대전게임 등이 대표적인 슈팅게임이죠. 물론 이밖에도 여러가지 종류의 슈팅게임이 존재하는데요, 간단하게 설명하면 플레이어가 조작하는 캐릭터가 적에게 총알을 쏴서 맞추는 게임이에요.

그럼 어떤 방식으로 게임을 만드나요?
일단 먼저 맵을 제작해야되는데요, 아래 그림처럼 바닥 오브젝트를 만들고 배경색을 설정해줍니다. 그리고 나서 주인공 캐릭터를 생성하기 위해 Character 컴포넌트를 가져옵니다. (아래그림 참조)
Character 컴포넌트 안에는 무기(총알) 및 체력바등 각종 애니메이션 효과를 넣을 수 있는 Customize 컴포넌트가 들어있습니다. 또한 이렇게 만든 캐릭터를 움직일 수 있게 해주는 Movement 컴포넌트도 같이 가져올 수 있죠. 이제 본격적으로 게임을 만들기 위해서 스크립트를 만들어야 되는데요, 이때 쓰이는 언어가 바로 C++ 입니다. 하지만 처음부터 C++언어를 배우는건 쉽지 않기 때문에 유니티 엔진 자체에서 제공하는 Script Editor를 활용하도록 하겠습니다.

스크립트 에디터란 무엇인가요?
유니티 엔진자체에서 제공하는 스크립터 편집기로 코드를 쉽게 입력할 수 있고 디버깅또한 편리하게 할 수 있답니다. 우선 UnityEngine.cs 파일을 열어보면 위 사진처럼 구성되어있는걸 알 수 있는데요, 왼쪽 상단에 보이는 MainWindow라는 이름의 클래스를 상속받아서 오른쪽 하단에 위치한 GameObjects 라는 클래스를 만들었습니다. 즉, 지금부터는 저 GameObjects클래스를 가지고 게임을 만드는 거죠.
이제 아까 가져온 Character 컴포넌트를 수정해볼텐데요, 현재 상태로는 아무런 동작도 하지 않는 빈 객체이기 때문에 void Update() 함수안에 다음과 같이 변수를 선언해주고 값을 넣어주면 됩니다.
character.GetComponent<Rigidbody>().AddForce(Vector3.forward * 10f);
이렇게 하면 앞으로 이동하면서 적을 공격하겠죠? 자 그러면 마지막으로 적의 움직임을 구현해볼까요? 적은 미사일을 발사했을 때 일정시간동안 움직이지 않고 가만히 있어야 합니다. 그러기 위해서는 충돌처리를 해야되겠죠? 그래서 일단 Vector3.up이라는 벡터값을 만들어서 초기화 시켜준 후 0.5초 동안 대기시켜주었습니다. 그런다음 다시 AddForce함수를 호출해서 미사일을 발사했는데요, 만약 화면 밖으로 나가면 폭발하도록 했습니다. 어때요 참 쉽죠?

이번 시간에는 간단히 슈팅게임을 만들어보았는데요, 어떠셨나요? 어렵지 않으셨죠? 여러분도 충분히 하실 수 있으니 겁먹지 말고 도전해보세요!


 

유튜브 수익창출 1년동안 4000시간 못채우면, 리셋? 이 말이 맞는 건가요?
고1 내신 5등급 부산대, 교대 갈 수 있나요? 고1 2학기 중간고사가 막 끝났습니다. 1학기 때 평균 5, 2학기 중간도 5입니다
취업성공수당 1차 신청 질문 제가 인턴 6개월 계약직이라 취업성공수당 대상이라고 안내를 받았었습니다
롯데월드 다크문 교복을 패키지가 아니여도 현장에서 대여가 가능한가요?
서울 롯데월드 좀비 요즘에는 좀비런 같은 거 안하나요?
쿠팡 와우 회원 쿠폰 제가 12000원 쿠폰 받앗는데 가입하고 이거 사용하고 해지하면 돈 다시 환불되나요?