유니티 강좌2014. 4. 9. 06:00

(5) NGUI 기초 실습


먼저 'Chapter 2' 프로젝트에서 'Practice NGUI' Scene을 하나 생성합니다.

그리고 Hierarchy창에서 Main Camera를 지웁니다. (NGUI에서 2D UI Root을 생성했을 때 자동으로 생성되는 2D화면 용 카메라를 사용할 예정.)

그리고 NGUI > Create a New UI 메뉴를 클릭해서 UI Tool 창을 엽니다.


[그림 4-5]


UI Tool 창이 열렸으면 거기에서 기본으로 설정되어 있는 값( Layer = Default, Camera = Simple 2D) 그대로 Create Your UI 버튼을 눌러서 기본적인 UI Root를 Hierarchy에 생성합니다.

   

[그림 4-6]


그러면 Hierarchy창에 다음과 같이 4개의 오브젝트가 생성되어 있는 것을 볼 수 있습니다.


[그림 4-7]


다음으로 메뉴 NGUI > Create a Widget 메뉴를 클릭해서 Widget Tool창을 엽니다.


[그림 4-8]


[그림 4-9]


Widget 을 만들기 위해서는 먼저 Image Map. 즉, Atlas와 Font가 필요합니다.

이번 순서에서는 NGUI에서 기본으로 제공하는 Atlas와 Font를 사용해보도록 하겠습니다.


[그림 4-10]


[그림 4-10]에서와 같이 Project창에서 NGUI > Examples > Atlases > SciFi 폴더를 열어서 그 안에 있는 SciFi Atlas Prefab을 클릭 & 드래깅하여 Widget Tool창의 Atlas에 집어 넣습니다.

그리고 마찬가지로 Font 또한 SciFi Font –Normal을 클릭 & 드래깅하여 Widget Tool창의 Font에 집어 넣습니다.

   

Atlas와 Font가 지정되면, Widget이 생성 가능하다는 의미로 Add 버튼에 녹색 불이 들어옵니다.

우선 Template을 Button으로 지정한 뒤에 Add To 버튼을 눌러서 Panel의 하위 객체로 버튼을 하나 만들겠습니다.


[그림 4-11]


버튼 생성에 성공했다면, 아래의 그림과 같이 Scene창과 Game창에 버튼이 생성된 것을 확인할 수 있습니다.


[그림 4-12]


※ Widget을 생성할 때, Add To 버튼 옆에 있는 객체를 주목하시길 바랍니다.

위의 과정에서는 결과적으로 Add To [Panel]. 즉, Panel 오브젝트의 하위 객체로 생성이 되었지만, 그 이후로 Widget을 생성할 때, Add To 버튼 옆에 있는 객체를 확인하지 않으면, 버튼 안에 버튼을 또 넣는 등의 실수를 하게 됩니다.

   

다음으로는 본격적으로 UI를 더 만들어 보기에 앞서, UI Root (2D), Camera, Anchor, Panel, 이 4가지 오브젝트들의 중요한 기능을 짚어보도록 하겠습니다.

   

1) UI Root (2D)


오브젝트를 클릭해보면 UIRoot (Script)라는 컴포넌트가 들어가 있는 것을 확인할 수 있습니다.


[그림 4-13]


컴포넌트의 내용을 살펴보면 UIRoot이라는 Script 파일이 연결되어 있고 그 아래로 Automatic 선택 여부 항목과 Manual Height라는 수치가 보입니다.

   

Manual Height는 실제로 Out Put이 이루어질 Game 화면의 높이 해상도가 현재 얼마의 값인지 표시해주는 곳입니다.

   

Automatic은 실제로 Out Put이 이루어질 Game 화면의 높이 해상도에 따라서 변화될 수 있는 내부에 있는 UI 사이즈를 개발자가 셋팅한 사이즈가 시각적으로 항상 같은 사이즈 일 수 있도록 만들어준다는 의미입니다.

반대의 뜻으로 해석하자면, Automatic이 선택되어 있지 않으면, 화면의 높이 해상도가 바뀌면 안에 들어있는 UI들의 사이즈들도 변경된다는 의미입니다.

   

간단히 테스트를 한 번 해보겠습니다.

Manual Height 수치를 보면서 Game창의 높이 해상도를 낮게 맞춘 뒤에AutoMatic 체크를 풀고 화면 해상도를 높게 맞춰보면, 버튼의 크기가 커지는 것을 볼 수 있습니다.

반면에 AutoMatic을 체크 한 상태에서 화면의 높이를 변경시켜도 버튼의 크기는 변하지 않고 일정한 것을 볼 수 있습니다.


[그림 4-14]


(Height값에 따른 버튼 크기 변화)

   

이러한 화면의 높이 해상도에 따른 UI 사이즈 조절이 UIRoot (Script)오브젝트에서 대표적으로 하는 기능입니다.

   

다음 장에서는 Camera에 대해서 알아보겠습니다.



스마트 앱 전문 교육기관 스마트아카데미가 추천하는 안드로이드앱(1)

스마트 폰 삶 속으로 들어오다

정부 벤처창업지원 통해 경제 활성화 나선다

3D프린팅과 스마트네트워크는 우리생활에 어떤 영향을 미칠까?

스마트안경 웨어러블 대세되나 - 스마트아카데미

한국의 구글 핸드스튜디오 안준희 대표 - 스마트아카데미

한국의 구글 핸드스튜디오 - 스마트아카데미 (2)


   

Posted by 알 수 없는 사용자
유니티 강좌2014. 4. 8. 06:00

(4) NGUI 구성


