스터디/Unity 2018. 11. 11. 02:51

[Unity] 작업노트 - Playmaker 연습하기 6, get/set property - 환쟁이님 강좌

환쟁이(slee16) 강좌 따라 연습하기 계속
플레이메이커 액션 - Get/Set Property 첫번째 파트


Get / Set Property 를 유니티 UI와 연결하는 연습

Create Empty Object - UI에서 Image 선택 - 소스에서 Knob 선택 - Imagey Type Filled 를 선택 - Fill amount에 따라 원의 채워지는 퍼센트가 달라진다

-Property_Guage라는 게임오브젝트 만들고 
-circle_increase 스테이트에 아까 만든 UI 이미지를 드래그앤 드랍하면 이런 메뉴가 뜬다.
-Image에서 Set Property 선택



FillAmount 변수(0~1)에 따라 원의 채워짐이 달라지는데 이때 <animate float> <set float value>를 이용해 f_animfloat이 f_circleamunt까지 변화할때 curve곡선에 따라 변화도록 해준다



결과!


스페이스바를 누르면 값이 조금씩 증가하도록 변경
Stanby 스테이트에 <Get Key up> 추가하고 ready_to_push 이벤트

Circle_increse 스테이트에 <float add> 추가

숫자가 1이상이 되는지를 판단하는 스테이트를 추가하고 conf_no conf_yes 이벤트 추가하여 분기
1이상이 되면 reset 스테이트에 <set float value> 를 0으로 하고, 다시 standby 스테이트로 보낸다



플레이! 스페이스바 누를때마다 원이 커지고 1이상이 되면 reset 됨



100일코딩, 100DaysOfCode 시작!

https://twitter.com/Binsworld_dev

100일코딩 도전을 위해 트위터부계정을 하나 더 만들었다.


#100daysofcode 는 하루에 한시간 이상 코딩을 하고, 그 간략한 내용과 해시태그를 트위터에 남기기만 하면 된다.

봇이 리트윗도 해주고 참여자들끼리 서로 격려해주기도 하기 때문에 왠지 영어로 적는편이 더 흥할것 같다.. 

아래 홈페이지에서 좀더 자세한 프로젝트 소개가 되어있다.

https://www.100daysofcode.com/



나중에 좀더 시간이 나면 아래를 참고해서 기록 남기는 방법도 좀더 고민해봐야겠다

https://medium.freecodecamp.org/how-to-transform-your-100daysofcode-log-into-a-visual-experience-d048334af8d9



스터디/Unity 2018. 11. 11. 01:29

[Unity] 작업노트 - Playmaker 연습하기 5, 두 플레이어의 이동 - 환쟁이님 강좌

환쟁이(slee16) 강좌 따라 연습하기 계속
플레이메이커 예제 #2 - 플레이어의 이동  2

-두개의 오브젝트에서 하나를 선택하여 GameObject에 변수에 저장
-변수에 저장된 오브젝트를 제어

1.Manager_Control 오브젝트. PlayerSelect FSM


Terrain,  플레이어 1, 2 추가 


Manager_Control 오브젝트에 PlayerSelect PlayerMove 두 FSM 추가



CheckObject 스테이트
클릭한 게임오브젝트를 Obj_Object 변수에 저장 <Mouse Pick>
LayerMask에서 Terrain, Invert Mask 선택하면 terrain빼고 다른 레이어만 인식
(Mouse Pick / Mouse Pick Event의 차이는 무엇일까 다음에)



Reset State
오른쪽클릭-Mouse_Cancel- 선택한 오브젝트를 변수에서 해제 

*문제점 

클릭해보면 변수 필드에 Obj_Object의 value가 Player2 오브젝트가 아니라 그 안에 있는 세부 캡슐 조각 Capsule(4)들이 선택딘다.
혹시나 해서 빈게임오브젝트를 상위에 두고 캡슐들을 그 아래로 묶어 다시 프리팹으로 만들보았지만 결과는 그대로.
나중에 실제 게임에서 '얼굴을 클릭하면, 몸을 클릭하면, '이렇게 분할조건을 만드는데는 쓸수있겠지만.. 가장 상위 단위의 오브젝트 (Capsule(8)이 아닌 Plyaer2 )를 선택되게 하려면 어떻게 하면 좋을까?collider 추가?
=> 환쟁님의 답변 : collider 추가 맞음

