3. Unity
강력한 asset스토어의 지원을 받을 수 있다.
다양한 플랫폼으로 포팅이 가능하다.
자바스크립트, C# 등의 언어로 쉽게 스크립트를 작성할 수 있다.
무료버전이 점점 강력해지고 있다.
프로버전도 다른 상용 엔진들에 비해 저렴하다.
요즘 대세다 → 배울 곳이 많다.
4. Unity 화면 구성
Scene view
Game view
Hierarchy
view
Project
view
inspector
view
5. Scene view
현재 scene의 상태를 시각적으로 확인하기 위한 화면
< object를 drag & drop으로 이동시킨 모습 >
우측 상단 핸들로 scene을 특정 축에서 바라볼 수 있고
좌측 상단에 위치한 버튼들을 이용하여,
물체를 선택 및 이동, 회전, 크기변경 할 수 있다.
Scene view
6. Game view
Game view
게임을 Preview하기 위한 화면
편집 중인 오브젝트가 실제로 어떻게 보이는지 확
인할 수 있다.
위 버튼들을 사용하여 화면상에서 실제로 게임을
플레이 해볼 수 있다.
Game view 바로 위에 버튼들을 사용하면 화면 비율 및 크기, 리소스 현황 object상
태 등을 알 수 있다.
< Gizmos 적용 전 후 >
7. Hierarchy view
Hierarchy
view
Scene에 배치된 Object들을 화면에 표시하는 화면
Object들의 계층 구조가 어떻게 되어있는지 확인 가능
Create를 통해서 새로운 Object를 추가할 수 있다.
< Create → Cube 로 cube object를 생성한 모습 >
8. Project view
Project에 포함된 data(asset)들을 표시한다.
이 뷰의 내용은 실제 project 폴더 하위의 asset 폴더 내용을 그대
로 반영한다.
Create를 이용해서 새로운 속성이나 script들을 추가할 수 있다.
Project
view
< Create → Javascript로 script 파일을 생성했다. >
10. MonoDevelop
Unity 내장 Script 편집기
javascript, C#, boo 등의 언어를 지원하며 개별 언어에 대한 지식이 없더라도 쉽게
사용할 수 있도록 되어있다.
start() function에 초기화할 부분들을 넣고
update() function에 매 frame마다 반복 실행될 내용을 작성하여 사용한다.
< Script파일 double-click 으로 Monodevelop 을 실행, script를 편집할 수 있다. >
11. Build & Run
작성한 scene들을 Platform에 맞춰 빌드할 수 있
다.
standalone을 선택할 경우 현재 OS에 맞게 exe
파일 등이 생성되고, web player를 선택한 경우에
는 html 형식으로 생성되어 web에서 바로 플레이
할 수 있다.
http://msprecious.com/ex03/ex03.html
android 등의 platform으로 porting할 때는
android-sdk등이 설치된 경로를 지정해 주어야
한다.
< Web player 선택 시 출력 파일 >
12. Asset Store
model, script, tool, audio 등 게임 제작에 필요한 각종 resource들을 구할 수 있는
일종의 마켓으로 다양한 무료 asset 이 있고, steam처럼 가끔 세일도 함.
상단 메뉴바 → Window → Asset store
맘에 드는 asset 선택 후 download 클릭(유료 에셋의 경우 결제),
download완료 후 import버튼으로 현재 project에 삽입 가능
13. FSM
Finite State Machine
컴퓨터 공학/ 수학 쪽에서 오래 전부터 널리 사용해오던 개념.
현재상태, 입력, 출력상태, 전이함수 4가지 요소로 나뉘며,
현재 상태(state)와 입력(action)에 따른
전이함수(event)로 출력상태(state)를 결정한다.
게임에서는 몹 AI 처리 등에 활용하고 있다.
(모든 경우에 대해 if ~ else 로 처리하는 것은 한계가 있으므로)
http://blog.naver.com/qkfkf123?Redirect=Log&logNo=60190218851
http://gameai.net/Article/FSM_Monster/FSM_Monster.htm
14. PlayMaker 玩
FSM 기반 visual scripting tool
state 생성 후 지정한 action(키보드, 마우스, 다른 object의 상태 변화 등등)발생 시
특정 event를 호출하여 해당 event가 가리키는 다른 상태로 state를 전이 시킨다.
15. PlayMaker 玩
import @asset store
Playmaker import
open playmaker @project view
Playmaker double click
19. PlayMaker 玩
set state @playmaker → State
State에 추가한 action의
세부사항을 설정.
일부 action들은 send event로
지정한 event를 발생시킨다.
set event @playmaker view
drag “LeftClick” event to “State2”
20. PlayMaker 玩
play FSM @playmaker → State
아래 ▶ 버튼으로 FSM 테스트 실행
이런 식으로 state와 action, event등을 늘려가며
동작하는 script를 쉽게 만들 수 있다.