1) Anchor

화면에 구성되는 GUI 포지션의 제로 좌표(x=0, y=0, z=0) 값의 위치를 카메라를 기준으로 어디로 할 것인지 지정해줄 수 있는 역할을 합니다.

   

예를 들어, 일반적으로 2D UI구성을 할 때는 카메라를 기준으로 좌측 상단 모서리에 제로 좌표가 있어야 작업을 하기 편할 것이기 때문에, Anchor에서 카메라상 보이는 좌측 상단 모서리를 제로 좌표로 사용하도록 지정할 수 있습니다.

   

게임이나 어플을 개발하다 보면, 메인 메뉴 버튼이나 게이지바 같은 것들이 화면의 크기와 관계없이 화면비율상 특정 위치(ex. 메인 메뉴 버튼은 화면 크기 상관없이 항상 우측아래)에 있어야 하는 경우가 많이 있는데, Anchor를 잘 사용하면 이러한 문제를 쉽게 해결할 수 있습니다.

   

2) Panel

화면을 구성하는 하나의 판입니다.

Panel에는 Sprite(이미지), Label(텍스트), Button 등 다양한 Widget들을 배치할 수 있고, 그렇게 배치됨으로써 Widget들은 Panel의 좌표를 제로 좌표로 하여 하나의 그룹으로 형성될 수 있습니다.

   

3) Widget

화면에 실질적으로 보이는 Contents들입니다.

그림, 문장, 버튼 등 다양하게 화면에 출력되는 내용들 모두를 일컫는 말입니다.

   

4) Atlas

사용할 그림들의 집합.

개발된 게임이나 앱의 이미지 리소스들을 보면, 리소스 최적화를 하기 위해서 버튼의 이미지, 스크롤 바, 팝업창의 줄무늬 등 다양한 이미지들을 모아서 하나의 그림 파일에 오밀조밀하게 배치하여 둔 것을 볼 수 있습니다.

이것이 바로 Atlas 입니다.

   

원래 Atlas를 일반적으로 제작하기 위해서는 전문 UI디자이너가 필요합니다.

포토샵과 같은 그래픽 툴을 이용하여, Atlas의 크기를 정하고 그 안에 다양한 UI이미지들을 배치한 뒤에 이미지들의 하나, 하나의 Rect값(좌표 값과 크기 값)을 모두 list화 시켜서 프로그래머와 공유하는 작업을 해야 하기 때문입니다.

그리고 원하는 UI 이미지를 화면에 배치하기 위해서는 프로그래머가 Rect List를 전달 받아서 해당 이미지를 Atlas에서 불러와, 화면에서 조립하여 보여주는 작업을 해야 합니다.

   

NGUI에서는 Atlas를 구성하고 싶은 이미지들을 선택하여 클릭 몇 번을 통해 간단히 Atlas를 구성할 수 있으며, 화면에 배치하는 것 또한 자동으로 구성되는 Rect List를 클릭만 하여 쉽게 불러다 사용할 수 있습니다.

   

5) Font

사용할 글씨체입니다.

유니티 자체에서 GUI Font 기능을 제공하고 있긴 하지만, NGUI에서는 그래픽적, 기능적으로 그보다 더 많은 퍼포먼스를 지원하고 있으며, Font Maker를 통해서 자신이 원하는 폰트를 다채롭게 사용할 수 있습니다.

   

다음 장에서는 NGUI 기초 실습에 대해서 알아보겠습니다.



스마트 아카데미 창의인재 교육 6개월 과정 등록안 -스마트 앱 전문 교육기관

스마트 앱 전문 교육기관 스마트아카데미가 추천하는 안드로이드앱(1)

스마트 폰 삶 속으로 들어오다

정부 벤처창업지원 통해 경제 활성화 나선다

한국의 구글 핸드스튜디오 안준희 대표 - 스마트아카데미

한국의 구글 핸드스튜디오 - 스마트아카데미 (2)

ICT란 무엇인가 - 스마트 아카데미

차량에서 아이폰을 쓴다면 - 스마트 아카데미

국내기업 개인정보유출 정리 - 스마트 아카데미

   

Posted by 알 수 없는 사용자
ICT Trend2014. 4. 5. 09:56

PC로 시작한 스마트 교육도 모바일로 환경이 바뀌는 것 같습니다. 모바일과 스마트기기는 과연 교육 효과를 높여줄까? 분명 그렇게 판단했으니 그 복잡한 프로그램이 스마트폰과 태블릿으로 넘어오는 것일게입니다.

 

 

태블릿 UX에 대한 리서치가 아직 더 많이 필요하다고 입을 모읍니다.  아직 태블릿은 나온 지 그리 오래된 플랫폼이 아니라고 합니다. 처음부터 태블릿을 받아들여 온 아이들과, PC를 쓰던 경험에서 태블릿으로 옮긴 성인이 접근하는 방식은 분명 다를 겁니다. 특히 그게 교육 영역이라면 콘텐츠 개발에 연구가 더 많이 필요할 겁니다.”

 

정작 궁금한 것은 태블릿과 PC가 과연 어린이들의 공부에 도움이 될 것이냐는 점입니다. 아직도 학교와 교육 공간에서 스마트 기기를 쓰는 것에 대해 학부모들의 거부감이 남아 있습니다. ‘중독’을 염려하는 시선도 여전합니다. 공부를 핑계로 게임이나 인터넷을 써본 경험들이 다 있을 것이다. 이를 어디까지 받아들여야 할까요?

 

 

 

 