*오브젝트를 만들때는 위치값, 보는 방향 원점을 항상 첨부터 잘 조정해두자. 


2.Manager_Control 오브젝트. PlayerMove FSM

오브젝트에 PlayerSelect와는 별도로 PlayerMove FSM을 하나 더 생성한다

-Standby 스테이트에 Obj_Check 이벤트 추가 (global 체크). 이후에 PlayerSelect에서 이벤트를 보낼때 사용 
-Check Object 스테이트에 진행 분리
  • 1_PlayerSelectFSM으로부터 GameObject 변수를 받아와서 Obj_Selected 변수에 쌓는다 (global체크)  <Get Fsm Game Object>
  • Select_N Select_Y 이벤트 추가
  • <Get Object Is Null> 오브젝트가 Null 인지 판단하고
    • Null 이면 Select_N 이벤트로 이전 스테이트로 돌아가고
    • Null이 아니면 Select_Y로 Ready To Move 스테이트로 이동

-
-ReadyToMove 스테이트에 마우스 오른쪽/왼쪽 클릭 구분하여 분기
-Mouse_Click , Mouse_Cancel 이벤트 등록
-<Get Mouse Button Down> 액션 추가

-Set target 스테이트에는 MousePick 된 오브젝트를 Obj_Selected 변수에 넣고, 그 위치를 Vec3 변수인 Pos_Pick에 넣게된다
-이때 PlayerSelect와는 반대로 LayerMask 1 을 Terrain을 선택해서 TerraIn만 선택

*위 그림에서  실수를 했음. Obj_Select에 Store를 하는 바람에 Terrain이 움직여버림. 아래와 같이 Pos_Pick만 Store 하도록.




-Move 스테이트에는 <Move Towards> 추가하여 선택된 오브젝트를 Pos_Pick까지 이동하게 한다.
-Ignore Vertical은 Y값 이동 막음
-오브젝트 위치 0.5 거리까지 가면 FINISHED 이벤트가 발생하여 다시 ReadyToMove 스테이트로 이동


마지막으로 1_PlayerSelect FSM으로 가서 Check Object 스테이트에 Send Event Object_Check를 보내준다.

그러면 2_PlyaerMove 의 StandBy 스테이트가 이벤트를 받아 다음 스테이트로 넘어가게 된다.

플레이 결과!

원하는 캐릭터를 왼쪽 클릭하고 땅을 클릭하면 그쪽으로 이동, 우클릭하면 해제하고 다른 캐릭터 선택 가능!

*이걸 만약에 그냥 캐릭터를 좌클릭할때마다 이전에 선택된 캐릭터를 해제하고 해당 캐릭터를 선택하는 방식으로 메카닉을 바꾸려면..
PlayerSelect FSM에서 캐릭터를 우클릭시 Obj_Selected가 Null 인지 아닌지를 체크하는 과정을 한번 더 넣어야할듯


Move 스테이트에 <Smoothy Look At>을 추가하여 좀더 자연스럽게 바라보며 이동하도록 응용해보았다.
프리팹내의 캐릭터 오브젝트가 회전를 첨부터 잘 맞춰두는 것이 중요한것 같다..







스터디/Unity 2018. 11. 4. 01:11

[Unity] 작업노트 - Playmaker 연습하기 4, 플레이어의 이동 - 환쟁이님 강좌

환쟁이(slee16) 강좌 따라 연습하기 계속
플레이메이커 예제 #1 - 플레이어의 이동 1

-바닥을 클릭한 지점으로 이동하는 예제
-오브젝트에 FSM을 직접 심기보다는 Manager를 따로 두어 제어하는 방식
-Terrain 레이어를 지정하여 Layer Mask 활용


<준비>


Terrain 에 Tag, Layer 추가

Player에 Character Controller 추가

큐브 하나 만들어서 Target으로 이름 짓기

Manager_Move라는 빈 게임오브젝트

2.Manager_Move

StandBy 스테이트에 Mouse Pick Event 추가
GameObject에는 Terrain
Event 에 Clicked 생성하여
Mouse Down에 넣어줌
Clicked 트랜지션을 스테이트에 추가

