안녕하세요 유랑입니다. 오늘부터 VR에 대해 알아보겠습니다.예제와 실습을 통해 차근차근 진행할테니 부족한 부분있으면 댓글 부탁드릴게요^^ 1. VR(Virtual Reality) 가상현실이란? '실제와 유사하지만 실제가 아닌 인공 환경'을 의미한다.영화 레디플레이원을 보면 주인공이 가상현실속 캐릭터가 되어 싸우는 장면이 묘사된다.이렇듯 단순히 가상의 공간을 구현하는 것을 넘어서서 사용자의 오감에 직접적으로 작용하여 실제에 근접한 공간적, 시각적인 체험을 가능케 하는 기술이 VR의 진정한 목표이며 기능이다. 2. VR기기에 대해 알아보기 2-1) 구글 카드보드 구글에서 출시한 간이 VR제품으로 도면이 공개되어 있고, 다이소에서 5천원 정도의 가격이라 쉽게 접할 수 있다.비싼 제품들에 비하면 기능이 약소하지..
안녕하세요 유랑입니다. 타일맵을 이용한 2D 게임제작을 진행해 보도록 하겠습니다.지난시간에는 타일맵 생성과 팔레트에 대해서 알아보았습니다.이번시간에는 타일맵의 충돌처리 방법에 대해 배워보겠습니다. 1. 타일맵 충돌처리 1-1) 배경 생성 캐릭릭터가 점프할 수 있도록, 바닥을 만들어 보겠습니다.Edit를 체크해 주면 타일을들 지울수 있습니다.저번 시간에 생성했던 타일들을 지우고, Grass Tile들을 받아주세요.Grass Tile도 마찬가지로 Multiple을 통해서 타일을 나눠주겠습니다.해당 타일의 크기가 64 X 64이기 때문에 Pixels Per Unit을 다음과 같이 설정하였습니다. 타일들을 팔레트에 드래그앤드랍을 통해서 옮겨 주세요. Edit를 체크해 주고 지우개를 이용해 해당 타일을 지울 수 ..
안녕하세요 유랑입니다. 타일맵을 이용해서 간단한 2D 게임을 제작해 보겠습니다.잘 따라 와주세요^^ 1. 타일맵 유니티에서도 타일맵 기능을 이용해서 게임 제작이 가능합니다.유니티 자체 내에서 스프라이트들을 이용해서 배경, 벽 등을 쉽게 구현 가능한거죠. 2. 타일맵 다루기 2-1) 프로젝트 생성 프로젝트 이름과 저장경로를 설정하였으면 Template을 2D로 설정해 줍시다.물론 3D로 셋팅해도 제작이 가능하지만, 2D 게임에 맞게 주변 기능들을 기본적으로 셋팅해 주더라구요.그래서 전 2D로 설정 후 프로젝트를 진행하겠습니다. 프로젝트를 생성 후 씬뷰를 확인하면 2D로 체크가 되어있을거에요.체크해제를 하면 3D로 돌아가니 혹시나 처음에 프로젝트 생성을 잘못하시더라도 수정이 가능합니다. GameObject나..
안녕하세요 유랑입니다. 지난시간에 배운 휴머노이드를 가지고 유한상태머신을 구현해 보겠습니다.인공지능 AI를 다루는 게임에서는 필수적인 요소랍니다.시작하겠습니다. 1.유한상태머신 적 캐릭터가 플레이어를 찾거나 때리거나, 사망할 때의 상태 머신들을 일컬어서 유한상태머신이라고합니다.이름 그대로 상태가 유한하다는 뜻이겠죠? 앞으로 Animator에서 구성한 상태들을 가지고 캐릭터의 상태를 설정해 주겠습니다. 1-1) 애니메이터 Run, Idle, Attack 이렇게 세 개의 상태머신들을 가지고 유한상태머신을 구현해 보겠습니다.원하는 공격 애니메이션을 추가하고 이름을 다음과 같이 바꿔주세요. 각 상태(Run, Idle, Attack)는 서로 연결되어야 의미가 있습니다.게임이 시작되면 상태가 Idle로 바뀌고 뛰거..
안녕하세요 유랑입니다. 오늘은 새롭게 유니티짱을 이용해 휴머노이드에 대해 배워보겠습니다.레거시와는 다른 메카님 휴머노이드는 무엇일까 알아보겠습니다. 1. 휴머노이드 메카님 애니메이션 타입인 휴머노이드는 이름 그대로 사람모양의 본을 이용해 동작을 구현합니다.장점은 15개 이상의 본을 가지고 있으면 다양한 애니메이션으로 내 캐릭터를 동작시킬 수 있다는 점입니다.메카님은 제너릭과 휴머노이드가 있는데, 제너릭은 비인간형 모델이라고 생각하시면 됩니다. 1-1) 휴머노이드 설정 유니티 공식 캐릭터 유니티짱을 받아보겠습니다. 단축키 Ctrl +9를 이용하거나 툴바 Window => General => Asset Store를 실행시켜 다운받아 주세요. 캐릭터는 무료이고 이름은 다음과 같이 검색하시면 되겠습니다. 받아온..
안녕하세요 유랑입니다. 간단하게 시작했지만 점점 fps 게임 모양새를 갖추고 있는 게임이 끝이 보이네요ㅎㅎ가능하면 전혀 다른 객체를 가지고 글을 쓰고 싶었으나 쓸 기능들을 추가하다보니이렇게 온것 같습니다.지난시간에는 레거시 애니메이션을 추가해 캐릭터를 움직여 보았는데요.이번에는 총을 장착해 쏘는 방법까지 진행하도록 하겠습니다. 1. 총알 만들기 총알을 발사하려면 많은 준비가 필요합니다.천천히 따라해 보세요. 1-1) 총 장착해보기 무료로 배포되고 있는 총을 구해서 불러와 보겠습니다.저는 지난시간에 있어 다운받은 파일을 이용하겠습니다. 사용할 무기를 선택 후 드래그앤 드랍을 통해서 캐릭터의 Rweaponholder 자식으로 넣어줍니다.이 모델은 친절하게도 총이 장착할 부분을 만들어 놓았지만, 대부분 없으니..
안녕하세요 유랑입니다. 지난 시간에 이어서 캐릭터의 이동을 구현할텐데, 이번에는 애니메이션을 추가해보겠습니다.유니티에서는 레거시 애니메이션과 메카님 애니메이션이 존재합니다.* 레거시는 3D Animation Tool을 이용* 메카님은 모션 캡처애니메이션을 이용 1. 레거시 애니메이션 3D 모델을 불러와 이동시켜 보고 애니메이션을 적용하는 단계까지 왔습니다.레거시 애니메이션은 휴머노이드에 비해 잘 안쓰이지만, 어떤 방식인지 알아보도록 하겠습니다. 1-1) 애니메이션 불러오기 애니메이션을 불러와 적용해 보도록 하겠습니다.Import하여 추가시켜 주세요.여기 처음 오신분들은 05.3D 모델편을 참고해주세요^^ 1-2) 애니메이션 세팅 플레이어 오브젝트를 선택하면 인스펙터뷰에서 다음 항목이 보입니다.Rig =>..
안녕하세요 유랑입니다. 드디어 캐릭터를 이동시켜 보겠습니다.이전 시간에 만든 지형과 캐릭터를 사용할테니 참고하셔서 따라와주세요.시작합니다. 1. 캐릭터 이동 캐릭터의 이동에 필요한 코드를 작성해 보겠습니다.코드는 C#스크립트에서 작성이 가능하며,그에 따른 부가 설정들도 배워보겠습니다. 1-1) 스크립트 작성 우선 스크립트 폴더 위에 마우스 커서를 올려놓고, 마우스 우측버튼을 클릭합니다.그러면 다음과 같은 화면이 보이실텐데 C# Script를 선택하고 이름을 PlayerController로 변경합니다.이 때 중요한건 실수로 이름을 다르게 바꿨을 경우, 프로젝트뷰에서 파일의 이름을 변경하고, 스크립트내에서도 클래스명을 동일하게 변경하셔야 됩니다. PlayerController스크립트가 생성되면 다음과 같은 ..
안녕하세요 유랑입니다. 오늘은 3D 모델을 불러와 캐릭터와 벽 등을 구성해 보겠습니다. 1. 3D 모델 불러오기 이동에 필요한 캐릭터, 스크립트 작성, 옵션 등에 대해 설명드리겠습니다.잘 따라와주세요^^ 1-1) 캐릭터 불러오기 캐릭터 모델링을 가져옵니다.저는 절대강좌에서 제공하는 캐릭터를 모델로 불러오겠습니다.https://github.com/IndieGameMaker/UnityBook단, 상업적용으로는 쓰시면 안됩니다.파일을 클릭 후 드래그앤 드랍이나, 실행시키면 다음과 같은 목록이 뜨는데 Import 시켜주면 됩니다. 늠름한 캐릭터가 나왔네요. 근데 뭔가 허전하죠?바닥도 만들어 보겠습니다. 1-2) 바닥 만들기 이번에는 바닥에 쓰일 텍스처를 추가하고, Max Size를 다음과 같이 변경하여 해상도를..
안녕하세요 유랑입니다. 로그라이크2D따라하기 진행하도록 하겠습니다.지난 시간에는 아이템과 배경에 대해 다뤄보았는데요.이번 시간에는 스크립트를 이용해 게임을 만들어 보겠습니다. 1. 스크립트 만들기 1-1) BoardManager 스크립트 보드 매니저는 게임 스테이지(레벨)가 바뀔 때마다 게임 지형과 아이템 등을 바꿔주는 역할을 합니다. 스크립트를 생성하고, 이름을 BoardManager로 설정하자. 다음과 같이 코드를 작성하자. 1-2) GameManager 스크립트 BoardManager에게 일을 시킬 수 있는 GameManager를 만들어보자.GameManager 스크립트를 생성하고, 다음과 같이 코드를 작성하자. 빈 오브젝트 생성 후 Game Manager로 이름을 변경하고 BoardManager,..
안녕하세요 유랑입니다. 로그라이크2D따라하기 진행하도록 하겠습니다.지난 시간에는 캐릭터와 적을 만들어서 동작하는것까지 시켜보았는데요.이번 시간에는 아이템과 배경에 대해 다뤄보겠습니다. 1. 바닥 만들기 1-1) Floor1 오브젝트 만들기 GameObject -> Create Empty를 선택 후 생성하고, Sprite Renderer를 넣어주자.그리고 밑에 보이는 그림처럼 Sprite에는 Scavengers_SpriteSheet_32와 Sorting Layer는 Floor를 설정해 주자. 1-2) Floor1 프리팹 만들기 Floor1 오브젝트의 설정이 끝나면 드래그앤 드랍을 이용해 프리팹을 만들어보자. 1-3) Floor2 ~ 8 오브젝트 만들기 Floor1 프리팹을 이용해 Floor2 ~ 8까지의 ..
안녕하세요 유랑입니다. 오늘부터 Unity3d 응용편을 진행하겠습니다.유니티의 각종 기능들을 이용해서 간단하게 게임을 만들어 보겠습니다. 1. 로그라이크 오늘 배울 내용은 로그라이크 게임입니다.로그라이크는 과거에 아스키 부호를 이용한 게임으로 시작하였는데,대부분 한 번 죽으면 끝나는 시스템을 갖고있습니다.대표적으로 굶지마, 던그리드 같은 게임이 있는데 점점 특색적인 모습들이 추가되는것 같아요. 2. 캐릭터 만들기 2-1) 프로젝트 생성 프로젝트 이름과 위치를 설정 후 2D를 선택 후 프로젝트를 만들어 줍니다. 2-2) 프로젝트 설정 프로젝트를 생성하면 다음과 같이 보일거에요.Z축이 없어져 2D 화면이 나옵니다.여기서 씬뷰에 있는 선택된 2D를 해제하면 다시 3D로 보이게됩니다.단순히 화면이 보이는 차이니..