“중독 문제는 중요한 사회적 이슈입니다. 문제가 있다는 것은 알겠지만 왜 이런 상황인지 판단하는 건 중요한 일입니다. 돌아보면 라디오가 생겼을 때도 마찬가지였고, TV와 인터넷도 똑같은 논란을 불러 일으켰습니다. 하지만 되돌아보면 이런 것들이 우리 세상을 바꿔놓았습니다. 분명히 단점이나 부작용이 따르겠지만 장점이 있기 때문에 변화가 시작된 것입니다.

 

어떤 것이든 새로운 시스템이 등장하면 부작용이 뒤따르지만 많은 사람들이 받아들이는 흐름을 거스를 수는 없다는 것입니다. 중독이 걱정이라면 적절한 대처에 대해 고민해야 할 것입니다. 아이패드를 통해 더 많은 사람들이 영어를 편하게 공부하고 있는데 중독이 걱정된다고 해서 막을 게 아니라 더 잘 쓸 수 있도록 긍정적인 부분을 유도하는 게 필요합니다. 인터넷만 봐도 중독성도 있고, 보면 안되는 정보도 많습니다. 하지만 이를 안전하게 잘 쓸 수 있도록 사회적으로 고민하면서 훌륭한 매체가 됐습니다.

 

 

 

스티븐 조 대표는 중독 같은 자극적인 단어보다는 잘 이용할 수 있는 방법에 대한 고민이 필요하다고 강조했다. 이야기 말미에 나온 이야기가 이 긴 이야기를 단숨에 정리해 줬습니다. 흐름을 막기는 어려울 겁니다. 분명 무시할 수 없는 부정적 이유도 있겠지만 그 누구도 한번 오기 시작한 미래와 싸울 수는 없습니다.

 

 

차량에서 아이폰을 쓴다면 - 스마트 아카데미

비주얼 프로그래밍이란? - 프로그래밍의 구조

국내기업 개인정보유출 정리 - 스마트 아카데미

비주얼 프로그래밍이란? - 플레이메이커의 설치

모바일게임 플랫폼 시장 춘추전국시대 - 스마트아카데미

비주얼 프로그래밍이란? - Finite State Machine(FSM)

스타트업 얼라이언스 출범 - 스마트 아카데미

 

 

 

 

 

Posted by 알 수 없는 사용자
ICT Trend2014. 4. 2. 09:41

영어 공부는 한국 사람이라면 대부분이 겪는 공통된 숙제이자 고민거리입니다. 연초만 되면 가장 많이 올라오는 ‘신년계획’ 주제이기도 합니다. 하지만 여전히 PC나 태블릿으로 공부하는 것에 대해서는 반신반의하는 것이 사실입니다.

사회 일각에서는  스마트폰과 태블릿에는 ‘중독’이라는 꼬리표가 늘 따라다니지만 다른 한쪽에서는 터치스크린을 이용한 교육용 앱 시장이 급성장하고 있습니다.  로제타스톤코리아의 스티븐 조 대표를 만나 태블릿을 이용한 온·오프라인 학습 현장의 이야기를 들어봤습니다.

 

 

 

 

스티븐 조 대표는 아직까지 국내에선 컴퓨터나 태블릿 앞에 앉아서 공부한다는 것에 대해 보수적이라는 것이  느끼는 현실이라고 합니다. 종이책을 봐야 하고, 직접 선생님이 과정을 지도하는 등 실제 오프라인에서 교육이 일어나길 바라는 수요가 아직 많다는 것입니다. 그래서 전세계에서 유일하게 한국에서만 오프라인 학습 환경을 만들었다고 합니다.

 

“그럼 오프라인에서는 뭔가 다른 교육 과정이 따를까? 교재가 다른가? 그렇지는 않다고 합니다. 공부방에는 보통 PC나 아이패드가 깔린다고 합니다. 아이들은 와서 각자 자리에 앉아 태블릿을 이용해 각자 공부합니다.  가장 기본적인 ‘토탈리’를 비롯해 영상채팅으로 원어민 교사와 직접 이야기할 수 있는 프로그램 등을 지도해주는 관리자 역할의 교사가 하나 있을 뿐,  여전히 태블릿은 자율학습이 중심이라고 합니다.

 

 

 

 PC로 시작한 스마트 교육도 모바일로 환경이 바뀌는 것 같습니다. 모바일과 스마트기기는 과연 교육 효과를 높여줄까? 분명 그렇게 판단했으니 그 복잡한 프로그램이 스마트폰과 태블릿으로 넘어오는 것일게입니다.

 

 

 

태블릿 UX에 대한 리서치가 아직 더 많이 필요하다고 입을 모읍니다.  아직 태블릿은 나온 지 그리 오래된 플랫폼이 아니라고 합니다. 처음부터 태블릿을 받아들여 온 아이들과, PC를 쓰던 경험에서 태블릿으로 옮긴 성인이 접근하는 방식은 분명 다를 겁니다. 특히 그게 교육 영역이라면 콘텐츠 개발에 연구가 더 많이 필요할 겁니다.

 

 

APP 개발 온라인 강좌 제4강 [4-1~3] - GUI에 대한 이해와 NGUI 소개

APP 개발 온라인 강좌 제3강 [3-6-3] - 비주얼 프로그래밍이란? - Prefab 만들기

APP 개발 온라인 강좌 제3강 [3-6-2] - 비주얼 프로그래밍이란? - State 구성하기

비주얼 프로그래밍이란? - PlayMaker 사용해보기

SK텔레콤 서비스 장애 보상안내발표 - 스마트아카데미

 스타트업 얼라이언스 출범 - 스마트 아카데미

 