Get Position 스테이트에 Mouse Pick 액션 추가
PickPosition 벡터3변수 만들기
Layer Mask 1로 지정해서 Element0을 Terrain으로
-Terrain을 클릭하면 - > 클릭한 지점 벡터값을 변수 pickposition에 저장 -> layermask를 통해 terrain 외의 오브젝트 클릭 이벤트는 무시 


Set Target 스테이트 추가
Set Position 액션에 Target의 포지션을 PickPositon 변수값을 받아와 그 위치로 옮김
Wait 액션을 추가하여 무한루프 방지 (on/off 다 해봤는데 어떤 차이가 있는지 잘 모르겠음)


3.Player
플레이어가 타겟을 따라가도록

Ignore Vertical On으로 함 : 수직 이동 무시. 켜놓지 않으면 플레이어가 땅속으로 묻히게 됨

4.Manager_Move에서 이벤트 보내기

Set Target 스테이트에 Send Event
Event Target을 Broadcast Call : 이벤트 받을수있는 모든 오브젝트에게 전달
Send Event : MoveTarget 이벤트로, 글로벌


*state 라벨 켜고 끄기 : FSM - Debug - Show State Labels



스터디/Unity 2018. 11. 4. 00:09

[Unity] 작업노트 - Playmaker 연습하기 3, 변수의 응용 - 환쟁이님 강좌

환쟁이(slee16) 강좌 따라 연습하기 계속
플레이메이커 기초 4 - 변수의 응용


-Find Game Object : 이름 또는 Tag 지정하여 오브젝트를 찾고 변수에 저장
-Move Towards : 타겟을 향해 오브젝트를 이동
-Int Compare : Int 변수의 차이에 따른 이벤트 처리
-Add FSM : 하나의 게임 오브젝트에 2 이상의 FSM 추가
-Send Event : FSM 선택하여 이벤트를 Call 한다
-Global Transition : 리니어 방식으로 이벤트 트랜지션이 아닌, 언제나 이벤트를 받도록
-iTween Move Add : itween 스크립트를 활용한 오브젝트 이동 관련 액션


  1. Add FSM
하나의 게임오브젝트에 여러개의 FSM 추가

마우스 우클릭하여 Add FSMComponent
상단 탭에서 한 오브젝트에 있는 여러 FSM들을 볼수있음 (여러개를 동시에 보는 뷰는 안되는건가?)

대안으로 FSM Browser에서 리스트뷰로 볼수있는데 FSM  많아지면 정말 헷갈릴듯!

1a. Game object 변수
Enemy_Move FSM에서 플레이어 오브젝트 저장할 GameObject 변수 Obj_Player’만들기

1b. Find game object action

tag로 설정시 랜덤한 검색

*확인하는 방법 (오!)

우측 변수에 Value none 이었는데 

플레이하면 Player 오브젝트가 쏙 들어가있음 

1c. Move towards action

Target position - None으로 눌러주기
적이 플레이어 위치 +1까지 도달하면 (Finish distance)
다음 이벤트로 넘어감

1d. Look at action

적이 이동할때 플레이어를 바라보게.
Y축으로 회전하여 , 적의 Z 방향이 플레이어를 향하도록.

1e. iTween move add
Knock Back이라는 스테이트 만들어 적이 플레이어를 향해 돌진하고, 플레이어에 의해 피해를 입고 뒤로 넉백.

원래는 itween으로 Space 좌표를 Self로 하며 Z축 -2로 해야 왔던길로 튕겨나가는데
Itween이 지원되지 않아 move towards로 대체했다. 그래서 일단 임시방편으로 그냥 X로 튕겨나가는척만 연출

2 set enemy color
튕겨나가는 넉백일때 빨갛게 바꿈

3.LOGIC
플레이어를 만날때 Enemy_HP연산되도록
Enemy_Damage FSM에 Enemy Alive?스테이트 추가하고 Yes No 이벤트 두개 추가


Enemy Alive로 경로 변경.
적이 피해를 입은 후, 적이 살아있는가’를 판단

3a. Int compare

Int 1이 2보다 같은지/작은지/큰지에 따라 컨디션 설정

적이 살아있지 않으면 Enemy Dead 상태로 보내고,
살아있으면 HP 값을 표시하고 처음으로 돌아가도록 설정

Enemy_Move FSM에 넉백할때 Send Event 하여 HP 줄어들도록


