본문 바로가기

728x90

study/unity

(9)
[unity] #8. 화살 피하기 게임 - 2 - 화살 피하기 게임 화면 가운데 플레이어, 오른쪽 위에는 HP 게이지를 표시한다. 화살이 위에서 아래로 떨어지고 플레이어를 좌우 화살표 버튼을 움직여 화살을 피한다. 플레이어가 화살에 맞으면 HP 게이지가 줄어든다. 이전 글 이어서 시작 ! [unity] #8. 화살 피하기 게임 - 1 - 화살 피하기 게임 화면 가운데 플레이어, 오른쪽 위에는 HP 게이지를 표시한다. 화살이 위에서 아래로 떨어지고 플레이어를 좌우 화살표 버튼을 움직여 화살을 피한다. 플레이어가 화살에 맞으 mingxoxo-record.tistory.com - 프리팹과 공장 만들기 화살 오브젝트를 1초에 1개씩 만드는 공장(화살 제너레이터)을 만든다. 공장은 기계(제너레이터 스크립트)가 설계도(프리팹)대로 제품(인스턴스)를 생산하는 구..
[unity] #8. 화살 피하기 게임 - 1 - 화살 피하기 게임 화면 가운데 플레이어, 오른쪽 위에는 HP 게이지를 표시한다. 화살이 위에서 아래로 떨어지고 플레이어를 좌우 화살표 버튼을 움직여 화살을 피한다. 플레이어가 화살에 맞으면 HP 게이지가 줄어든다. - 게임 설계 오브젝트 : 플레이어, 화살, 배경, 이동 버튼, HP 게이지 1. 움직이는 오브젝트 : 플레이어, 화살 --> 컨트롤러 스크립트 필요 2. 게임을 플레이할 때 생성될 오브젝트 : 화살 --> 제너레이터 스크립트 필요 더보기 게임 도중에 오브젝트를 자동 생성하려면 생성을 담당할 공장이 필요하다. 공장을 가동시키기 위해서 제너레이터 스크립트가 필요하다. 화살 제너레이터 --> 화살을 1초에 1개씩 생성 3. 진행 상황을 보면서 UI를 갱신하는 감독 : HP 게이지 --> 감독 ..
[unity] #7. 자동차 멈추기 게임 - 자동차 멈추기 게임 게임이 시작되면 왼쪽 아래에 자동차가 표시된다. 화면을 스와이프하면 자동차가 달리기 시작하다 점차 감속하면서 멈춘다. 스와이프 길이를 조절해서 자동차 주행거리를 바꿀 수 있다. 화면 오른쪽 아래에는 깃발이 표시되고 화면 가운데에는 자동차와 깃발 사이의 거리가 표시된다. 스와이프(Swipe): 손가락을 댄 후, 일직선으로 드래그하는 것을 말한다. - 게임 설계 오브젝트 : 자동차(움직이는 오브젝트), 깃발, 지면, 거리를 표시하는 UI 자동차 -> 컨트롤러 스크립트 필요 자동차와 깃발 사이의 거리 UI -> 감독 스크립트 작성 필요 - 필요한 리소스 추가 지금까지 실행 결과 - 오브젝트 배치, 배경색 변경 - 자동차 스크립트 작성 자동차를 움직이는 방법을 쓴 대본(컨트롤러 스크립트)..
[unity] #6. 운세 룰렛 게임 설계 단계 1. 화면에 놓일 오브젝트를 모두 나열한다. 2. 오브젝트를 움직일 수 있는 컨트롤러 스크립트를 정한다. 더보기 1단계에서 나열한 오브젝트 중에서 움직이는 오브젝트를 찾는다. 움직이는 오브젝트에는 오브젝트의 움직임을 제어하는 대본이 필요하다. 오브젝트를 움직이는 대본을 이 책에서는 컨트롤러 스크립트로 칭한다. 3. 오브젝트를 자동으로 생성할 수 있는 제너레이터 스크립트를 정한다. 더보기 게임을 플레이할 때 생성될 오브젝트를 찾는다. 플레이어가 이동하거나 시간이 경과하면 출현하는 오브젝트이다. 게임을 플레이할 때 나타나는 오브젝트를 생성하는 스크립트를 이 책에서는 제너레이트 스크립트로 칭한다. 제너레이트 스크립트는 오브젝트를 생성하는 공장과 같다. 4. UI를 갱신할 수 있도록 감독 스크립..
[unity] #5. C# 스크립트 기초 - 클래스, 벡터 - 클래스 클래스는 함수와 변수를 모아둔 것이다. 플레이어의 스크립트를 작성한다고 가정했을 때, 플레이어에는 HP, MP 등 상태(변수)와 공격, 방어, 마법 등 액션(함수)등이 필요하다. 클래스를 사용하면 관계가 있는 변수와 함수를 하나로 합칠 수 있으므로 스크립트를 관리하기 쉽다. 멤버 변수 : 클래스에서 사용한 변수 멤버 메서드 : 클래스에서 사용한 메서드 class 클래스명{ 멤버 변수 선언; 멤버 메서드 구현; } Player라는 class를 구현 후 Player myPlayer;를 쓰면 myPlayer 변수를 만들 수 있다. 이 상태에서 myPlayer 변수의 상자 안은 비어있는 상태이다. int형의 num변수에 숫자를 대입하는 것처럼 myPlayer 변수에는 플레이어의 실체를 대입한다. 이 ..
[unity] #4. C# 스크립트 기초 - 배열, 함수 - 배열 : 동일한 특성을 가지며 일정한 규칙에 따라 몇몇 요소가 나열되어 있는 데이터 집합 new 키워드 : 스크립트에서는 만든다는 뜻에 가깝다. 배열을 만들려면 배열을 선언하고 바로 이어서 new를 이용해 배열에 필요한 크기를 지정해야 한다. 데이터타입[] 변수명 = new 데이터타입[크기]; 로 선언 및 할당해준다. //정수 배열 선언 int[] points; //배열 크기 지정 int[] points = new int[5]; //배열의 요소에 값을 대입할 때 간단히 int[] array = {2, 10, 5, 15, 3}; 배열의 길이(요소 수)는 배열형의 변수명.Length를 써서 배열의 길이를 얻을 수 있다. using System.Collections; using System.Collecti..
[unity] #3. 스크립트 개념 스크립트는 게임에서 오브젝트를 움직이게 하는 대본이다. 스크립트에 작성한 움직임을 오브젝트에 적용하려면 게임 오브젝트와 연결해야 한다. 예를 들어 캐릭터 움직이는 스크립트는 캐릭터 몸체 오브젝트와 연결해야 동작한다. 이처럼 게임 오브젝트에 움직이는 스크립트를 적용해야 오브젝트가 제대로 동작한다. - 스크립트 생성 및 연결해보기 2D로 설정한 후 프로젝트를 생성해준다. 에디터가 실행되면 Project창에서 마우스 오른쪽 버튼을 누른뒤 Create -> C# Script를 선택한다. 작성한 스크립트를 적용할 게임 오브젝트를 추가해준다. Hierarchy창에서 마우스 오른쪽 버튼을 누른뒤 Create Empty를 선택한다. 여기서 작성한 게임 오브젝트는 속이 빈 상태이므로 어떠한 기능도 없다. 이러한 게임 오..
[unity] #2. 유니티 기능 알아보기 유니티 에디터를 실행하면 다음 화면이 나타난다. 화면 중앙에 있는 Scene 뷰에 태양과 카메라 아이콘이 있다. 이 아이콘은 게임 전체를 비추는 라이트와 게임 전체를 비추는 카메라 오브젝트이다. Hierarchy 창에는 이러한 오브젝트에 대응하는 목록이 나타난다. - 정육면체 추가하기 씬 내의 오브젝트 위치는 X, Y, Z라는 좌표 값 세개를 써서 나타낸다. 현재 정육면체의 좌표는 0,0,0이고 카메라의 좌표는 0,1,-10이다. - 게임 실행 실행버튼을 누르면 Scene -> Game 뷰로 바뀐다. Game 뷰에는 Scene 뷰에 배치된 Main camera가 촬영하고 있는 영상이 나타난다. 실행버튼을 한번 더 클릭하면 게임이 중지되고 Scene 뷰로 돌아간다. 카메라로 촬영한 이미지가 게임 실행 화면..

반응형