Posted by 알 수 없는 사용자
유니티 강좌2014. 3. 31. 06:00

(1) GUI의 정의

GUI란 Graphic User Interface의 약자로 사용자 편의를 위해 시각적인 그래픽 요소로 화면을 꾸미고 배치하여 상호작용할 수 있게 만든 것을 의미합니다. GUI이전에는 컴퓨터와의 상호작용을 Text로 했었으나 점차 기술이 발달되어 그래픽으로 표현된 인터페이스를 사용함으로써 지금과 같이 상호작용 요소를 인지(cognition)하기 쉽게 되었습니다.

   

보다 쉽게 얘기하자면, 게임이나 앱에서 화면을 구성하는 버튼, 스크롤 바 등과 같이 사용자가 행동을 통해서 컨트롤을 하여 컴퓨터가 자신이 원하는 행동을 하게끔 만들 수 있는 객체나, 시계, 배터리 게이지 등과 같이 필요한 정보를 시각적으로 쉽게 확인할 수 있는 객체라고 생각하시면 됩니다.

   

   

(2) NGUI란?

NGUI는 유니티3D 개발자가 편리하게 GUI를 원하는 대로 만들 수 있게 해주는 플러그인 툴 입니다. 유니티3D 자체에도 GUI를 만들 수 있게 도와주는 기능이 있지만 복잡한 UI 구성이 어렵거나 프로그램 성능이 저하되는 경우가 있어 별도의 툴을 소개합니다.

   

Playmaker가 프로그래밍을 담당하여 초보자가 쉽게 프로그램 할 수 있는 플러그인 툴이었다면, NGUI는 GUI를 담당하는 플러그인 툴 입니다.

   

NGUI를 UI 툴로 다룰 수 있게 되면, 프로그래밍을 Playmaker로 사용하여서 손쉽게 앱을 제작할 수 있게 됩니다.

  

[그림 4-1]



(3) NGUI 설치하기

Playmaker를 설치했을 때와 같이 유니티3D를 실행한 상태에서 Ctrl + 9로 Asset Store를 연 뒤, 검색 창에서 NGUI로 검색을 하면 쉽게 NGUI를 찾으실 수 있습니다.


[그림 4-2]


여기서 NGUI를 바로 구입하실 수 있고, 구입을 하시면 바로 정품 버전으로 아무런 제한 없이 사용하실 수 있습니다.

   