근데 0이 되어도 계속 움직이는 중

4.Global Transition

Enemy_Move FSM에 state와 글로벌 이벤트 Emeny Dead 추가.

Enemy_Damage FSM에도 Enemy Dead 스테이트에 dead 이벤트 추가


그리고 마지막으로 Move FSM에서 Dead 일때도 넉백 (Move Towards 추가)




*itween에 대한 환쟁이 님 블로그 질문/답변



*작업노트 적을때 티스토리에서 바로 적거나 메모장에서 적어서 옮겼었는데 사진 첨부하는게 너무 귀찮아서 에버노트 맥에서 작성해서 이미지는 바로 스크린캡쳐해서 붙여놓고 에버노트-티스토리 연동 플러그인을 설치해서 업로드하는걸로 바꿈
단점은 이미지의 폭이 들쑥날쑥..




스터디/Unity 2018. 11. 3. 21:38

[Unity] 작업노트 - Playmaker 연습하기 2 - Game Artz님 강좌


한글 유튜브 강의를 살짝 들어봄

https://www.youtube.com/watch?v=gA1Yxkq_uQc (Game Artz님) unity playmaker 02

https://www.youtube.com/watch?v=T36lEjrS2cQ unity playmaker 03


- 플레이메이커 설치후 중요 셋팅

- 버튼 눌러서 캐릭터 조작하기


유니티 메뉴 Playmaker > Addons>> download addons

Ecosystem browser 추가 설치해야 기타 플러그인을 사용할 있음


UI> Canvas 생성

안에 UI > button 생성

버튼에 Add FSM



버튼을 눌렀을때 오른쪽으로 이동하도록 만들어보겠음

Ecosystem browser 에서 U gui proxy full 다운로드


그러면 이제 state 에서 transition


반드시 add script 해야함

Play maker u component proxy (script) 추가!



키보드로 캐릭터가 4방향으로 로 움직이도록 했고, 버튼 누르면 구 쪽으로 달려감

Smoothy Look At, Move Towards 액션 사용




카메라가 캐릭터 쫓아가도록 main camera 오브젝트를 player캐릭터 넣음

근데 그러면 귀여운 앞모습이 보이질 않잖아..흑




카메라에 FSM 추가해서 Smoothy Follow Action 추가하면 카메라가 오브젝트를 자연스럽게 쫓아가고 회전함





https://www.youtube.com/watch?v=XRUUGhWB1Wg unity playmaker 04

큐브 위에 마우스 클릭하면 큐브가 사라지면서 다음 큐브가 나타나는 예제







다음 단계로 버튼을 누르면 캐릭터가 다음에 나타나는 큐브를 바라보도록 응용 해보았다

그리고 Cube를 누르면 Cube쪽으로 쫓아가고, sphere를 누르면 그쪽으로 쫓아감

근데 Sphere를 누르면 state가 finish 되면서 cube를 바라보는 state로 자동 넘어가서 획 돌아가버리는 느낌.

이건 어떻게 해결해야할까? finish가 되면서 cube를 바라보지 않는 state를 캐릭터에 하나 더 추가해야하나?

암튼 현재는 일일히 event 1 2 3 4 만들어서 큐브1 클릭하면 큐브 2 액티베이트 되면서 이벤트 1 보내고 rotateCube라는 글로벌 게임오브젝트에 Cube2를 넣는다. 

다음 cube2 클릭하면 cube3 액티베이트, 이벤트 2 보내고 rotateCube Cube 3 넣고.. 이렇게 동일하게 반복하게 된다. 

 이때 event 1 2 3 4 따로 보내지 않고 nextcube라는 이벤트를 만들어서 공용화하고, 다음에 액티베이트 되는 큐브를 글로벌게임오브젝트에 넣도록 공용화(함수화?)하고 싶은데 어떻게 하는지 잘 모르겠다. playmaker의 액션 종류에 대해서 좀더 공부해야할듯


getter/setter 구분해서 쓰는거랑 gameobject랑 FSMgameobject랑 변수로만 만든 gameobject랑 너무 헷갈림 0ㅁ0...


그래도 로직을 만들면서 헤매기는 하는데 연두색 선으로 state의 이동에 대한 디버그를 하면서 할수있어서 좀 다행이다


텍스트 코딩으로 했으면 내 실력으로는 어림도 없는 구성이었을듯!


