사용자 도구

사이트 도구


language:unity:mecanim:basic

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

language:unity:mecanim:basic [2014/06/17 18:58] – 만듦 kieunslanguage:unity:mecanim:basic [2024/04/23 22:45] (현재) – 바깥 편집 127.0.0.1
줄 1: 줄 1:
 +해보면서 다시 정리할 것
  
 +{{tag> 다시정리}}
 +
 +<code>
 +Model
 +- bone 형식에 맞게
 +
 +animator
 +- orange box : default animation
 +- blend tree
 +  - double click : 상세화면으로
 +
 +- "Parameters"
 + - 플레이할 애니메이션을 고르는 플래그
 + - Blend Tree에서 "Parameters"에 따라 어떤 애니메이션을 선택해서 플레이할 것인지 
 +   정할 수 있다.
 +
 +Animation 3종류의 블렌딩을 넣는 경우,
 +
 + 1) BlendTree를 추가한다.
 +
 + 2) 3개의 Motion을 추가한다. (아래 순서대로)
 +
 + WalkingFwdTurnLeft
 + WalkingFoward
 + WalkingFwdTurnRight
 +
 + 3) 블렌딩 값을 
 +
 + WalkingFwdTurnLeft : -1
 + WalkingFoward : 0
 + WalkingFwdTurnRight : 1 
 +
 + 이 되도록 설정
 +
 + 4) "Direction" 이라는 Parameters를 추가한다
 +
 + BlendTree의 Parameters에 "Direction"을 설정
 +
 + 5) Blend Tree를 조작해서 제대로 되는지 확인.
 +
 +- nested blend tree
 + - blend tree에 blend tree를 추가할 수 있다.
 +
 +여러 Animation이 한 파일에 있는 경우,
 +
 + - 유니티 편집기에서 애니메이션의 특정 일부분만 반복해서 사용하도록 설정할 수 있는데
 + - 애니메이션 방향이 살짝 틀어지는 경우 ,
 + - 각 축의 offset을 설정할 수 있는 화면에서 틀어진 축을 교정한다.
 +
 +Animator의 상태값을 얻는
 +
 + - 스트링toHash 함수
 +<code csharp>
 +int someState = Animator.StringToHash("BaseLayer.SomeState");
 +</code>
 +
 +애니메이션에 따라 콜라이더 크기 조정 방법
 +
 + 애니메이션 데이터에 추가 정보 확인
 + - Animation 데이터에 들어가서 "Curves" 부분을 찾는다.
 + - 새로운 파라미터를 추가(여기에서는 '콜라이더높이'라고 이름 짓고)하고
 +   키 프레임에 맞게 값을 조정한다.
 + 스크립트 반영
 + - animator.GetFloat("콜라이더높이")를 콜라이더 높이에 반영한다.
 +
 +MatchTarget
 + - 점프와 같이 높이가 있는 곳에서 애니메이션을 플레이 하다가,
 + 애니메이션은 종료 되었지만 땅에 착지하지 않고 공중에 떠 있는 상태를 막기 위한
 + 애니메이션 보정 기능
 +
 +IK
 +- 특정 부위 오브젝트를 움직이면 IK에 맞게 알아서 관절이 동작되는 부분?
 +
 +바디마스크
 + - 애니메이션이 동작 중인 경우,
 + - 바디의 일부분만 다른 애니메이션을 적용하는 시스템
 + - 바디마스크에서 녹색 부분만 새로운 애니메이션이 적용 되고 나머지는 
 +   원래 애니메이션이 동작
 +</code>