하지만, 정품을 구입하기 전에 먼저 한 번 테스트 버전을 사용해보고 싶다면, NGUI제조사의 홈페이지(http://www.tasharen.com)로 가서 무료 테스트 버전을 다운 받아서 사용하시면 됩니다.


[그림 4-3]


홈페이지에서 Products > NGUI: Next-Gen UI Kit 클릭

* NGUI: Next-Gen UI Kit 페이지에서 Evaluation Version 카테고리에 있는 'Free Edition of NGUI here' 링크를 클릭하시면 무료 테스트 버전을 다운받으실 수 있습니다.

   

다운을 받으셨으면, Playmaker unitypackage를 프로젝트에 Import 시켰던 것 같이 NGUI unitypackage 파일을 Import 시켜주시면 됩니다.

   

Import가 끝난 뒤에 Playmaker와 마찬가지로 NGUI도 유니티 상단에 있는 메인 메뉴바의 빈 곳을 한 번 클릭해주면 메뉴가 나타납니다.


[그림 4-4]


   

NGUI 설치가 끝났으면, 본격적으로 NGUI 예제를 해보기 전에 먼저 NGUI의 구성요소와 그 기능을 살펴 보도록 하겠습니다.

   

다음 강의에서는 NGUI의 구성에 대해 알아보겠습니다.



스마트아카데미-시설 소개

페이스북 왓츠앱 인수

스마트 아카데미 창의인재 교육 6개월 과정 등록안 -스마트 앱 전문 교육기관

정부 벤처창업지원 통해 경제 활성화 나선다

한국의 구글 핸드스튜디오 안준희 대표 - 스마트아카데미

한국의 구글 핸드스튜디오 - 스마트아카데미 (2)

ICT란 무엇인가 - 스마트 아카데미


Posted by 알 수 없는 사용자
ICT Trend2014. 3. 28. 17:45

지난 8일 마이크로소프트가 '원노트'를 무료로 풀었습니다. 원노트는 한마디로 문서저작도구입니다. 겉보기엔 아래아한글이나 'ms워드'나 생김새만 조금 다를 뿐 , 기본기능은 같습니다. 그렇지만 차이가 있습니다. 클라우드기반이란점입니다.


원노트엔 '저장' 단추가 없다. 글을 쓰는 즉시 자동 저장됩니다. 그러니 글을 쓰다가 정전이 되거나 PC가 말썽을 일으켜도 문서 내용을 잃어버릴 염려가 없습니다. 원노트는 또 MS 클라우드 서비스인 '원드라이브'에 문서를 보관합니다. 태블릿PC나 아이폰·안드로이드폰용 응용프로그램(앱)도 무료로 제공하고, 웹에 접속해 쓸 수도 있습니다. PC든 스마트폰이든 태블릿PC든, 한곳에서 작성한 글은 언제 어떤 기기에서 열어도 늘 최신 상태로 볼 수 있다는 뜻입니다.





그뿐인가. 노트를 주제별로 분류해 체계적으로 관리하는 데도 제격입니다. 사진 속 글자를 자동 인식하는 광학문자인식(OCR) 기능을 지원하니, 각종 영수증이나 증명서를 보관하기에도 좋습니다. 음성 메모나 PDF 문서도 노트에 첨부할 수 있습니다. 노트 내용을 다른 사람과 함께 작성하거나 고치는 공유 기능은 기본입니다. 윈도용 원노트에선 필기 입력 기능도 지원합니다. 터치 화면이 달린 윈도 태블릿에서 펜으로 원노트 화면에 곧바로 글씨를 쓰거나 그림을 그릴 수 있다는 뜻입니다.


원노트는 2003년 처음 나올 때만 해도 클라우드 기능이 빠진 평범한 노트 프로그램이었습니다. 게다가 원노트는 '아웃룩'이나 '엑셀'처럼 'MS 오피스'에 포함된 유료 프로그램이었습니다. 그러다가 '원노트 2010'부터 클라우드 연동 기능이 붙었고, '윈도8'과 스마트폰용 앱이 나오더니, 이번에 맥용 프로그램까지 선보이며 무료 소프트웨어로 전환했습니다.

'에버노트'는 달랐습니다. 원노트보다 조금 늦게 나왔지만, 처음부터 클라우드 기반 무료 노트를 내세워 열혈 이용자층을 넓혔습니다. 지금은 '클라우드 노트=에버노트'란 등식을 만들 정도로 대표적인 프로그램으로 자리잡았습니다. 이제 원노트나 에버노트 사이에 기능상 큰 차이는 없다. 두루 써보고 기호에 맞게 고르면 됩니다.

굳이 원노트나 에버노트만 고집할 필요는 없습니다. 간단한 메모용 노트를 찾는다면 '구글 킵'이나 '솜노트'가 제격입니다. 비슷한 기능을 제공하는 프로그램은 조금만 앱 장터를 뒤져보면 한 움큼 찾아낼 수 있습니다.

중요한 건 이거다. 독립형 프로그램에 갇혀 있지 말자는 얘기다. 언제까지 새로 작성한 문서를 일일이 파일로 백업해 보관할 것인가 아니면 하드디스크가 뻗었다고, 노트북을 잃어버렸다고 애써 쌓아둔 지식 정보마저 송두리째 잃어버릴 셈인가 선택하는 일입니다.


밤새 정리한 중요한 문서를 집에 놓아두고 출근했다가 발을 동동 굴리는 기억과도 이젠 작별하고, 갑작스런 정전 앞에서 외마디 비명과 함께 머리를 감싸쥐는 사무실 풍경이 아직도  풍경과 작별하십시오.

아래아한글이나 MS 워드는 훌륭한 문서 저작 도구입니다. 그렇지만 지식 정보를 차곡차곡 저장하고 관리하기엔 불편하고 낡은 창고입니다. 디지털 시대를 살아가는 지식노동자라면 저 구름 어디께에 보조기억장치 하나쯤은 보험처럼 마련해둬야 할까 아닐까 싶습니다.



APP 개발 온라인 강좌 제3강 [3-6-2] - 비주얼 프로그래밍이란? - State 구성하기

APP 개발 온라인 강좌 제3강 [3-6-1] - 비주얼 프로그래밍이란? - PlayMaker 사용해보기

SK텔레콤 서비스 장애 보상안내발표 - 스마트아카데미

스타트업 얼라이언스 출범 - 스마트 아카데미

비주얼 프로그래밍이란? - Finite State Machine(FSM)

모바일게임 플랫폼 시장 춘추전국시대 - 스마트아카데미

비주얼 프로그래밍이란? - 플레이메이커의 설치

국내기업 개인정보유출 정리 - 스마트 아카데미



Posted by 알 수 없는 사용자
유니티 강좌2014. 3. 26. 06:00

3) Prefab 만들기


이제 이렇게 만들어진 큐브를 Prefab 구성을 통해서 하나 더 만들어보겠습니다.

그럼 우선 Prefab을 만들어보겠습니다.

   

먼저 Project 창에서 Create > folder 메뉴로 새 폴더를 하나 생성해준 뒤에 폴더의 이름을 Prefab이라고 지어줍니다.

그리고 Hierarchy창에서 'Cube' 오브젝트를 앞서 생성한 Prefab폴더로 드래그합니다.

그러면, 파란 상자모양의 아이콘이 달려있는 'Cube' Asset이 생성되어 있는 것을 보실 수 있는데, 이 Asset이 바로 Prefab입니다.


[그림 3-34]

   

이렇게 생성한 Prefab은 현재까지 설정한 오브젝트가 가진 모든 컴포넌트 설정을 동일하게 저장하고 있습니다. 따라서 비슷한 오브젝트를 대량으로 복제를 해야 하거나, 앱이나 게임을 제작할 때 특정 오브젝트를 어떠한 이벤트를 통해 생성할 때, 유용하게 사용됩니다.

   

'Cube' Prefab을 클릭 & 드래그 해서 Hierarchy창 안으로 넣어봅시다.

그러면 [그림 3-35]와 같이 짙은 파란색 글씨로 Prefab을 통해서 생성된 'Cube' 오브젝트를 확인할 수 있습니다.


[그림 3-35]


이 오브젝트를 기존의 'Cube' 오브젝트와 차별성을 두기 위해서 이름을 'Cube2'로 변경해줍니다.



[그림 3-36]


   

[그림 3-37]


Scene 창에서 위의 그림과 같이 'Cube2'오브젝트가 잘 배치가 되었는지 확인해보자.

   

지금까지 프로그래밍에 대한 전반적인 이해와 Playmaker를 통한 비주얼 프로그래밍 방법에 대해서 알아보았고, FSM코드를 포함한 다양한 정보를 가지고 있는 오브젝트를 Prefab으로 구성하는 방법에 대해서도 알아보았습니다.

   