playmaker 만세!








스터디/Unity 2018. 10. 29. 01:52

[Unity] 작업노트 - Playmaker again!


11월의 프로젝트 가제 <Hidden> 유니티 플레이메이커를 적극 활용하기로 했다.


가능한 범위까지만 기능을 최소화해서 11 24일경 itch.io 프로토타이핑을 제출하는 것이 목표이고, 이후에 조금씩 업데이트를 예정.

근데 실제 게임 개발을 혼자서 해본적은 없기 때문에 내가 어디까지 가능한지를 수가 없는 것이 문제.

일단은 플레이메이커만 가지고 코딩없이 게임 개발을 완료한 사례들이 있다고 해서 믿고 가보기로 했다.


2016 9월에 에셋스토어에서 Playmaker 65->45달러로 할인해서 샀고, 기본 개념 공부 포스팅 http://binsworld.tistory.com/196 했는데 3 지났는데 나는 다시 반복중이고.....ㅠㅠ

에셋스토어에는 여전히 65->45달러 할인중이라고 적혀있고?ㅋㅋ

그래도 지난 3년간 유튜브 컨텐츠는 늘어서 다행.


우선은 블로그, 유튜브, 슬라이드쉐어 링크를 모았다



https://www.slideshare.net/agebreak/play-maker

[데브루키] 유니티와 Play maker 이용한 쉽고 빠른 게임 개발



 슬라이드 쉐어로 대강 플레이메이커 핵심 구성을 살펴봄



FSM

State: 상태

정해진 절차에 따라 액션을 반복적으로 수행하는 것이 기계 : Machine

플로우 차트처럼 제한된 상태로써 논리 전개


한 게임오브젝트 내에 복수개의 FSM 생성 가능 (레이어처럼 활용)

예) FSM1 : 캐릭터의 상태 변화 제어 (축소, 확대, 변신, 무적). -> FSM 2 : 행동 변화 제어 (이동, 달리기, 점프, 공격)


STATE

FSM에서 하나의 상태를 표현하는 객체

오브젝트의 상태를 정의한다 : IDLE, 이동, 점프, 공격, 죽음..

상태에는 action이 추가된다. 

상태에 따라 액션이 없을수도 있다

설정된 EVENT 가 발생하면, 다른 State로 전의 (Transition)한다


TRANSITION : state 간의 이동. Transition에 지정된 eventr가 발생했을때 다음 state로 넘어간다


ACTION

STATE에서 수행할 하나의 작업을 표현하는 객체 

플레이메이커에서 여러 액션 제공 : 텍스쳐 변경, 마우스클릭, 오브젝트 이동, 회전 등


EVENT

스테이트에서 정의한 이벤트가 발생하면, 이벤트에 연결된 STATE 전이된다.


VARIABLE

오브젝트를 체크할때는 GameObject 변수

위치와 방향들 - Vector 변수

외에 String Int Texture

FSM 아닌 곳에도 객체 참조하여 얻을 있음


 hutong에서 쇼케이스에 소개된 fsm 예시들을 살펴보면 어떻게 활용할수있는지 감이 온다

https://hutonggames.com/showcase.html





그리고 유데미에서 플레이메이커 강좌를 구매했다. 유튜브에서도 강좌들을 찾을수 있지만 아무래도 유료가 퀄리티가 좋고, 예제 파일이 제공되고, 궁금한걸 튜터에게 직접 물어볼수있다는 장점이 있다.

유튜브는 강좌가 많아서 대표적으로 한글 강의 하나, 영어는 제작사에서 만든걸 들을 예정


https://www.udemy.com/make-your-own-fps-without-code-using-unity-playmaker/

13000

10시간


https://www.udemy.com/cant-code-who-cares-make-games-anyway/

13000

15시간


여러 강좌중 어떤걸 해야하는지 비교하던 와중에 유데미에서 둘을 번들로 묶어서 22000 어때?라고 물어서 그냥 둘다 사버림


25시간을 들을수 있을까?..





플레이메이커를 사용하기 위해서는 유한상태기계 FSM 방식을 이해해야하는데

 http://smartacademy.tistory.com/39 자판기를 예시로 설명한 이 포스팅이 처음 이해하는데 많은 도움이 되었다

