Unity
[TOC]
Pixel Per Unit
- 씬에서 스프라이트가 얼마나 큰지를 결정
디에제틱 인터페이스(Diegetic interface)
- UI가 씬안의 다른 오브젝트와 똑같이 취급된다.
스텐실 버퍼(Stencil Buffer)
-
컬러 버퍼(Color Buffer)와 뎁스 버퍼(Depth Buffer)를 함께 사용
-
정수값만 받을 수 있고 픽실 기반에서 작동
-
버퍼는 일반적으로 화면 특정 부분을 렌더링하지 않고 전반적인 성능 향상을 위해 사용된다.
Animator Conponent
- Update mode
- Normal
- 업데이트 호출과 동기화해 컨트롤러를 업데이트
- 애니메이터의 속도는 현재 타임스케일과 일치
- Animate Physics
- 물리 엔진에서 사용하는 FixedUpdate 호출과 동기화돼 애니메이터를 대신 업데이트
- 캐릭터가 리지드 바디를 밀거나 당기는 경우
- Unscaled Time
- Normal 모드와 같이 애니메이터를 업데이트 호출과 동기화해 업데이트하지만 현재 타임스케일은 무시되고 자체 속도의 100%로 재생
- 게임 일시중시 시 일부 UI등은 재생하고 싶을 때 사용
- Normal
- Culling Mode
- Always Animate
- 스크린에서 안보일 때도 항상 애니메이션 된다.
- 연산 비용이 높다.
- Cull Update Transform
- 성능 향상을 위한 리타깃팅 및 IK와 같은 일부만 Disable 한다.
- 연산 비용을 줄이면서도 리얼한 느낌을 준다.
- Cull Completely
- 스크린에서 안보이면 애니메이션이 멈춘다.
- 연산 비용이 저렴하다.
- Always Animate
Animator Window
- Any State
- 어떤 스테이트에 있는지에 영향을 받지 않고, 특정 스테이트로 트랜지션하고자 하는 경우 사용
- Transitions
- Has Exit Time
- Exit Time 변수에 지정된 시점에서만 트랜지션이 발생
- Exit Time
- 트랜지션이 적용되는 정확한 시간
- 1미만이면 애니메이션 반복시 매번, 1이상이면 고정된 횟수만큼 반복후 실행
- Fixed Duration
- 트랜지션 타임을 초 단위로 변환
- 체크 해제 시 0~1 사이의 백분율
- Transition Duration
- 트랜지션 지속 시간
- Interrupt Source
- 트랜지션을 중단할 수 있는 조건을 지정
- Has Exit Time
- SubStateMachine
- 스테이트가 또 다른 유한 스테이트 머신을 포함
Animator Override Controller
- 애니메이터 컨트롤러를 복제하지 않고 새로운 애니메이션 클립을 할당할 수 있다.
루트 모션
- 애니메시연 자체가 캐릭터의 루트를 움직여 공간에서 더 리얼한 모션을 가능하게 한다.
- 애니메이션에 의해 컨트롤되는 캐릭터의 모션
- 연산 비용이 높다.
역운동학(IK, Inverse Kinematic)
- 보통 애니메이션은 다이렉트 운동학(DK, Direct Kinematic, 순방향 운동학, 포워드 운동학)을 사용한다.
- DK는 어깨, 팔꿈치, 손목, 손 순으로 위치와 회전을 결정하지만 IK는 손에서 부터 시작해 역으로 계산한다.
- 메카님은 제대로 설정된 아바타가 있는 경우 휴머노이드 캐릭터의 IK를 지원한다.
애니메이터 컴포넌트 정보 박스
-
Pos, Rot, Scale
- 위치, 회전, 크기에 각각 사용된 커브의 총 개수
-
Muscles
- 휴머노이트 캐릭터의 경우 애니메이션에서 사용되는 근육 개수
-
Generic
- 애니메이터가 머티리얼 컬러와 같은 다른 속성을 애니메이션시키기 위해 사용하는 수치 커브의 개수
-
PPtr
- 스프라이트 애니메이션 커브의 총 개수, 2D 작업시 유용
-
Curves Count
- 상숫값으로 최적화된 애니메이션 개수
- 애니메이션 파일에 값이 변하지 않는 커브가 있으면 유니티가 자동으로 이 설정을 선택한다.
-
Dense
- 데이터를 저장하는 고밀도 방식(Dense method, 선형으로 보간된 불연속 값)을 사용해 최적화된 애니메이션 커브의 개수
- 스트림 방식보다 메모리 사용량이 훨씬 적다.
-
Stream
- 데이터를 저장하는 스트림 방식(stream method, 곡선 보간을 위한 시간 값 및 접선 데이터)을 사용하는 애니메이션 커브의 개수
- Dense 방식 보다 훨씬 많은 메모리를 차지한다.
포스트 프로세싱
선 또는 자국 그리기
Lint Renderer
Trail Renderer
빌드 사이즈 확인
Console 창 옵션에서 “Open Editor Log”를 선택하면 마지막 빌드의 로그를 확인할 수 있다.
이미지 임포트 세팅
- POT(Power Of Tow)
- 텍스처의 가로, 세로 길이기 2의 거듭제곱인 이미지
- DXT5 포맷으로 압축하려면 POT 텍스처여야 한다.
- Generate Mip Maps
- 더 작은 버전의 텍스처/스프라이트가 생성
- 스프라이트와 카메라의 거리에 따라 작거나 큰 텍스처를 선택
- 빌드 사이즈가 커질 수 있다.
- Filter Mode
- 텍스처가 변환에 의해 늘어날 때 어떻게 필터가 적용되는지 선택
- Point 가까이에서 텍스처에 얼룩이 생긴다.
- Bilinear[bailíniər] 가까이에서 텍스처가 블러 처리된다.
- Trilinear Bilinear와 비슷하지만 서로 다른 밉 수준 사이도 블러 처리된다.
- Max Size
- 특정 플랫폼 내에서 가질 수 있는 최대 사이즈
- 퀄리티를 희생하고 빌드 크기를 줄인다.
- Compression, Format
- 컴파일/빌드 시 이미지를 압축할지 여부를 지정
Stats
- FPS
- Tris
- 삼각형 개수
- Verts
- 꼭짓점 개수
- SetPass calls
- 특정 프레임을 렌더링하기 위해 유니티가 얼마나 많이 반복을 거쳐야 하는지를 나타냄
- 반복? 뭘 반복한다는거지?
- 특정 프레임을 렌더링하기 위해 유니티가 얼마나 많이 반복을 거쳐야 하는지를 나타냄