다음 장에서는 GUI에 대해서 알아보겠습니다.


스마트아카데미 책 소개 - 개발자, 나를 말하다

창의융합형 교육이 대세다.

스마트아카데미-시설 소개

페이스북 왓츠앱 인수

스마트 아카데미 창의인재 교육 6개월 과정 등록안 -스마트 앱 전문 교육기관

스마트 앱 전문 교육기관 스마트아카데미가 추천하는 안드로이드앱(1)

스마트 폰 삶 속으로 들어오다

정부 벤처창업지원 통해 경제 활성화 나선다


Posted by 알 수 없는 사용자
창의교육2014. 3. 25. 12:15

Cre8tive ux 훈련 강좌

   

스마트아카데미에서는 사람에 대한 이해로부터 창의력과 UX를 체계적으로 훈련하고 그것을 자신의 능력으로 만드는 교육과정을 진행하고 있습니다.

   

이 과정은 창의력과 UX 융합 실무교육 과정으로써 인문학을 기반으로 한 창의력 증진 강좌, 즉 림빅(Limbic)맵 구성, 전뇌 매트릭스 활용, 퓨쳐스 힐 기법 경험 등 8가지 과학적인 방법을 통하여 자신에게 맞는 창의력을 개발하고, 자신에 대한 이해를 확장하여 다른 사람에 대한 이해와 사용자 경험을 체계적인 UX기법으로 훈련하도록 구성되어 있습니다.

   


개요와 사례분석, 설계단계부터 실무실습까지 체계적으로 학습이 진행되며 사람에 대한 이해를 통해 새로운 경험을 상품, 서비스를 설계하는 능력을 함양 할 수 있습니다.


교육 과정 안내

   

2014년 크리에이티브 UX 훈련 강좌

   

모집과정 크리에이티브 UX 훈련 과정

   

모집기간 과정별 정원 완료 시

   

교육일정 (총 4주간 4일 20시간 / 매주 토요일 13:00 ~ 18:00)

   

토요 반: 1월 25일 토요일 강좌 (마감)

4월 12일 토요일 개강 (모집 중)

 

.

   

교육비용 55만원.

   

교육대상 창의력을 체계적으로 키우고자 하는 사람.

     사람에 대한 이해를 바탕으로 신상품과 서비스를 기획하려는 사람

     새로운 상품과 서비스로 창업을 꿈꾸는 예비 창업자.

   

교육 과정 소개

   

1. 창의력 개발

   

· 인문학을 기반으로 하는 창의력 증진 강좌를 합니다.

· 체계적인 창의력 개발 방법론 적용과 훈련으로 체득화 과정 진행합니다.

· 림빅(Limbic)맵 구성, 전뇌 매트릭스 활용, 퓨쳐스 힐 기법 경험 등 8개의 개발방법론을 모두 사용함으로써 자신에게 맞는 방법을 찾을 수 있습니다.

   

 

   

UX훈련


·UX는 아이팟과 아이폰으로 시작된 애플의 혁명의 근원입니다.

   

사람에 대한 이해, 사용자 경험에 대한 분석으로 새로운 경험을 상품, 서비스, 게임에 제시합니다.

   

 

   

3. 크리에이티브

   

   

·자신에 대한 이해를 창의력으로 발전 시킬 수 있습니다.

·다른 사람에 대한 이해를 UX로 훈련 합니다.

·사람에 대한 과거의 경험과, 현재의 상황, 그리고 미래의 목표를 이해하고 제품과 서비스를 설계하는 능력을 함양할 수 있습니다.

 

커리큘럼

   

 

   

등록안내

   

크리에이티브 UX 강좌 등록안내

   

신청문의: 스마트아카데미 교육안내 (T. 02-567-3885)

   

수업 참여시 준비물 : 간단한 필기도구와 창의력에 필요한 편안한 마음을 준비하세요!



Smart Academy

   

스마트 아카데미의 공식블로그 입니다. 

문의 전화 : 02-567-3885    mail : support@smartacademy.or.kr 




Cre8tive ux 훈련 강좌 2014년 4월12일 개강[토요반]

APP 개발 온라인 강좌 제3강 [3-6-1] - 비주얼 프로그래밍이란? - PlayMaker 사용해보기

SK텔레콤 서비스 장애 보상안내발표 - 스마트아카데미

스타트업 얼라이언스 출범 - 스마트 아카데미

APP 개발 온라인 강좌 제3강 [3-5] - 비주얼 프로그래밍이란? - Finite State Machine(FSM)

 모바일게임 플랫폼 시장 춘추전국시대 - 스마트아카데미

 APP 개발 온라인 강좌 제3강 [3-4] - 비주얼 프로그래밍이란? - 플레이메이커의 설치


Posted by 알 수 없는 사용자
유니티 강좌2014. 3. 25. 06:00

2) State 구성하기


Playmaker의 Editor창에 있는 State탭에서 'State 1'이라고 되어 있는 이름을 'Wait' 이라고 변경해줍니다.


[그림 3-20]


이 State가 하게 될 역할은 큐브가 바닥에 떨어지는 시간 동안 기다릴 역할을 하게 될 것입니다.


그러면 이제 기다리라는 내용의 Action을 State에 넣어서, State 구성을 완성해보겠습니다.


Playmaker Editor 창에서 State를 선택한 상태에서 State 탭을 보면 우측 하단에 Action Browser라는 버튼을 볼 수 있습니다.