물론, 직접 플레이메이커로 예제를 구성해보는 것이 제일 빠른 도움이 된다.



http://unityindepth.tistory.com/25 

http://unityindepth.tistory.com/26

http://unityindepth.tistory.com/27

http://unityindepth.tistory.com/47

http://unityindepth.tistory.com/48

http://unityindepth.tistory.com/49


여기에 외국의 아티클을 한글로 번역한 유한상태기계에 대한 설명이 좀더 자세하게 되어있긴한데 텍스트코딩 기반 유한상태기계 방식이어서 어렵다..(도망)




한글 블로그 강좌 환쟁이님

https://slee16.blog.me/220243746501  플레이메이커 기초#1 - 기본 조작 및 이해

이렇게 상태의 흐름을 바로 볼수있어서 너무 좋다


잠시 건너뛰어서 여기서도 기초 실습 참고

http://smartacademy.tistory.com/42 비주얼 프로그래밍이란? Playmaker 사용해보기

http://smartacademy.tistory.com/44 비주얼 프로그래밍이란? - State 구성하기




https://slee16.blog.me/220267175122 플레이메이커 기초#2 - 변수의 활용 응용
https://blog.naver.com/slee16/220316046075  플레이메이커 기초#3 - 변수의 전달 및 연산
Get FSM Int : 다른 FSM에 저장된 Int 변수 불러오기
Int operator : 두개의 int 변수 연산 후 결과 저장
Send Event

UI필드로 변수등록 수정하는거랑, Inspector 체크하면 public 변수인것처럼 인스펙터에 뜨는것, 카테고리 지정하면 폴더처럼 쓸수있는거 너무 좋군 



3강에서 slee16님 포스팅 잠시 캡쳐

그리고나서 Send Event는 E_Hit



여기에 GUI_E_HP 라는 HP 표시를 하나 넣고, E_HP_changed라는 이벤트를 하나 더 만들어서 Enemy FSM-HP down state에서 attack 받으면 HP가 깎일때 GUI에 E_HP_changed라는 이벤트를 동시에 보내도록 하였다.



GUI에서 그 이벤트를 받으면 Enemy_HP를 다시 받아온다 (근데 GUI_HP에만 get Fsm Int를 넣는게 맞는지, GUI_HP와 HP updated 둘다에 넣는게 맞는지 모르겠네, 일단 둘다 됨)




그리하여 버튼 누르면 Attack하여 enemy HP 낮추는 것까지 GIF









스터디/Unity 2018. 10. 13. 15:23

[Unity] 작업노트 - 유니티 유료 에셋을 백업해보자


OOV 게임 프로젝트 종료로 유료 에셋 공유 계정도 클로징 예정이라 다시한번 깨끗한 프로젝트 파일에 백업하는 작업을 하고 있다. 


개발자님이 지난 데모버젼까지 오류 수정과 주석 작업을 해주시면 그걸로 다시한번 파일 정리를 하고나서, 11월 전시용 작업 진행할 예정


-진행하던 프로젝트 파일에서 export package 해서 공유하는 경우 가끔 안되서 에셋스토어에서 새로 받아야하는 경우도 있고해서 백업해둠 (아래 프로젝트 전체 익스포트하기 문제 발견)


-에디터 버젼 업데이트나 에셋 버젼 업데이트가 있는 경우 한번씩 다시 받아줘야하는데 이부분은 계정이 없어져서 더이상 지원이 어려울듯, 심각한 문제가 발생하는 경우에 구매한 인보이스 pdf 보관해두고 개발자에게 직접 컨택해서 업데이트를 부탁해보자 (...)


- 에셋을 다운로드하고 임포트하는데도 시간이 엄청 오래걸림 


-에셋을 많이 받으면 프로젝트 용량이 커져서 (1)새 프로젝트 파일에 300메가+20메가 짜리 배경 에셋 두개 받았는데 프로젝트 파일 크기 1.6기가 2)마지막 개발버젼 폴더는 4기가 .......) 유티니에서 열기만 하는데도 너무 오래걸려서 분리해두는게 나을것 같았음.. 백그라운드/모델링/그래픽효과/개발플러그인으로 분리해서 보관해두면 좋을거 같지만 일단 구매순으로 3-4개 정도로