[그림 3-21]


이 버튼을 클릭하면, State에 넣을 수 있는 액션들이 나열된 창을 보실 수 있습니다.

Action Browser에서 Time > Wait 메뉴를 더블 클릭해서, 'Wait' State에 추가해줍니다.

  

[그림 3-22]


'Cube'가 'Plane' 위에 떨어지는 속도는 1초 정도 걸리므로, Time의 수치는 기본으로 설정되는 1 값을 그대로 사용합니다.

그 다음, Playmaker Editor창에서 'Wait' State를 우 클릭 했을 때 나타나는 메뉴에서 Add Transition > FINISHED 메뉴를 클릭해서 FINISHED Event를 생성해줍니다.


[그림 3-23]


그리고 다시 State에 설정된 Wait 액션으로 돌아와서 Finish Event를 앞서 설정한 FINISHED Event 이벤트로 연결해줍니다.

 

[그림 3-24]


이로써, Wait 액션의 기능이 [1초 동안 기다린 다음, FINISHED 이벤트를 발동시켜라.] 라는 행동을 할 수 있게 되었습니다.

   

※Playmaker Editor에서 작업을 진행하다 보면, State에 빨간색 느낌표가 나타나는 경우가 있습니다.


   [그림 3-25]


아마 'Wait' State에 FINISHED 이벤트를 생성해준 순간 빨간색 느낌표가 나타났을 것입니다.

이 느낌표 표시는 현재의 State에 에러가 있다는 것을 의미하며, 자세한 내용은 PlaymakerEditor창의 하단에 있는 error 버튼을 누르면 확인할 수 있습니다.


[그림 3-26]


[그림 3-26]에서 에러 내용을 살펴보면 ['Cube'오브젝트에 있는 'FSM CUBE POSITION RESET' FSM의 'Wait' State에 설정된 이벤트 중, 타겟이 될 State에 연결되지 않은 것이 있다.] 입니다.


State에 설정되는 이벤트들은 어떠한 상황이 일어난 것을 액션에서 감지하고, 그 액션에서 [현재의 상태를 특정 이벤트가 타겟으로 잡고 있는 상태로 변화하라.]는 명령을 실행할 때, 타겟을 잡아주는 과정에 포함되기 위해서 존재합니다.


앞서 설정한 'Wait' State의 경우에는 FINISHED 이벤트가 설정된 이유가 [1초 동안 기다린 후, FINISHED 이벤트가 타겟으로 잡고 있는 상태로 변화하라.] 라는 명령을 구성하기 위해서 입니다.

그런데, 정작 FINISHED 이벤트에 연결된 다음 상태가 없기 때문에 에러가 나타난 것입니다.

   

이제 다음 State를 하나 더 만들어 준 후에 State 이름을 'Reset Cube Position'이라고 이름을 지어줍니다.

그리고 'Wait' State의 FINISHED 이벤트를 클릭 & 드래그를 해서 화살표를 꺼낸 뒤, 'Reset Cube Position' State에 연결시켜줍니다.


[그림 3-27]


[그림 3-28]


그 다음 'Reset Cube Position' State를 선택하고 Action Browser 창을 Open 한 뒤, Transform 카테고리에서 Set position 액션을 찾아서 더블 클릭하여 'Reset Cube Position' State에 삽입합니다.

  

[그림 3-29]


※ Action의 카테고리 종류와 그 안의 내용 배치에 대해서 다 이해할 수 있을 때까지는 검색기능을 사용하기보다, 직접 카테고리를 클릭해서 열어보며 액션들과 카테고리의 연결점에 대해서 생각해보는 것이 좋습니다.

   

그리고 삽입한 Set Position 액션에서 Y축 입력 칸의 우측에 있는 변수 사용(Use Variable) 버튼을 눌러서 해제 상태로 만들어준 뒤, 절대값 2를 입력합니다. (2를 입력하는 이유는 Cube를 선택하고 Inspector창에서 Transform을 확인해보면 큐브가 떨어지기 전에 셋팅되어 있는 Y축 좌표 값이 2이기 때문입니다.)


[그림 3-30]


이렇게 설정된 Set Position 액션의 내용을 설명하자면 다음과 같습니다.

① 움직여야 할 Game Object는 Use owner (FSM이 존재하는 오브젝트. 즉, 'Cube' 자기 자신)

② 움직여야 할 위치는 Y축으로 변수 값이 아닌 절대값 2만큼

③ 움직일 때 참고할 방향 좌표는 World를 기준으로


[그림 3-31]


이제 플레이 버튼을 눌러서 어떤 결과가 나타나는지 확인해봅시다.

Game창에 보이는 화면에서 'Cube'가 'Plane' 위에 떨어졌다가, 다시 원래의 위치로 되돌아가서 떨어지는 것을 보실 수 있습니다.

Playmaker Editor창을 보면 초기에 Start > 'Wait' State에 녹색빛이 머물렀다가, 1초 뒤에 'Reset Cube Position' State로 이동하는 것을 볼 수 있습니다.

   

※ 오브젝트에 FSM 컴포넌트가 들어간 이후에는 Scene 창에서 오브젝트를 보면 PlayMaker 로고가 반투명하게 표시되어 보이는 것을 보실 수 있습니다. 이 로고가 오브젝트를 가려서 거슬리는 분들은 아래의 그림과 같이 Scene창에서 Gizmos버튼을 클릭했을 때 나오는 메뉴에서 PlaymakerFSM의 체크를 풀어주면 됩니다.

 

[그림 3-32]


다음으로 큐브가 한 번만 포지션이 리셋되는 것이 아니라, 떨어질 때마다 매번 포지션이 리셋이 되도록 한 번 만들어 보겠습니다.

   

먼저 Playmaker Editor 창에서 'Reset Cube Position' State를 우 클릭 했을 때 나타나는 메뉴에서 Add Transition > FINISHED 메뉴를 클릭해서 FINISHED Event를 생성해줍니다.

그리고, FINISHED Event를 클릭 & 드래그하여 'Wait' State를 타겟으로 하도록 연결시켜 줍니다.


   [그림 3-33]


   그리고 다시 플레이 버튼을 눌러서 매 1초마다 큐브의 위치가 잘 Reset 되는 지를 확인해봅시다.

   

※'Reset Cube Position' State는 내부에 있는 액션이 Finished Event를 설정할 수 없는 액션이 없는데도 불구하고, FINISHED 이벤트가 타겟으로 설정하고 있는 'Wait' State로 상태 변환이 잘 일어나는 것을 볼 수 있습니다.

그 이유는 시스템에서 기본으로 제공하는 FINISHED 이벤트는 State 내에 Every Frame 과 같이 지속적으로 체크를 해줘야 하는 액션설정이 존재하지 않는 이상 자동으로 다음 State로 처리과정을 넘겨주는 기능을 가지고 있기 때문입니다.

만약, State내에 지속적으로 체크를 하는 속성의 액션이 있다면, Wait이나 Send Event 액션으로 Finished Event를 설정해줘야 처리과정을 다음 State로 넘길 수 있습니다.

   

다음 강좌에서는 Prefab 만들기에 대해 알아보겠습니다.


스마트 아카데미 '스마트 앱 개발' 교육과정 안내

스마트 앱 개발 학원 국비지원 안내

K팝 홀로그램 상설공연장 개소

구글의 네스트 인수 의미

스카이 아카데미 취업 정보 - 선데이토즈 이야기

창의인재과정 안내

미래창조과학부 창조경제 실현

크리에이티브 UX교육 훈련과정 안내


Posted by 알 수 없는 사용자
유니티 강좌2014. 3. 24. 06:00

(6) PlayMaker 사용해보기


1) FSM 만들기.


1강에서 연습했던 프로젝트 파일을 열고, 그 안에 설치된 Playmaker를 활용해서 간단하게 어떤 구조로 비주얼 프로그래밍이 이루어지는지 살펴보도록 하겠습니다.

   

PlayMaker > PlayMaker Editor 메뉴를 사용해서 Playmaker Editor 창을 엽니다.


[그림 3-13]



[그림 3-14]


위의 그림과 같이 창이 열리면 해당 창을 유니티 인터페이스 안에 적절하게 공간을 할당하여 배치합니다.

에디터 창의 안을 보면 'Select a GameObject'라는 글씨를 볼 수 있는데, 현재 Hierarchy창에서 아무 오브젝트도 선택한 상태가 아니라면 이와 같은 메시지가 나타나게 됩니다. Hierarchy창에서 'Cube' 오브젝트를 선택하면 다음과 같이 내용이 변경됩니다.


[그림 3-15]


'Right-Click to Add FSM' 이 말은 즉, 현재의 창에서 마우스 우측 버튼을 클릭해서 FSM을 생성하라는 뜻입니다.


이 말이 설명하는 대로 창에서 마우스 우측 버튼을 클릭해서 FSM을 생성해보겠습니다.


[그림 3-16]


마우스 우측 버튼을 클릭했을 때, 나오는 메뉴에서 Add FSM을 클릭하면 FSM이 생성됩니다.


[그림 3-17]


FSM을 생성했다면 위의 그림과 같이 Start 라는 이름의 State와 State 1 이라는 이름의 State가 생성된 것을 볼 수 있습니다.


그리고 큰 회색 글씨로 쓰여있던 'Right-Click to Add FSM'이라는 메시지도 'Cube: FSM'이라는 내용으로 바뀐 것을 볼 수 있습니다. (즉, 'Cube' 오브젝트에 'FSM'이라는 이름의 FSM이 생성된 것입니다.)

이제 본격적으로 FSM 프로그래밍을 할 준비가 되었습니다..

   

이제 'Cube: FSM' Edit창에 있는 FSM 탭을 클릭한 뒤, 'FSM'만 적혀있는 이름 칸의 내용을 'FSM CUBE POSITION RESET'으로 바꿔봅시다.


[그림 3-18]


이렇게 이름을 바꿔주면, 큰 회색 글씨로 쓰여있던 'Cube: FSM'이라는 메시지도 바뀐 것이 보일 것입니다.

이렇게 생성된 'FSM CUBE POSITION RESET' FSM이 컴포넌트로 큐브에 잘 들어가 있는지 확인해봅시다.


[그림 3-19]


Hierarchy창이나, Scene창에서도 Playmaker 로고를 통해 FSM이 존재하는 오브젝트라는 것을 확인할 수 있습니다.


다음 강좌에서는 첫 번째 State의 구성에 대해 알아보겠습니다.


우아한 형제들 김봉진 대표 - 앱 개발 전문 학원 스마트 아카데미

창의융합형 교육이 대세다.

창조경제시대 왜 코딩교육인가 - 스마트 아카데미

페이스북 왓츠앱 인수

스마트 앱 전문 교육기관 스마트아카데미가 추천하는 안드로이드앱(1)

스마트 폰 삶 속으로 들어오다

3D프린팅과 스마트네트워크는 우리생활에 어떤 영향을 미칠까?


Posted by 알 수 없는 사용자