-좀더 찾아보니 에셋스토어에서 다운로드하면 공통으로 로컬에 저장되는 경로가 있었네. 아래 링크 참고


-팀즈 백업에서 궁금한점 : 구독을 해제했지만, 추후에 다시 같은 멤버로 등록하면 백업 파일과 히스토리가 남아있는가?




[에셋스토어 구입한 패키지 저장되는 경로]


에셋스토어에서 다운로드 - 임포트 하게 되는데 다운로드한 파일이 저장되는 곳으로 보여짐


Windows : \Users\accountName\AppData\Roaming\Unity\Asset Store

Mac : “open ~/Library/Unity/Asset Store”


-맥의 경우 라이브러리 폴더는 숨겨져있다. 접근 방법 http://macnews.tistory.com/203

-제일 간단하게는 Finder - 보기에서 옵션 키 누르면 “라이브러리”가 보임


-회사명 폴더로 되어있음 해당 폴더명이 패키지명과 다르니 주의요망!!

-에셋 폴더는 항상 라이브러리 폴더 (메타데이터와 연결 정보 담고있음) 와 함께 백업 (안그러면 재앙이)...

-프로젝트 폴더 내의 Assets 폴더 안에 파일을 붙여넣기 하면 프로젝트 뷰에서 알아서 불러와진다



에셋 패키지 (임포트, 익스포트)

https://docs.unity3d.com/kr/2017.4/Manual/AssetPackages.html


에셋 임포트 (폴더 복사)

https://docs.unity3d.com/kr/550/Manual/ImportingAssets.html



[유니티 프로젝트 전체 익스포트하기]


프로젝트 파일 자체도 유니티팀즈 구독이 해제 되기 때문에 한번더 백업해두었지만 팀즈 종료후에 익스포트 패키지 형태로 공유하게 되면 태그나 레이어 등의 프로젝트 세팅은 함께 익스포트 되지 않는다고 한다


https://www.ijemin.com/blog/%EC%9C%A0%EB%8B%88%ED%8B%B0-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-%EC%A0%84%EC%B2%B4-%EC%9D%B5%EC%8A%A4%ED%8F%AC%ED%8A%B8%ED%95%98%EA%B8%B0/


유니티에 기본 내장된 패키지 제작툴(Assets > Export Package)은 태그와 레이어, 빌드 세팅 등의 프로젝트 세팅은 함께 익스포트 해주지 않는다.

라이트 유저에게는 프로젝트 세팅까지 같이 익스포트하는게 오버킬이라 생각하는 듯.

프로젝트 세팅까지 모두 익스포트하고 싶으면 AssetDatabase.ExportPackage 에 대한 내용을 참조하여 커스텀 메뉴를 만들면 된다.





백업 와중에 하드 용량이 다찼다

유니티도 안돌아가고 일반 사용시에도 너무 느려서 조만간 업그레이드 예정



*CPU i5 -> i7

*SSD 삼성 pro 1T?2T?
분리한 HDD 외장케이스 씌워서 재활용 (1-2만원 추가)

타임 머신에 백업부터..


스터디/Unity 2018. 10. 2. 14:45

[Unity] ‘유니티로 만나는 애니메이션의 세계!’ - 제작 기법 세미나

https://onoffmix.com/event/153833  신청링크


유니티 코리아(대표 김인숙)가 유니티로 제작된 다양한 영화 및 애니메이션 사례를 선보이는 세미나인 ‘유니티로 만나는 애니메이션의 세계!’를 오는 10월 22일 최초로 개최한다.

유니티는 매번 새로운 버전을 선보일 때마다 향상된 실시간 렌더링 기능과 그래픽 처리 기술을 선보이며 영화 및 애니메이션 업계에서 활발히 사용되고 있다. 영화 '디스트릭트 9'으로 유명한 닐 블롬캠프(Neill Blomkamp) 감독 및 그가 창립한 오츠(OATS) 스튜디오가 제작에 참여한 유니티의 오리지널 영상 시리즈 ‘아담(Adam)’을 비롯, 디즈니가 제작한 TV 애니메이션 ‘베이맥스 드림즈(Baymax Dreams), ‘블레이드 러너 2049(Blade Runner 2049)’, ‘레디 플레이어 원(Ready Player One)’, ‘정글북(The Jungle Book)’ 등의 유명 작품들이 유니티로 제작됐다.

이번 행사는 22일 오후 1시 30분부터 6시 20분까지 서울 강남구 삼성동 소재의 서울종합예술실용학교 아트홀에서 진행되며, 유니티로 제작된 다양한 작품들과 영화 및 애니메이션 분야에서 활용되는 유니티의 다채로운 기능들을 소개할 예정이다.

먼저 유니티 에반젤리스트가 유니티의 실시간 렌더링을 통해 생산성을 대폭 향상시킬 수 있는 애니메이션 제작 파이프라인, 애니메이션 산업에서 활용할 수 있는 포스트 프로세싱 기능을 소개한다.

이와 함께 업계 종사자가 직접 참가하는 유익한 세션들도 이어진다. 2018 부천국제애니메이션페스티벌 국제경쟁 부문에 오른 애니메이션 ‘다시 찾은 사랑(Sonder)’의 제작사인 Soba Studio 담당자가 애니메이션 제작 스토리와 유니티 활용 방법에 대한 세션을 진행할 예정이다.

또한 네이버 웹툰 작가로 활동중이며 1인 게임 개발자인 ㈜스튜디오호랑 최종호 대표가 참여해 유니티를 활용해 제작한 VR만화 서비스 ‘스피어툰’의 제작 과정 및 시연 세션을 진행한다.

특히 각 세션의 중간에는 유니티로 탄생한 다양한 영상들을 상영하는 시간도 준비돼 있다. 다양한 작품들을 마치 단편 애니메이션 상영회처럼 감상하며 유니티 엔진의 발전상을 엿볼 수 있을 예정이다. 영화 및 애니메이션 업계 종사자와 디자인, 애니메이션 학과 학생 등 누구나 참여 가능하며, 신청 페이지(https://onoffmix.com/event/153833)를 통해 신청할 수 있다.

김인숙 유니티 코리아 대표는 “유니티는 영상 및 애니메이션 콘텐츠 편집 결과를 즉각 확인할 수 있는 실시간 엔진으로 제작 기간을 대폭 단축시킬 수 있는 유용한 툴”이라며, “이번 세미나를 통해 관련학과 학생 및 업계 종사자 분들이 제작 과정에서 유니티를 활용해 생산성을 높이고, 작품의 창의성 및 경쟁력을 높이는 데에만 온전히 집중할 수 있도록 돕고 싶다”고 밝혔다.

한편 유니티는 기업 목표인 ‘개발의 민주화’를 이루기 위해 영화 및 애니메이션 분야에서도 유니티로 누구나 손쉽게 콘텐츠를 제작할 수 있게끔 돕고 있다. 지난 6월 열린 ‘유나이트 베를린’ 컨퍼런스에서 AR 기술을 활용해 실제 인물의 표정을 가상의 캐릭터에 입힐 수 있는 ‘페이셜 AR 리모트 컴포넌트(Facial AR Remote Component)’ 기능, 인공지능(AI)을 활용해 애니메이션의 품질을 강화하는 AI 애니메이션 시스템 ‘키네마티카(Kinematica)’를 소개하는 등 지속적으로 엔진 기능을 발전시키고 있다.

또한 오는 10월 23일(현지 시각) 열리는 ‘유나이트 LA’에서는 영화 및 애니메이션 분야의 유니티 활용 사례와 노하우를 소개하는 ‘영화 및 애니메이션 서밋(Film and Animation Summit)’도 최초로 개최할 예정이다.

원문보기: 
http://www.inven.co.kr/webzine/news/?news=207998#csidxace2c73e1abd9c1be24e2ee808a2f62 


오 재밌겠다! 신청 완료 :)


오늘하루/일기 2018. 8. 28. 23:17

2018년 8월 21일



봄부터 트위터 #인싸템 이었는데 이제야 샀네 #당근샤프 넘귀욥.. 

당근파우치 옥수수 닭 무우 선인장도있음 

근데 이런거 이제 #내친구자녀뻘취향 ㅠㅠ


'오늘하루 > 일기' 카테고리의 다른 글

2016년 1월 9일  (0) 2016.01.09
2015년 12월 6일  (0) 2015.12.07
2015년 11월 21일  (0) 2015.11.21
2015년 11월 17일 새벽 두시  (0) 2015.11.17
2015년 9월 25일  (0) 2015.09.25